Now with edit content partially ready.

This commit is contained in:
Scott Idem
2024-11-06 14:23:38 -05:00
parent 80965167a5
commit d0c4ef2179
6 changed files with 721 additions and 11 deletions

View File

@@ -26,6 +26,7 @@ import Archive_view from './ae_idaa_comp__archive_obj_id_view.svelte';
// import Archive_page_menu from './session_page_menu.svelte';
import Archive_content_obj_li from './ae_idaa_comp__archive_content_obj_li.svelte';
import Archive_content_obj_id_edit from './ae_idaa_comp__archive_content_obj_id_edit.svelte';
import { browser } from '$app/environment';
@@ -107,4 +108,127 @@ if (browser) {
<!-- {/if} -->
</section>
</section>
<!-- Modal: Archive edit ID -->
<Modal
title="{$lq__archive_obj?.name} - {$lq__archive_obj?.id}"
bind:open={$idaa_sess.archives.show__modal_edit__archive_id}
autoclose={false}
placement="top-center"
size="xl"
class="top-center bg-white dark:bg-gray-800 text-gray-800 dark:text-gray-200 rounded-lg border-gray-200 dark:border-gray-700 divide-gray-200 dark:divide-gray-700 shadow-md relative flex flex-col mx-auto w-full divide-y"
>
<svelte:fragment slot="header">
<div class="flex flex-row items-center justify-between w-full">
<h3 class="text-lg font-semibold">
{#if $ae_loc.trusted_access}
<!-- <div class="ae_options"> -->
<button
on:click={() => {
// const url = new URL(location);
// url.searchParams.set('event_id', $lq__archive_obj?.event_id_random);
// history.pushState({}, '', url);
$idaa_sess.archives.show__modal_view__archive_id = $idaa_slct.archive_id;
$idaa_sess.archives.show__modal_edit__archive_id = false;
}}
class="btn btn-sm variant-ghost-warning hover:variant-filled-warning transition"
title={`View meeting: ${$lq__archive_obj?.name}`}
>
<span class="fas fa-eye m-1"></span> View
</button>
<!-- </div> -->
{/if}
Edit Archive: {$lq__archive_obj?.name}</h3>
</div>
</svelte:fragment>
<Comp__archive_obj_id_edit
lq__archive_obj={lq__archive_obj}
/>
<svelte:fragment slot="footer">
<div class="text-center w-full">
<button
type="button"
on:click={() => {
console.log('Close modal');
$idaa_sess.recovery_meetings.show__modal_edit = false;
}}
class="btn btn-sm variant-soft-warning hover:variant-ghost-warning"
>
<span class="fas fa-times mx-1"></span>
Close
</button>
</div>
</svelte:fragment>
</Modal>
<!-- Modal: Archive Content edit ID -->
<Modal
title="{$lq__archive_content_obj?.name} - {$lq__archive_content_obj?.id}"
bind:open={$idaa_sess.archives.show__modal_edit__archive_content_id}
autoclose={false}
placement="top-center"
size="xl"
class="top-center bg-white dark:bg-gray-800 text-gray-800 dark:text-gray-200 rounded-lg border-gray-200 dark:border-gray-700 divide-gray-200 dark:divide-gray-700 shadow-md relative flex flex-col mx-auto w-full divide-y"
>
<svelte:fragment slot="header">
<div class="flex flex-row items-center justify-between w-full">
<h3 class="text-lg font-semibold">
{#if $ae_loc.trusted_access}
<!-- <div class="ae_options"> -->
<button
on:click={() => {
// const url = new URL(location);
// url.searchParams.set('event_id', $lq__archive_content_obj?.event_id_random);
// history.pushState({}, '', url);
$idaa_sess.archives.show__modal_view__archive_content_id = $idaa_slct.archive_content_id;
$idaa_sess.archives.show__modal_edit__archive_content_id = false;
}}
class="btn btn-sm variant-ghost-warning hover:variant-filled-warning transition"
title={`View meeting: ${$lq__archive_content_obj?.name}`}
>
<span class="fas fa-eye m-1"></span> View
</button>
<!-- </div> -->
{/if}
Edit Archive Content: {$lq__archive_content_obj?.name}</h3>
</div>
</svelte:fragment>
<Archive_content_obj_id_edit
lq__archive_content_obj={lq__archive_content_obj}
/>
<svelte:fragment slot="footer">
<div class="text-center w-full">
<button
type="button"
on:click={() => {
console.log('Close modal');
$idaa_sess.recovery_meetings.show__modal_edit = false;
}}
class="btn btn-sm variant-soft-warning hover:variant-ghost-warning"
>
<span class="fas fa-times mx-1"></span>
Close
</button>
</div>
</svelte:fragment>
</Modal>

View File

@@ -0,0 +1,590 @@
<script lang="ts">
export let log_lvl = 1;
// *** Import Svelte core
import { onMount } from 'svelte';
import { fade } from 'svelte/transition';
import { Spinner } from 'flowbite-svelte';
// *** Import Aether core variables and functions
import type { key_val } from '$lib/ae_stores';
import { ae_util } from '$lib/ae_utils/ae_utils';
import { core_func } from '$lib/ae_core/ae_core_functions';
import { api } from '$lib/api';
import { ae_snip, ae_loc, ae_sess, ae_api, ae_trig, slct, slct_trigger } from '$lib/ae_stores';
import { idaa_loc, idaa_sess, idaa_slct } from '$lib/ae_idaa_stores';
export let lq__archive_content_obj: any;
let create_archive_content_obj_promise: any;
let delete_archive_content_obj_promise: any;
let update_archive_content_obj_promise: any;
let upload__hosted_file_obj_promise: any;
let disable_submit_btn = true;
if ($idaa_slct.archive_content_id) {
console.log(`Archive Content ID selected: ${$idaa_slct.archive_content_id}`);
console.log(`Archive Content Object selected: ${$idaa_slct.archive_content_obj}`)
} else {
$idaa_slct.archive_content_id = null;
$idaa_slct.archive_content_obj = {
archive_id_random: null,
// archive_content_id_random: null,
archive_content_type: null,
name: null,
description: null,
content_html: null,
// hosted_file_id_random: null,
file_path: null,
filename: null,
file_extension: null,
original_datetime: null,
original_timezone: null,
original_location: null,
original_url: null,
original_url_text: null,
access_key: null, // or passcode?
enable: true,
hide: false,
priority: null,
sort: null,
notes: null,
};
console.log(`Archive Content Object started: ${$idaa_slct.archive_content_obj}`)
}
let lu_time_zone_list:any = localStorage.getItem('lu_time_zone_list') ? JSON.parse(localStorage.getItem('lu_time_zone_list')) : [];
$ae_loc.lu_time_zone_list = [];
// $ae_loc.lu_time_zone_list = [];
if (lu_time_zone_list && lu_time_zone_list.length > 0) {
// console.log('Already have time zone list!', lu_time_zone_list);
} else {
console.log('No time zone list');
let lu_time_zone_li_get_promise = core_func.load_ae_obj_li__time_zone({
api_cfg: $ae_api,
log_lvl: log_lvl
})
.then(function (lu_time_zone_li_get_result) {
/* We need to save the time zone list to localStore */
if (lu_time_zone_li_get_result) {
lu_time_zone_list = lu_time_zone_li_get_result;
localStorage.setItem('lu_time_zone_list', JSON.stringify(lu_time_zone_li_get_result));
if (log_lvl) {
console.log(`Time zone list:`, lu_time_zone_list);
}
} else {
console.log(`No time zones returned!`);
// $ae_loc.lu_time_zone_list = [];
}
if (lu_time_zone_li_get_result) {
lu_time_zone_list = lu_time_zone_li_get_result;
console.log(`Time zone list:`, lu_time_zone_list);
console.log(lu_time_zone_list[0]);
console.log(lu_time_zone_list[10]);
} else {
console.log(`No time zones returned!`);
lu_time_zone_list = [];
}
})
.catch(function (error) {
console.log('No results returned or failed.', error);
});
}
onMount(() => {
console.log('** Component Mounted: ** ID - Archive Content Obj - Edit');
});
async function handle_submit_form(event) {
console.log('*** handle_submit_form() ***');
disable_submit_btn = true;
let form_data = new FormData(event.target);
console.log(form_data);
let form_archive_content_data = ae_util.extract_prefixed_form_data({prefix: null, form_data: form_data, trim_values: true, bool_tf_str: true, log_lvl: 0});
console.log(form_archive_content_data);
let archive_content_data: key_val = {};
if (!$idaa_slct.archive_content_id) {
archive_content_data['account_id_random'] = $ae_loc.account_id;
archive_content_data['archive_id_random'] = $idaa_slct.archive_id;
// archive_content_data['enable'] = true;
}
archive_content_data['name'] = form_archive_content_data.name;
if (tinyMCE.get('description')) {
archive_content_data['description'] = tinyMCE.get('description').getContent();
} else {
archive_content_data['description'] = form_archive_content_data.description;
}
if (tinyMCE.get('content_html')) {
archive_content_data['content_html'] = tinyMCE.get('content_html').getContent();
} else {
archive_content_data['content_html'] = form_archive_content_data.content_html;
}
if (form_archive_content_data.archive_content_type) {
archive_content_data['archive_content_type'] = form_archive_content_data.archive_content_type;
} else {
archive_content_data['archive_content_type'] = null;
}
archive_content_data['enable_for_public'] = !!!form_archive_content_data.enable_for_public;
archive_content_data['file_path'] = form_archive_content_data.file_path;
archive_content_data['filename'] = form_archive_content_data.filename.trim();
archive_content_data['file_extension'] = form_archive_content_data.file_extension.trim();
let date_time_str = null;
let date_part = form_archive_content_data.original_datetime_date.trim();
let time_part = form_archive_content_data.original_datetime_time.trim();
if (date_part && time_part) {
date_time_str = `${date_part} ${time_part}`;
} else if (date_part) {
date_time_str = `${date_part}T00:00:00`;
} else if (time_part) {
// date_time_str = `${time_part}`;
date_time_str = false;
}
archive_content_data['original_datetime'] = date_time_str;
archive_content_data['original_timezone'] = form_archive_content_data.original_timezone;
archive_content_data['original_location'] = form_archive_content_data.original_location;
archive_content_data['hide'] = !!form_archive_content_data.hide;
archive_content_data['priority'] = !!form_archive_content_data.priority;
if (form_archive_content_data.sort) {
// Change this to a number type
archive_content_data['sort'] = Number(form_archive_content_data.sort);
} else {
archive_content_data['sort'] = null;
}
if (form_archive_content_data.group) {
archive_content_data['group'] = form_archive_content_data.group;
} else {
archive_content_data['group'] = null;
}
if (archive_content_data['enable']) {
archive_content_data['enable'] = !!form_archive_content_data.enable;
}
if (tinyMCE.get('notes')) {
archive_content_data['notes'] = tinyMCE.get('notes').getContent();
} else {
archive_content_data['notes'] = form_archive_content_data.notes;
}
console.log(archive_content_data);
if (!$idaa_slct.archive_content_id) {
create_archive_content_obj_promise = api.create_ae_obj_crud({
api_cfg: $ae_api,
obj_type: 'archive_content',
fields: archive_content_data,
key: $ae_api.api_crud_super_key,
log_lvl: 1
})
.then(async function (archive_content_obj_create_result) {
if (!archive_content_obj_create_result) {
console.log('The result was null or false.');
return false;
}
$idaa_slct.archive_content_id = archive_content_obj_create_result.obj_id_random;
// Get ready to upload the file now that we have a new archive_content_id.
const form_data = new FormData();
form_data.append('account_id', $ae_loc.account_id);
form_data.append('link_to_type', 'archive_content');
form_data.append('link_to_id', $idaa_slct.archive_content_id);
for (let i = 0; i < event.target.file_list.files.length; i++) {
form_data.append(`file_list`, event.target.archive_content_file_upload_list.files[i]);
}
let params = null;
let endpoint = '/hosted_file/upload_files';
console.log(form_data);
params = null;
// Uncomment and the post_promise is not seen by the "await" below
// post_promise = await api.post_object({api_cfg: $cfg.api, endpoint: endpoint, params: params, data:form_data});
// Uncomment so that the post_promise is not seen by the "await" below
upload__hosted_file_obj_promise = await api.post_object({api_cfg: $ae_api, endpoint: endpoint, params: params, form_data: form_data});
console.log(upload__hosted_file_obj_promise);
let hosted_file_id = upload__hosted_file_obj_promise[0].hosted_file_id_random;
archive_content_data = {};
archive_content_data['hosted_file_id_random'] = hosted_file_id;
archive_content_data['file_path'] = `/hosted_file/download/${hosted_file_id}?filename=${form_archive_content_data.filename.trim()}`;
archive_content_data['archive_content_type'] = 'hosted_file';
update_archive_content_obj_promise = await api.update_ae_obj_id_crud({
api_cfg: $ae_api,
obj_type: 'archive_content',
obj_id: $idaa_slct.archive_content_id,
fields: archive_content_data,
key: $ae_api.api_crud_super_key,
log_lvl: 1
})
.then(function (archive_content_obj_update_result) {
if (!archive_content_obj_update_result) {
console.log('The result was null or false.');
return false;
}
return archive_content_obj_update_result;
})
.catch(function (error) {
console.log('Something went wrong.');
console.log(error);
return false;
});
// update_archive_content_obj_promise = await update_archive_content_obj({archive_content_id: $idaa_slct.archive_content_id, data: archive_content_data})
// console.log(update_archive_content_obj_promise);
return update_archive_content_obj_promise
})
.then(function (archive_content_obj_create_result) {
// dispatch(
// 'created__archive_content_obj',
// {
// archive_content_id: $idaa_slct.archive_content_id,
// }
// );
return archive_content_obj_create_result;
})
.catch(function (error) {
console.log('Something went wrong.');
console.log(error);
return false;
});
return create_archive_content_obj_promise;
} else {
update_archive_content_obj_promise = api.update_ae_obj_id_crud({
api_cfg: $ae_api,
obj_type: 'archive_content',
obj_id: $idaa_slct.archive_content_id,
fields: archive_content_data,
key: $ae_api.api_crud_super_key,
log_lvl: 1
})
.then(function (archive_content_obj_update_result) {
if (!archive_content_obj_update_result) {
console.log('The result was null or false.');
return false;
}
// dispatch(
// 'updated__archive_content_obj',
// {
// archive_content_id: $idaa_slct.archive_content_id,
// }
// );
return archive_content_obj_update_result;
})
.catch(function (error) {
console.log('Something went wrong.');
console.log(error);
return false;
});
return update_archive_content_obj_promise;
}
}
</script>
<section
class="svelte_component ae_edit archive_content_obj"
class:ae_create={!$idaa_slct.archive_content_id}
>
<!-- bind:clientHeight={ae_iframe_height} -->
<form on:submit|preventDefault={handle_submit_form} class="">
{#await update_archive_content_obj_promise}
<div class="awaiting alert_msg_pulse" out:fade={{ duration: 2000 }}>Saving...</div>
{:then}
{#if update_archive_content_obj_promise}
<div class="awaiting" out:fade={{ duration: 2000 }}>Finished saving</div>
{:else}
<!-- <div class="awaiting" out:fade={{ duration: 2000 }}>Nothing here yet</div> -->
{/if}
{/await}
<h3>Archive Content</h3>
<label for="title">Name of Content
<input type="text" id="name" name="name" required max="200" value={$idaa_slct.archive_content_obj.name ? $idaa_slct.archive_content_obj.name : '' }
class="input w-full"
placeholder="Content name"
>
</label>
<label for="description">Description
<textarea id="description" name="description" rows="6" cols="80" value={$idaa_slct.archive_content_obj.description ? $idaa_slct.archive_content_obj.description : ''} class="ae_value archive_content__description textarea"></textarea>
</label>
<label for="content_html">Content (HTML)
<textarea id="content_html" name="content_html" rows="6" cols="80" value={$idaa_slct.archive_content_obj.content_html ? $idaa_slct.archive_content_obj.content_html : ''} class="ae_value archive_content__content_html textarea"></textarea>
</label>
<label for="archive_content_type">Type
<select id="archive_content_type" name="archive_content_type" value={$idaa_slct.archive_content_obj.archive_content_type} class="select w-52">
<option value="">-- None --</option>
<option value="hosted_file">Hosted File in &AElig;</option>
<option value="html">Hosted HTML in &AElig</option>
<option value="json">Hosted JSON in &AElig;</option>
<option value="url">External URL</option>
<option value="other">Other</option>
</select>
</label>
<fieldset class="">
<legend class="">Public Access with Rotating Access Key/Passcode</legend>
<label for="enable_for_public_no" class="">No, disable public access
<input
type="radio"
class="radio"
id="enable_for_public_no"
name="enable_for_public"
value={false}
bind:group={$idaa_slct.archive_content_obj.enable_for_public}
>
<!-- <input type="radio" class="" id="enable_for_public_no" name="enable_for_public" value="0" checked={(!$idaa_slct.archive_content_obj.enable_for_public)} required> -->
</label>
<label for="enable_for_public_yes" class="">Yes, allow public access
<input
type="radio"
class="radio"
id="enable_for_public_yes"
name="enable_for_public"
value={true}
bind:group={$idaa_slct.archive_content_obj.enable_for_public}
>
<!-- <input type="radio" class="" id="enable_for_public_yes" name="enable_for_public" value="1" checked={($idaa_slct.archive_content_obj.enable_for_public)} required > -->
</label>
</fieldset>
<h3>File?</h3>
{#if !$idaa_slct.archive_content_id}
FILE INPUT GOES HERE
<!-- <Element_input_file_hashing
multiple = {false}
required = {true}
accept = {''}
element_id = {'archive_content_file_upload_list'}
on:input_file_list_updated = {handle_input_file_list_updated}
use_selected_file_table={true}
/> -->
<!-- bind:input_file_list = {$idaa_loc.archives.form_file_upload_list} -->
{/if}
<label for="file_path">File Path
{#if !$ae_loc.administrator_access}
<span class="fas fa-lock" title="Field is locked"></span>
{:else}
<span class="fas fa-unlock" title="Field is unlocked"></span>
{/if}
<input
type="text"
id="file_path"
name="file_path"
value={($idaa_slct.archive_content_obj.file_path ? $idaa_slct.archive_content_obj.file_path : '')}
readonly={!$ae_loc.administrator_access}
class="input w-full"
>
</label>
<label for="filename">Filename
<input type="text" id="filename" name="filename" value={($idaa_slct.archive_content_obj.filename ? $idaa_slct.archive_content_obj.filename : $idaa_loc.archives.input_filename)} class="input w-full">
</label>
<label for="file_extension">File Extension
{#if !$ae_loc.administrator_access}
<span class="fas fa-lock" title="Field is locked"></span>
{:else}
<span class="fas fa-unlock" title="Field is unlocked"></span>
{/if}
<input
type="text"
id="file_extension"
name="file_extension"
value={($idaa_slct.archive_content_obj.file_extension ? $idaa_slct.archive_content_obj.file_extension : $idaa_loc.archives.input_file_extension)}
readonly={!$ae_loc.administrator_access}
class="input w-24"
>
</label>
<h3>Original</h3>
<label for="original_datetime">Original Date/Time
<input 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') : '')} placeholder="YYYY-MM-DD" class="input w-48">
<input type="time" id="original_datetime_time" name="original_datetime_time" value={($idaa_slct.archive_content_obj.original_datetime ? ae_util.iso_datetime_formatter($idaa_slct.archive_content_obj.original_datetime,'time_iso') : '')} placeholder="HH:MM AM/PM" class="input w-48">
</label>
<fieldset class="flex_row flex_gap_md flex_justify_around">
<label for="original_timezone">Original Timezone
{#if lu_time_zone_list}
<select
id="original_timezone"
name="original_timezone"
required
value={($idaa_slct.archive_content_obj.original_timezone ? $idaa_slct.archive_content_obj.original_timezone : $ae_loc.current_timezone)}
class="select w-56"
title="Select the original timezone"
>
<option value="">-- None --</option>
{#each lu_time_zone_list as lu_timezone}
<option
value="{lu_timezone.name}"
>
{lu_timezone.name}
</option>
{/each}
</select>
{:else}
<input type="text" name="timezone" value={($idaa_slct.archive_content_obj.original_timezone ? $idaa_slct.archive_content_obj.original_timezone : $ae_loc.current_timezone)} class="input w-56"/>
{/if}
</label>
</fieldset>
<!-- <label for="original_timezone">Original Timezone
<input type="text" id="original_timezone" name="original_timezone" value={$idaa_slct.archive_content_obj.original_timezone} list="timezones">
<datalist id="timezones">
<option value="UTC">UTC</option>
<option value="America/New_York">America/New York</option>
<option value="America/Chicago">America/Chicago</option>
<option value="America/Denver">America/Denver</option>
<option value="America/Phoenix">America/Phoenix</option>
<option value="America/Los_Angeles">America/Los Angeles</option>
<option value="America/Anchorage">America/Anchorage</option>
<option value="America/Adak">America/Adak</option>
<option value="Pacific/Honolulu">Pacific/Honolulu</option>
<option value="Pacific/Midway">Pacific/Midway</option>
<option value="US/Eastern">US/Eastern</option>
<option value="US/Central">US/Central</option>
<option value="US/Mountain">US/Mountain</option>
<option value="US/Pacific">US/Pacific</option>
<option value="US/Alaska">US/Alaska</option>
<option value="US/Hawaii">US/Hawaii</option>
<option value="US/Samoa">US/Samoa</option>
<option value="US/Aleutian">US/Aleutian</option>
<option value="US/Arizona">US/Arizona</option>
<option value="US/Michigan">US/Michigan</option>
</datalist>
</label> -->
<label for="original_location">Original Location
<input type="text" id="original_location" name="original_location" value={$idaa_slct.archive_content_obj.original_location} class="input w-full">
</label>
{#if $ae_loc.trusted_access}
<section class="ae_section archive_content__admin_options"> <!-- BEGIN: section archive_content__admin_options -->
<h3>
Admin Options
<button type="button" class="btn btn-sm variant-soft-secondary" on:click={() => {document.querySelector('.ae_d_none_content').classList.toggle('ae_d_none');}}><span class="fas fa-eye m-1"></span> Show/Hide Admin</button>
</h3>
<span class="ae_d_none_content ae_d_none">
<label>Hide
<input
type="checkbox"
name="hide"
id="hide"
bind:checked={$idaa_slct.archive_content_obj.hide}
class="checkbox"
>
<!-- <input type="checkbox" name="hide" value={$idaa_slct.archive_content_obj.hide} /> -->
</label>
<label>Priority
<input
type="checkbox"
name="priority"
id="priority"
bind:checked={$idaa_slct.archive_content_obj.priority}
class="checkbox"
>
<!-- <input type="checkbox" name="priority" value={$idaa_slct.archive_content_obj.priority} /> -->
</label>
<label>Sort <input type="number" name="sort" value={$idaa_slct.archive_content_obj.sort} class="input w-24" /></label>
<label>Group <input type="text" name="group" value={$idaa_slct.archive_content_obj.group} max="100" class="input" /></label>
{#if $ae_loc.administrator_access}
<label>Enable
<input
type="checkbox"
name="enable"
id="enable"
bind:checked={$idaa_slct.archive_content_obj.enable}
class="checkbox"
>
<!-- <input type="checkbox" name="enable" value={$idaa_slct.archive_content_obj.enable} checked={$idaa_slct.archive_content_obj.enable} /> -->
</label>
{/if}
<label>Internal Staff Notes
<textarea id="notes" name="notes" class="ae_value archive_content__notes textarea" rows="2" cols="70" value={$idaa_slct.archive_content_obj.notes}></textarea>
</label>
</span> <!-- END: span ae_show_hide_content -->
</section> <!-- END: section archive_content__admin_options -->
{/if}
<section class="ae_section ae_options ae_row">
<button type="submit" class="btn btn-md variant-ghost-primary">
<span class="fas fa-check m-1"></span> Save Archive Content
</button>
{#if $idaa_slct.archive_content_id}
<button
on:click={() => {
if (!confirm('Are you sure you want to delete this archive content?')) {return false;}
handle_delete_archive_content_obj({archive_content_id: $idaa_slct.archive_content_id, hosted_file_id: $idaa_slct.archive_content_obj.hosted_file_id_random});
$idaa_slct.archive_content_id = null;
$idaa_slct.archive_content_obj = {};
}}
class="ae_btn ae_smallest btn btn-danger" type="button">
<span class="fas fa-minus"></span> Delete
</button>
{/if}
</section>
</form>
</section>
<style>
</style>

View File

@@ -64,7 +64,7 @@ onMount(() => {
// let message = {'archive_id': idaa_archive_content_obj?.archive_id};
// window.parent.postMessage(message, "*");
$idaa_sess.archives.show__modal_view__archive_content_id = true;
$idaa_sess.archives.show__modal_view__archive_content_id = $idaa_slct.archive_content_id;
$idaa_sess.archives.show__modal_edit__archive_content_id = false;
}}
class="btn btn-md variant-ghost-primary hover:variant-filled-primary transition"
@@ -127,11 +127,11 @@ onMount(() => {
<button
disabled={!$ae_loc.administrator_access}
on:click={() => {
$idaa_slct.archive_id = idaa_archive_content_obj.archive_id;
$idaa_slct.archive_content_id = idaa_archive_content_obj.archive_content_id;
$idaa_slct.archive_content_obj = idaa_archive_content_obj;
$idaa_sess.archives.show__modal_view = false;
$idaa_sess.archives.show__modal_edit__archive_content_obj = true;
$idaa_sess.archives.show__modal_view__archive_content_id = false;
$idaa_sess.archives.show__modal_edit__archive_content_id = $idaa_slct.archive_content_id;
}}
class="btn btn-sm variant-ghost-warning hover:variant-filled-warning transition"
title={`Edit archive: ${idaa_archive_content_obj?.name}`}

View File

@@ -1,7 +1,6 @@
<script lang="ts">
// *** Import Svelte core
import { onMount } from 'svelte';
import { Spinner } from 'flowbite-svelte';
// *** Import Aether core variables and functions
import { ae_util } from '$lib/ae_utils/ae_utils';

View File

@@ -1,9 +1,11 @@
<script lang="ts">
export let log_lvl = 1;
// *** Import Svelte core
import { createEventDispatcher, onDestroy, onMount } from 'svelte';
import { fade } from 'svelte/transition';
// import Editor from '@tinymce/tinymce-svelte';
import type { key_val } from '$lib/ae_stores';
import { ae_util } from '$lib/ae_utils/ae_utils';
import { core_func } from '$lib/ae_core/ae_core_functions';
import { api } from '$lib/api';
@@ -17,10 +19,6 @@ export let lq__event_obj: any;
const dispatch = createEventDispatcher();
type key_val = {
[key: string]: any;
};
let prom_api__event_obj: any;
let disable_submit_btn = true;