Improve verse page navigation and reading plan verse linking

UI Improvements:
1. Move verse navigation to directly under verse text
   - Navigation now appears immediately after the verse for better UX
   - Removed duplicate navigation from bottom of page
   - Added margin styling for proper spacing

2. Add verse linking to reading plan references
   - Parse reading references (Book Chapter:Verse format)
   - Support multiple formats: Chapter:Verse, Chapter, Chapter-Chapter
   - Handle verse ranges (e.g., Genesis 1:1-5)
   - Create clickable links to book/chapter/verse pages
   - Fallback to plain text for unparseable references

Both changes improve navigation and make Scripture references more
accessible throughout the site.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-21 20:04:36 -05:00
parent 214aad549e
commit c0e3d56f24
2 changed files with 40 additions and 10 deletions
@@ -119,7 +119,37 @@
<div class="day-number">Day {{ day.day }}</div>
<div class="day-readings">
{% for reading in day.readings %}
<span class="reading-ref">{{ reading }}</span>
<span class="reading-ref">
{% set ref_parts = reading.split(' ') %}
{% if ref_parts|length >= 2 %}
{% set chapter_verse = ref_parts[-1] %}
{% if ':' in chapter_verse %}
{# Format: "Book Chapter:Verse" or "Book Chapter:Verse-Verse" #}
{% set chapter = chapter_verse.split(':')[0] %}
{% set verse_part = chapter_verse.split(':')[1] %}
{% if '-' in verse_part %}
{% set verse_num = verse_part.split('-')[0] %}
{% else %}
{% set verse_num = verse_part %}
{% endif %}
{% set book = ' '.join(ref_parts[:-1]) %}
<a href="/book/{{ book }}/chapter/{{ chapter }}/verse/{{ verse_num }}">{{ reading }}</a>
{% elif '-' in chapter_verse %}
{# Format: "Book Chapter-Chapter" (e.g., "Psalm 1-3") #}
{% set first_chapter = chapter_verse.split('-')[0] %}
{% set book = ' '.join(ref_parts[:-1]) %}
<a href="/book/{{ book }}/chapter/{{ first_chapter }}">{{ reading }}</a>
{% else %}
{# Format: "Book Chapter" (single chapter) #}
{% set chapter = ref_parts[-1] %}
{% set book = ' '.join(ref_parts[:-1]) %}
<a href="/book/{{ book }}/chapter/{{ chapter }}">{{ reading }}</a>
{% endif %}
{% else %}
{# Fallback: just display as text #}
{{ reading }}
{% endif %}
</span>
{% endfor %}
</div>
<div class="day-theme">Theme: {{ day.theme }}</div>
+9 -9
View File
@@ -99,6 +99,15 @@
<section>
<p class="verse-text">{{ verse_text | link_names | safe }}</p>
<nav style="margin: 1.5rem 0;">
<p>
<a href="/book/{{ book }}">← {{ book }}</a> |
<a href="/book/{{ book }}/chapter/{{ chapter }}#verse-{{ verse_num }}">View in Chapter {{ chapter }}</a>
{% if verse_num > 1 %} | <a href="/book/{{ book }}/chapter/{{ chapter }}/verse/{{ verse_num - 1 }}">← Verse {{ verse_num - 1 }}</a>{% endif %}
{% if verse_num < total_verses %} | <a href="/book/{{ book }}/chapter/{{ chapter }}/verse/{{ verse_num + 1 }}">Verse {{ verse_num + 1 }} →</a>{% endif %}
</p>
</nav>
<div class="share-container">
<div class="share-label">Share This Verse</div>
<div class="share-buttons">
@@ -218,13 +227,4 @@
</section>
{% endif %}
{% endif %}
<nav>
<p>
<a href="/book/{{ book }}">← {{ book }}</a> |
<a href="/book/{{ book }}/chapter/{{ chapter }}#verse-{{ verse_num }}">View in Chapter {{ chapter }}</a>
{% if verse_num > 1 %} | <a href="/book/{{ book }}/chapter/{{ chapter }}/verse/{{ verse_num - 1 }}">← Verse {{ verse_num - 1 }}</a>{% endif %}
{% if verse_num < total_verses %} | <a href="/book/{{ book }}/chapter/{{ chapter }}/verse/{{ verse_num + 1 }}">Verse {{ verse_num + 1 }} →</a>{% endif %}
</p>
</nav>
{% endblock %}