- Split .gate-overlay into .gate-backdrop (z-100, blur) + .gate-overlay modal (z-120) so .table-position elements (z-110) render above backdrop but below modal - New _table_positions.html partial: 6 .table-position divs with .fa-chair, role label, and .fa-ban/.fa-circle-check status icons; included unconditionally in room.html - New epic:room view at /gameboard/room/<uuid>/; gatekeeper redirects there when table_status set; pick_roles redirects there - role-select.js: adds .active glow to position on selectRole(); swaps .fa-ban→.fa-circle-check in placeCard onComplete; handleTurnChanged clears stale .active from all positions - FTs: PositionIndicatorsTest (5 tests) + RoleSelectTest 8a/8b (glow + check state) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
25 lines
1.4 KiB
Python
25 lines
1.4 KiB
Python
from django.urls import path
|
|
from . import views
|
|
|
|
|
|
app_name = 'epic'
|
|
|
|
urlpatterns = [
|
|
path('rooms/create_room', views.create_room, name='create_room'),
|
|
path('room/<uuid:room_id>/', views.room_view, name='room'),
|
|
path('room/<uuid:room_id>/gate/', views.gatekeeper, name='gatekeeper'),
|
|
path('room/<uuid:room_id>/gate/drop_token', views.drop_token, name='drop_token'),
|
|
path('room/<uuid:room_id>/gate/confirm_token', views.confirm_token, name='confirm_token'),
|
|
path('room/<uuid:room_id>/gate/return_token', views.return_token, name='return_token'),
|
|
path('room/<uuid:room_id>/gate/release_slot', views.release_slot, name='release_slot'),
|
|
path('room/<uuid:room_id>/pick-roles', views.pick_roles, name='pick_roles'),
|
|
path('room/<uuid:room_id>/select-role', views.select_role, name='select_role'),
|
|
path('room/<uuid:room_id>/select-sig', views.select_sig, name='select_sig'),
|
|
path('room/<uuid:room_id>/gate/invite', views.invite_gamer, name='invite_gamer'),
|
|
path('room/<uuid:room_id>/gate/status', views.gate_status, name='gate_status'),
|
|
path('room/<uuid:room_id>/delete', views.delete_room, name='delete_room'),
|
|
path('room/<uuid:room_id>/abandon', views.abandon_room, name='abandon_room'),
|
|
path('room/<uuid:room_id>/tarot/', views.tarot_deck, name='tarot_deck'),
|
|
path('room/<uuid:room_id>/tarot/deal', views.tarot_deal, name='tarot_deal'),
|
|
]
|