diff --git a/src/lib/types/ae_types.ts b/src/lib/types/ae_types.ts index 896dfea6..ae41a833 100644 --- a/src/lib/types/ae_types.ts +++ b/src/lib/types/ae_types.ts @@ -863,6 +863,7 @@ export interface ae_ArchiveContent extends ae_BaseObj { hosted_file_id_random?: string; // NO LONGER USE "_random" filename?: string; + file_extension?: string; subdirectory_path?: string; } diff --git a/src/routes/idaa/(idaa)/archives/[archive_id]/+page.svelte b/src/routes/idaa/(idaa)/archives/[archive_id]/+page.svelte index 569e2a61..c6a920dd 100644 --- a/src/routes/idaa/(idaa)/archives/[archive_id]/+page.svelte +++ b/src/routes/idaa/(idaa)/archives/[archive_id]/+page.svelte @@ -51,6 +51,8 @@ import { page } from '$app/state'; // let ae_tmp: key_val = {}; // let ae_triggers: key_val = {}; +let archive_content_edit_dirty = $state(false); + // *** Quickly pull out data from parent(s) let ae_acct = $derived(data[data.account_id]); $effect(() => { @@ -502,8 +504,8 @@ onDestroy(() => { {#snippet header()}

- {#if $ae_loc.trusted_access} - + {#if $ae_loc.trusted_access && (!$idaa_slct.archive_content_id || archive_content_edit_dirty)} + - {/if} Edit Content: @@ -526,7 +527,7 @@ onDestroy(() => {

{/snippet} - + {#snippet footer()} - - @@ -761,9 +796,7 @@ $effect(() => { type="text" id="file_extension" name="file_extension" - value={$idaa_slct.archive_content_obj.file_extension - ? $idaa_slct.archive_content_obj.file_extension - : 'ext'} + bind:value={archive_content_form.file_extension} readonly={!$ae_loc.administrator_access} class="input w-24" /> @@ -787,24 +820,14 @@ $effect(() => { type="date" id="original_datetime_date" name="original_datetime_date" - value={$idaa_slct.archive_content_obj.original_datetime - ? ae_util.iso_datetime_formatter( - $idaa_slct.archive_content_obj.original_datetime, - 'date_iso' - ) - : ''} + bind:value={archive_content_form.original_datetime_date} placeholder="YYYY-MM-DD" class="input w-48" /> @@ -816,11 +839,7 @@ $effect(() => { {/if} @@ -850,7 +865,7 @@ $effect(() => { type="text" id="original_location" name="original_location" - value={$idaa_slct.archive_content_obj.original_location} + bind:value={archive_content_form.original_location} class="input w-96" /> @@ -895,9 +910,7 @@ $effect(() => { id="hide_yes" name="hide" value={true} - bind:group={ - $idaa_slct.archive_content_obj.hide - } + bind:group={archive_content_form.hide} class="radio form-check-input" /> @@ -907,9 +920,7 @@ $effect(() => { id="hide_no" name="hide" value={false} - bind:group={ - $idaa_slct.archive_content_obj.hide - } + bind:group={archive_content_form.hide} class="radio form-check-input" /> @@ -926,10 +937,7 @@ $effect(() => { id="priority_yes" name="priority" value={true} - bind:group={ - $idaa_slct.archive_content_obj - .priority - } + bind:group={archive_content_form.priority} class="radio form-check-input" /> @@ -939,10 +947,7 @@ $effect(() => { id="priority_no" name="priority" value={false} - bind:group={ - $idaa_slct.archive_content_obj - .priority - } + bind:group={archive_content_form.priority} class="radio form-check-input" /> @@ -960,7 +965,7 @@ $effect(() => { >Sort @@ -988,10 +992,7 @@ $effect(() => { id="enable_yes" name="enable" value={true} - bind:group={ - $idaa_slct.archive_content_obj - .enable - } + bind:group={archive_content_form.enable} class="radio form-check-input" /> @@ -1001,10 +1002,7 @@ $effect(() => { id="enable_no" name="enable" value={false} - bind:group={ - $idaa_slct.archive_content_obj - .enable - } + bind:group={archive_content_form.enable} class="radio form-check-input" /> @@ -1014,7 +1012,7 @@ $effect(() => { + value={archive_content_form.enable} /> {/if} @@ -1049,22 +1047,37 @@ $effect(() => { d-flex align-items-center justify-content-between flex w-full flex-row items-center justify-between gap-1 "> - + {#if $idaa_slct.archive_content_id} + + {:else} + + {/if} {#if $idaa_slct.archive_content_id && !$idaa_slct.archive_content_obj?.hosted_file_id}