From 8f7c1bf42862ae547ec77d50bfe6b28d4f43fd2e Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Mon, 13 Oct 2025 17:19:32 -0400 Subject: [PATCH] More work on the posters and Websockets --- src/lib/ae_events_stores.ts | 5 +- src/lib/element_websocket_v2.svelte | 4 +- .../(launcher)/launcher/+layout.svelte | 46 ++++++--- .../(launcher)/launcher_file_cont.svelte | 94 +++++++++++-------- .../(launcher)/launcher_presenter_view.svelte | 1 + .../launcher_presenter_view_posters.svelte | 5 + .../(launcher)/launcher_session_view.svelte | 5 + 7 files changed, 108 insertions(+), 52 deletions(-) diff --git a/src/lib/ae_events_stores.ts b/src/lib/ae_events_stores.ts index dbfe7491..af899bff 100644 --- a/src/lib/ae_events_stores.ts +++ b/src/lib/ae_events_stores.ts @@ -382,7 +382,10 @@ let events_session_data_struct: key_val = { event_file_open: {}, // This is from the older Launcher. native: { }, - modal__open: false, + + modal__title: '', + modal__open_event_file_id: false, + modal__event_file_obj: null, loading__session_li_status: null, loading__session_id_status: null, diff --git a/src/lib/element_websocket_v2.svelte b/src/lib/element_websocket_v2.svelte index a0e74977..b76f4cb9 100644 --- a/src/lib/element_websocket_v2.svelte +++ b/src/lib/element_websocket_v2.svelte @@ -23,12 +23,12 @@ interface Props { let { log_lvl = 0, - ws_connect = false, + ws_connect = $bindable(false), ws_connect_status = $bindable(null), ws_server = 'dev-api.oneskyit.com', base_url = `wss://${ws_server}/ws`, group_id = $bindable('ae-grp-99'), - client_id = Date.now(), + client_id = $bindable(Date.now()), cmd = $bindable(null), msg = $bindable(null), type = null, diff --git a/src/routes/events/[event_id]/(launcher)/launcher/+layout.svelte b/src/routes/events/[event_id]/(launcher)/launcher/+layout.svelte index 62adeece..1a2bff4e 100644 --- a/src/routes/events/[event_id]/(launcher)/launcher/+layout.svelte +++ b/src/routes/events/[event_id]/(launcher)/launcher/+layout.svelte @@ -344,7 +344,7 @@ function handle_ws_recv(ws_recv_status: any) { if ($events_loc.launcher.controller != 'remote') { if (log_lvl) { - console.log('Controller is not set to remote. Ignoring command.', cmd); + console.log('Ignoring WS command. Launcher is not set to be remotely controlled.', cmd); } return; } @@ -440,17 +440,21 @@ function handle_ws_recv(ws_recv_status: any) { clearInterval(idle_timer_interval); $events_slct.event_file_id = obj_id; - $events_sess.launcher.modal__open = $events_slct.event_file_id; + let modal_title = null; if (!modal_title) { modal_title = '*'; // event_file_obj.filename; } $events_sess.launcher.modal__title = modal_title; + + $events_sess.launcher.modal__open_event_file_id = $events_slct.event_file_id; + // $events_sess.launcher.modal__event_file_obj = event_file_obj; + + // $events_sess.launcher.modal__img_src = `/event/file/${event_file_obj.event_file_id_random}/download`; // $events_slct.event_file_obj = event_file_obj; - // $slct_trigger = 'event_file'; // $events_sess.launcher.event_file_open.open_status = 'open'; @@ -477,7 +481,11 @@ function handle_ws_recv(ws_recv_status: any) { // let obj_id = obj_parts[1]; if (what == 'event_file_modal') { - $events_sess.launcher.modal__open = false; + $events_sess.launcher.modal__title = ''; + $events_sess.launcher.modal__open_event_file_id = null; + $events_sess.launcher.modal__event_file_obj = null; + + // $events_sess.launcher.modal__img_src = null; // $events_slct.event_file_id = null; // $slct_trigger = 'event_file'; // $events_sess.launcher.event_file_open.open_status = 'close'; @@ -523,6 +531,11 @@ $effect(() => { $slct_trigger = null; // handle_event_file_open(); } + + // if ($events_sess.launcher.trigger_open_file) { + // $events_sess.launcher.trigger_modal_open_file = false; + // handle_event_file_open(); + // } }); $effect(() => { @@ -1093,9 +1106,11 @@ $effect(() => { + + { classHeader="px-1 py-0 md:px-1 md:py-0 absolute top-0 start-0 end-0 bg-gray-200 dark:bg-gray-800 opacity-50 hover:opacity-75" bodyClass='p-0 flex-1 overflow-y-auto overscroll-contain' classBody="flex flex-col items-center p-0 md:px-0 py-0" - on:close={async () => { + onclose={async () => { + $events_sess.launcher.modal__open_event_file_id = null; if ($events_loc.launcher.controller == 'local_push' && $events_sess.launcher.ws_connect_status == 'connected') { // // This should work....???? // console.log(`TEST - FAIL??? Local Push Controller Command: ae_close:event_file_modal`); @@ -1140,14 +1156,14 @@ $effect(() => { Close Remote Poster Display Only - Open: {$ae_api.base_url} {$events_sess.launcher.modal__open} + Open: {$ae_api.base_url} {$events_sess.launcher.modal__open_event_file_id} - {#if $events_sess.launcher.modal__open} + {#if $events_sess.launcher.modal__open_event_file_id} Placeholder: /event/file/{$events_sess.launcher.modal__open}/download?filename={$events_slct.event_file_obj.filename}&x_no_account_id_token=direct-download {:else}
@@ -1177,7 +1193,10 @@ $effect(() => {