offloaded Significator FTs into FTs.test_room_sig_select; new sig-select.js imported into room.html; new apps.epic.consumers & .views, ITs to confirm functionality
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
This commit is contained in:
@@ -64,10 +64,10 @@ def _notify_role_select_start(room_id):
|
||||
)
|
||||
|
||||
|
||||
def _notify_sig_selected(room_id):
|
||||
def _notify_sig_selected(room_id, card_id, role, deck_type='levity'):
|
||||
async_to_sync(get_channel_layer().group_send)(
|
||||
f'room_{room_id}',
|
||||
{'type': 'sig_selected'},
|
||||
{'type': 'sig_selected', 'card_id': str(card_id), 'role': role, 'deck_type': deck_type},
|
||||
)
|
||||
|
||||
|
||||
@@ -194,7 +194,9 @@ def _role_select_context(room, user):
|
||||
ctx["user_seat"] = user_seat
|
||||
ctx["partner_seat"] = partner_seat
|
||||
ctx["revealed_seats"] = room.table_seats.filter(role_revealed=True).order_by("slot_number")
|
||||
ctx["sig_cards"] = sig_deck_cards(room)
|
||||
raw_sig_cards = sig_deck_cards(room)
|
||||
half = len(raw_sig_cards) // 2
|
||||
ctx["sig_cards"] = [(c, 'levity') for c in raw_sig_cards[:half]] + [(c, 'gravity') for c in raw_sig_cards[half:]]
|
||||
ctx["sig_seats"] = sig_seat_order(room)
|
||||
ctx["sig_active_seat"] = active_sig_seat(room)
|
||||
return ctx
|
||||
@@ -500,7 +502,8 @@ def select_sig(request, room_id):
|
||||
return HttpResponse(status=409)
|
||||
active_seat.significator = card
|
||||
active_seat.save()
|
||||
_notify_sig_selected(room_id)
|
||||
deck_type = request.POST.get('deck_type', 'levity')
|
||||
_notify_sig_selected(room_id, card.pk, active_seat.role, deck_type)
|
||||
return HttpResponse(status=200)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user