{% extends "core/base.html" %} {% load static %} {% load lyric_extras %} {% block title_text %}Game Gate{% endblock title_text %} {% block header_text %}GameGate{% endblock header_text %} {% block content %} {# Room renewal gate-view (sprint 2026-05-31) — reuses the EXACT gatekeeper #} {# token-slot modal (`_gatekeeper.html` chrome: title panel + status-dots + #} {# token-slot rails + roles panel), reachable mid-game. Unlike the #} {# gatekeeper (which redirects to the table once table_status is set), GATE #} {# VIEW routes here at any time so a seated gamer can renew. #} {# • cost current → roles-panel `.btn-primary` is CONT GAME (→ table hex, #} {# same target as the gear NVM); status " Token(s) Deposited . . . .".#} {# • cost lapsed → no CONT GAME; the rails go active to RENEW; status #} {# "Please Deposit Token . . . .". Renewing re-satisfies the cost and #} {# the CONT GAME btn reappears. #} {# No seat circle / countdown here — the table hex's own `.fa-chair` shows #} {# seat status, and user/seat tooltips land next sprint (user-spec). #}
{# NVM nav-backs one step to the table hex (not out to /gameboard/). #} {% url 'epic:room' room.id as nvm_url %} {% include "apps/gameboard/_partials/_room_gear.html" with nvm_url=nvm_url %} {% include "apps/gameboard/_partials/_burger.html" %}
{% endblock content %} {% block scripts %} {% endblock scripts %}