Combines shared, blog, market, cart, events, federation, and account into a single repository. Eliminates submodule sync, sibling model copying at build time, and per-app CI orchestration. Changes: - Remove per-app .git, .gitmodules, .gitea, submodule shared/ dirs - Remove stale sibling model copies from each app - Update all 6 Dockerfiles for monorepo build context (root = .) - Add build directives to docker-compose.yml - Add single .gitea/workflows/ci.yml with change detection - Add .dockerignore for monorepo build context - Create __init__.py for federation and account (cross-app imports)
29 lines
1.2 KiB
HTML
29 lines
1.2 KiB
HTML
{# Calendar entries nav — served as fragment from events app #}
|
||
{% for entry in entries %}
|
||
{% set _entry_path = '/' + post_slug + '/calendars/' + entry.calendar_slug + '/' + entry.start_at.year|string + '/' + entry.start_at.month|string + '/' + entry.start_at.day|string + '/entries/' + entry.id|string + '/' %}
|
||
<a
|
||
href="{{ events_url(_entry_path) }}"
|
||
class="{{styles.nav_button_less_pad}}"
|
||
>
|
||
<div class="w-8 h-8 rounded bg-stone-200 flex-shrink-0"></div>
|
||
<div class="flex-1 min-w-0">
|
||
<div class="font-medium truncate">{{ entry.name }}</div>
|
||
<div class="text-xs text-stone-600 truncate">
|
||
{{ entry.start_at.strftime('%b %d, %Y at %H:%M') }}
|
||
{% if entry.end_at %} – {{ entry.end_at.strftime('%H:%M') }}{% endif %}
|
||
</div>
|
||
</div>
|
||
</a>
|
||
{% endfor %}
|
||
|
||
{# Infinite scroll sentinel — URL points back to the consumer app #}
|
||
{% if has_more and paginate_url_base %}
|
||
<div id="entries-load-sentinel-{{ page }}"
|
||
hx-get="{{ paginate_url_base }}?page={{ page + 1 }}"
|
||
hx-trigger="intersect once"
|
||
hx-swap="beforebegin"
|
||
_="on htmx:afterRequest trigger scroll on #associated-entries-container"
|
||
class="flex-shrink-0 w-1">
|
||
</div>
|
||
{% endif %}
|