Working on security defaults and layout of menus.

This commit is contained in:
Scott Idem
2026-04-01 19:18:38 -04:00
parent 0767e2ff82
commit 5e0f35d3df
6 changed files with 26 additions and 16 deletions

View File

@@ -49,7 +49,7 @@ export interface PresMgmtLocState {
hide__session_poc_biography: boolean;
hide__presenter_biography: boolean;
hide__session_li_location_field: boolean;
hide__session_li_poc_field: boolean;
show__session_li_poc_field: boolean;
hide__launcher_link_legacy: boolean;
hide__launcher_link: boolean;
hide__location_link: boolean;
@@ -168,7 +168,7 @@ export const pres_mgmt_loc_defaults: PresMgmtLocState = {
// List/table-specific visibility.
hide__session_li_location_field: false,
hide__session_li_poc_field: false,
show__session_li_poc_field: false,
hide__launcher_link_legacy: true, // Flask version.
hide__launcher_link: true, // SvelteKit version.
hide__location_link: true,

View File

@@ -270,19 +270,19 @@ async function on_delete(method: 'delete' | 'disable') {
<button
type="button"
onclick={() => {
$events_loc.pres_mgmt.hide__session_li_poc_field =
$events_loc.pres_mgmt.show__session_li_poc_field =
!$events_loc.pres_mgmt
.hide__session_li_poc_field;
.show__session_li_poc_field;
}}
class="btn btn-sm ae_btn_surface w-full justify-between"
title="Toggle the POC column in session lists">
{#if $events_loc.pres_mgmt.hide__session_li_poc_field}<ToggleLeft
{#if !$events_loc.pres_mgmt.show__session_li_poc_field}<ToggleLeft
size="1em"
class="mr-1" />{:else}<ToggleRight
size="1em"
class="mr-1" />{/if}
<span class="grow">
{$events_loc.pres_mgmt.hide__session_li_poc_field
{!$events_loc.pres_mgmt.show__session_li_poc_field
? 'Show POC Column'
: 'Hide POC Column?'}
</span>

View File

@@ -532,8 +532,8 @@ function prevent_default<T extends Event>(fn: (event: T) => void) {
{lq__event_session_obj_li}
hide__session_location={$events_loc.pres_mgmt
?.hide__session_li_location_field}
hide__session_poc={$events_loc.pres_mgmt
?.hide__session_li_poc_field}
hide__session_poc={!$events_loc.pres_mgmt
?.show__session_li_poc_field}
hide__launcher_link_legacy={$events_loc.pres_mgmt
?.hide__launcher_link_legacy}
hide__launcher_link={$events_loc.pres_mgmt?.hide__launcher_link}

View File

@@ -75,7 +75,7 @@ async function toggle_hide_launcher() {
</script>
<div class="pres_mgmt__session_menu ae_container_module_menu">
<div class="flex w-full flex-col gap-1">
<div class="flex w-full flex-col sm:flex-row gap-1 items-center justify-between">
<!-- launcher_id is the event_location_id; launcher_session_id pre-loads this session in the launcher -->
<Comp__events_menu_nav
hide={false}
@@ -101,7 +101,7 @@ async function toggle_hide_launcher() {
events__locations={$ae_loc.administrator_access} />
<div
class="flex w-full flex-row flex-wrap items-center justify-between gap-1">
class="flex w-full flex-row flex-wrap items-center justify-end gap-1">
<span
class="ae_menu__object_options flex flex-row flex-wrap items-center gap-0.5">
<!-- Options modal trigger -->

View File

@@ -70,6 +70,7 @@ let launcher_sess_qry = $derived.by(() => {
class:hidden={hide}>
<span
class="ae_menu__navigation_options flex flex-row flex-wrap items-center justify-around gap-0.5">
{#if $ae_loc.trusted_access && $ae_loc.edit_mode}
<a
href="/core"
class="btn btn-sm ae_btn_warning mx-1"
@@ -77,7 +78,9 @@ let launcher_sess_qry = $derived.by(() => {
<Settings size="1em" aria-hidden="true" />
Æ Core
</a>
{/if}
{#if $ae_loc.public_access && $ae_loc.edit_mode}
<a
href="/events/{event_id}/reports"
class="btn btn-sm ae_btn_info mx-1"
@@ -85,6 +88,8 @@ let launcher_sess_qry = $derived.by(() => {
<TrendingUp size="1em" aria-hidden="true" />
Pres Mgmt Reports
</a>
{/if}
{#if $ae_loc.administrator_access || ($ae_loc.trusted_access && $ae_loc.edit_mode)}
<a
href="/events/{event_id}/locations"
class="btn btn-sm ae_btn_info mx-1"
@@ -92,6 +97,7 @@ let launcher_sess_qry = $derived.by(() => {
<MapPin size="1em" aria-hidden="true" />
Locations
</a>
{/if}
<a
href="/events/{event_id}/settings"
class="btn btn-sm ae_btn_warning mx-1"
@@ -102,7 +108,7 @@ let launcher_sess_qry = $derived.by(() => {
</span>
<span
class="ae_menu__navigation_options flex flex-row flex-wrap items-center justify-around gap-0.5">
class="ae_menu__navigation_options flex flex-row flex-wrap items-center justify-around gap-0.5 grow">
<a
href="/events/{event_id}/pres_mgmt"
class="btn btn-sm ae_btn_info mx-1"
@@ -117,7 +123,8 @@ let launcher_sess_qry = $derived.by(() => {
<GraduationCap size="1em" aria-hidden="true" />
Back to Session
</a>
<!-- eslint-disable-next-line svelte/valid-compile -->
{#if $ae_loc.administrator_access || ($ae_loc.trusted_access && $ae_loc.edit_mode)}
<a
href="/events/{event_id}/launcher{launcher_loc_seg}{launcher_sess_qry}"
class="btn btn-sm ae_btn_info mx-1"
@@ -125,6 +132,8 @@ let launcher_sess_qry = $derived.by(() => {
<Plane size="1em" aria-hidden="true" />
Launcher
</a>
{/if}
{#if $ae_loc.trusted_access}
<a
href="/events/{event_id}/location/{events__location_id}"
class="btn btn-sm ae_btn_info mx-1"
@@ -132,5 +141,6 @@ let launcher_sess_qry = $derived.by(() => {
<MapPin size="1em" aria-hidden="true" />
Session Location
</a>
{/if}
</span>
</div>

View File

@@ -546,19 +546,19 @@ import {
<button
type="button"
onclick={() => {
$events_loc.pres_mgmt.hide__session_li_poc_field =
!$events_loc.pres_mgmt.hide__session_li_poc_field;
$events_loc.pres_mgmt.show__session_li_poc_field =
!$events_loc.pres_mgmt.show__session_li_poc_field;
}}
class="btn btn-sm ae_btn_surface w-full justify-between text-center"
title="Toggle showing the POC column in session lists and tables">
{#if $events_loc.pres_mgmt.hide__session_li_poc_field}<ToggleLeft
{#if !$events_loc.pres_mgmt.show__session_li_poc_field}<ToggleLeft
size="1em"
class="m-1" />{:else}<ToggleRight
size="1em"
class="m-1" />{/if}
<span class="grow">
<!-- <span class="fas fa-user-tie m-1"></span> -->
{$events_loc.pres_mgmt.hide__session_li_poc_field
{!$events_loc.pres_mgmt.show__session_li_poc_field
? 'Show POC Column'
: 'Hide POC Column?'}
</span>