fix(pres_mgmt): migrate QR generation from API to js_generate_qr_code

The API-based generate_qr_code was returning 404 (backend endpoint broken),
causing TypeError crashes on the Presenter, Session, and Location views.
Switch all three to the pure-JS js_generate_qr_code('str', { str: url_str })
which uses the qrcode npm library client-side — consistent with badge views.

- presenter_view.svelte: replace generate_qr_code, remove unused qr_id_url var
- session_view.svelte: replace generate_qr_code, remove unused slct import
- location_view.svelte: replace generate_qr_code, remove unused slct/slct_trigger imports

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Scott Idem
2026-03-13 11:02:04 -04:00
parent b18cda98b7
commit 26dbe57b22
3 changed files with 12 additions and 35 deletions

View File

@@ -35,9 +35,7 @@
ae_loc,
ae_sess,
ae_api,
ae_trig,
slct,
slct_trigger
ae_trig
} from '$lib/stores/ae_stores';
import {
events_loc,
@@ -92,20 +90,12 @@
// ae_promises.generate_qr_code_obj_id = core_func.generate_qr_code({api_cfg: $ae_api, account_id: $slct.account_id, qr_type: 'obj', qr_id: $lq__event_location_obj?.event_location_id, obj_type: 'event_location', obj_id: $lq__event_location_obj?.event_location_id});
// Generate a QR code for the URL.
let qr_id_url = `${$lq__event_location_obj?.event_location_id}_url`;
// URL for this page (be sure to URL encode it):
let url_str = `${$ae_loc.url_origin}/events/${$lq__event_location_obj?.event_id}/location/${$lq__event_location_obj?.event_location_id}`;
url_str = encodeURI(url_str);
ae_promises.generate_qr_code_url =
core_func.generate_qr_code({
api_cfg: $ae_api,
account_id: $slct.account_id,
qr_type: 'str',
qr_id: qr_id_url,
str: url_str
});
core_func.js_generate_qr_code('str', { str: url_str });
$events_sess.pres_mgmt.location__updated_on =
$lq__event_location_obj?.updated_on;

View File

@@ -114,20 +114,12 @@
// ae_promises.generate_qr_code_obj_id = core_func.generate_qr_code({api_cfg: $ae_api, account_id: $slct.account_id, qr_type: 'obj', qr_id: $lq__event_presenter_obj?.event_presenter_id, obj_type: 'event_presenter', obj_id: $lq__event_presenter_obj?.event_presenter_id});
// Generate a QR code for the URL.
let qr_id_url = `${$lq__event_presenter_obj?.event_presenter_id}_url`;
// URL for this page (be sure to URL encode it):
let url_str = `${$ae_loc.url_origin}/events/${$lq__event_presenter_obj?.event_id}/presenter/${$lq__event_presenter_obj?.event_presenter_id}`;
url_str = encodeURI(url_str);
ae_promises.generate_qr_code_url =
core_func.generate_qr_code({
api_cfg: $ae_api,
account_id: $slct.account_id,
qr_type: 'str',
qr_id: qr_id_url,
str: url_str
});
core_func.js_generate_qr_code('str', { str: url_str });
// $events_sess.pres_mgmt.presenter__url_str = url_str;
$events_sess.pres_mgmt.presenter__updated_on =
@@ -206,10 +198,12 @@
class:hover:h-96={$events_sess.pres_mgmt.qr_bigger}
class:hover:w-96={$events_sess.pres_mgmt.qr_bigger}
class="qr_code qr_type_url
h-32 w-32
hover:h-54 hover:w-54
transition-all ease-in-out duration-500
"
h-32 w-32
transition-all ease-in-out duration-500
cursor-crosshair
z-10
"
alt="URL QR code"
/>
<span>
@@ -217,7 +211,7 @@
<span>Presenter URL</span>
</span>
<div
class="hidden group-hover:block text-xs italic text-center text-gray-500 p-1"
class="shrink hidden group-hover:block text-xs italic text-center text-gray-500 p-1"
>
This QR is a link back to this page.
</div>

View File

@@ -22,7 +22,7 @@
import Element_ae_obj_field_editor_v3 from '$lib/elements/element_ae_obj_field_editor_v3.svelte';
import MyClipboard from '$lib/app_components/e_app_clipboard.svelte';
import { core_func } from '$lib/ae_core/ae_core_functions';
import { ae_snip, ae_loc, ae_api, slct } from '$lib/stores/ae_stores';
import { ae_snip, ae_loc, ae_api } from '$lib/stores/ae_stores';
import { events_loc, events_sess, events_slct } from '$lib/stores/ae_events_stores';
import { events_func } from '$lib/ae_events_functions';
@@ -45,14 +45,7 @@
$events_sess.pres_mgmt.session_qr_url[$lq__event_session_obj.id] = true;
let url_str = encodeURI(`${$ae_loc.url_origin}/events/${$lq__event_session_obj.event_id}/session/${$lq__event_session_obj.id}`);
core_func.generate_qr_code({
api_cfg: $ae_api,
account_id: $slct.account_id,
qr_type: 'str',
qr_id: `${$lq__event_session_obj.id}_url`,
str: url_str,
return_blob: true
}).then(result => {
core_func.js_generate_qr_code('str', { str: url_str }).then(result => {
$events_sess.pres_mgmt.session_qr_url[$lq__event_session_obj.id] = result;
});
}