More work on the agreements and separating things into files.
This commit is contained in:
@@ -19,7 +19,6 @@ import { ae_snip, ae_loc, ae_sess, ae_api, ae_trig, slct, slct_trigger } from '$
|
|||||||
// import { events_loc, events_sess, slct, events_trigger } from '$lib/ae_events_stores';
|
// import { events_loc, events_sess, slct, events_trigger } from '$lib/ae_events_stores';
|
||||||
// import { events_func } from '$lib/ae_events_functions';
|
// import { events_func } from '$lib/ae_events_functions';
|
||||||
|
|
||||||
// import Form_agree from './../../form_agree.svelte';
|
|
||||||
import Person_view from './../../person_view.svelte';
|
import Person_view from './../../person_view.svelte';
|
||||||
|
|
||||||
// Exports
|
// Exports
|
||||||
|
|||||||
@@ -25,6 +25,8 @@ export let multiple: boolean = true;
|
|||||||
export let required: boolean = true;
|
export let required: boolean = true;
|
||||||
export let accept: string = 'audio/*, image/*, video/*, .bak, .cfg, .css, .csv, .doc, .docx, .gz, .htm, .html, .ini, .iso, .j2, .json, .key, .keynote, .md, .pdf, .ppt, .pptx, .rar, .rtf, .sql, .svelte, ttf, .txt, .xls, .xlsx, .xz, .zip, .bin, .dmg, .exe, .js, .msi, .php, .py, .sh';
|
export let accept: string = 'audio/*, image/*, video/*, .bak, .cfg, .css, .csv, .doc, .docx, .gz, .htm, .html, .ini, .iso, .j2, .json, .key, .keynote, .md, .pdf, .ppt, .pptx, .rar, .rtf, .sql, .svelte, ttf, .txt, .xls, .xlsx, .xz, .zip, .bin, .dmg, .exe, .js, .msi, .php, .py, .sh';
|
||||||
|
|
||||||
|
let class_li_default: string = 'flex flex-col gap-1 items-center justify-center w-full';
|
||||||
|
export let class_li: string = '';
|
||||||
export let input_class_li: string[] = ['file_drop_area'];
|
export let input_class_li: string[] = ['file_drop_area'];
|
||||||
export let table_class_li: string[] = ['table', 'table-sm', 'table-striped', 'table-hover' , 'text-sm'];
|
export let table_class_li: string[] = ['table', 'table-sm', 'table-striped', 'table-hover' , 'text-sm'];
|
||||||
|
|
||||||
@@ -206,16 +208,15 @@ async function handle_input_upload_files(input_upload_files, task_id) {
|
|||||||
return hosted_file_result;
|
return hosted_file_result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<!-- class:hidden={!$ae_loc.trusted_access} -->
|
<!-- class:hidden={!$ae_loc.trusted_access} -->
|
||||||
<form
|
<form
|
||||||
on:submit|preventDefault={handle_submit_form_files}
|
on:submit|preventDefault={handle_submit_form_files}
|
||||||
class="modal-form {$ae_loc.hub.classes__form} flex flex-col gap-1 items-center justify-center w-full"
|
class="{class_li_default} {class_li}"
|
||||||
>
|
>
|
||||||
|
|
||||||
{#await ae_promises.upload__hosted_file_obj}
|
{#await ae_promises.upload__hosted_file_obj}
|
||||||
<div class="text-lg flex flex-row gap-1 items-center justify-center">
|
<div class="text-lg flex flex-row gap-1 items-center justify-center">
|
||||||
<span class="fas fa-spinner fa-spin m-1"></span>
|
<span class="fas fa-spinner fa-spin m-1"></span>
|
||||||
@@ -254,7 +255,7 @@ async function handle_input_upload_files(input_upload_files, task_id) {
|
|||||||
{required}
|
{required}
|
||||||
{accept}
|
{accept}
|
||||||
name={input_name}
|
name={input_name}
|
||||||
class="svelte_input_file_element {input_class_li.join(' ')}"
|
class="svelte_input_file_element file-dropzone-input block w-full text-lg text-gray-900 border border-gray-300 rounded-lg cursor-pointer bg-gray-50 dark:text-gray-400 focus:outline-none dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 {input_class_li.join(' ')}"
|
||||||
class:hidden={$events_sess.files.disable_submit__event_file_obj}
|
class:hidden={$events_sess.files.disable_submit__event_file_obj}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import { events_func } from '$lib/ae_events_functions';
|
|||||||
export let lq__event_presenter_obj: any;
|
export let lq__event_presenter_obj: any;
|
||||||
// export let event_presentation_id: string;
|
// export let event_presentation_id: string;
|
||||||
export let lq__event_presentation_obj: any;
|
export let lq__event_presentation_obj: any;
|
||||||
export let lq__event_session_obj: any;
|
// export let lq__event_session_obj: any;
|
||||||
|
|
||||||
let ae_triggers: key_val = {};
|
let ae_triggers: key_val = {};
|
||||||
let ae_promises: key_val = {}; // Promise<any>;
|
let ae_promises: key_val = {}; // Promise<any>;
|
||||||
@@ -258,7 +258,7 @@ onMount(() => {
|
|||||||
$events_slct.event_presenter_id = event_presenter_obj.event_presenter_id_random;
|
$events_slct.event_presenter_id = event_presenter_obj.event_presenter_id_random;
|
||||||
$events_slct.event_presenter_obj = event_presenter_obj;
|
$events_slct.event_presenter_obj = event_presenter_obj;
|
||||||
|
|
||||||
$events_sess.pres_mgmt.show_content__agree_text = event_presenter_obj.event_presenter_id_random;
|
$events_sess.pres_mgmt.show_modal__presenter_agree = event_presenter_obj.event_presenter_id_random;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
class="btn variant-soft-success hover:variant-filled-success my-0.5"
|
class="btn variant-soft-success hover:variant-filled-success my-0.5"
|
||||||
@@ -282,7 +282,7 @@ onMount(() => {
|
|||||||
$events_slct.event_presenter_id = event_presenter_obj.event_presenter_id_random;
|
$events_slct.event_presenter_id = event_presenter_obj.event_presenter_id_random;
|
||||||
$events_slct.event_presenter_obj = event_presenter_obj;
|
$events_slct.event_presenter_obj = event_presenter_obj;
|
||||||
|
|
||||||
$events_sess.pres_mgmt.show_content__agree_text = event_presenter_obj.event_presenter_id_random;
|
$events_sess.pres_mgmt.show_modal__presenter_agree = event_presenter_obj.event_presenter_id_random;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
class="btn variant-ghost-warning hover:variant-filled-warning my-0.5"
|
class="btn variant-ghost-warning hover:variant-filled-warning my-0.5"
|
||||||
|
|||||||
@@ -0,0 +1,134 @@
|
|||||||
|
<script lang="ts">
|
||||||
|
console.log(`ae_events_pres_mgmt session [slug] form_agree.svelte`);
|
||||||
|
export let log_lvl = 1;
|
||||||
|
|
||||||
|
// Imports (external and then internal)
|
||||||
|
import type { key_val } from '$lib/ae_stores';
|
||||||
|
import { ae_util } from '$lib/ae_utils';
|
||||||
|
import { ae_loc, ae_sess, ae_api, ae_trig, slct, slct_trigger } from '$lib/ae_stores';
|
||||||
|
import { events_loc, events_sess, events_slct, events_trigger } from '$lib/ae_events_stores';
|
||||||
|
import { events_func } from '$lib/ae_events_functions';
|
||||||
|
|
||||||
|
// Import components and elements
|
||||||
|
import Element_data_store from '$lib/element_data_store.svelte';
|
||||||
|
|
||||||
|
// Exports
|
||||||
|
export let lq__event_session_obj: any;
|
||||||
|
|
||||||
|
// Local Variables
|
||||||
|
let ae_promises: key_val = {};
|
||||||
|
// let ae_tmp: key_val = {};
|
||||||
|
// let ae_triggers: key_val = {};
|
||||||
|
|
||||||
|
$events_sess.pres_mgmt.disable_submit__opt_out = false;
|
||||||
|
|
||||||
|
let tmp_agree = false;
|
||||||
|
let tmp_opt_out: key_val = {
|
||||||
|
audio: false,
|
||||||
|
video: false,
|
||||||
|
transcription_and_publication: false,
|
||||||
|
publication_in_app: false
|
||||||
|
};
|
||||||
|
|
||||||
|
// Functions and Logic
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
{#if $lq__event_session_obj}
|
||||||
|
{#if !$lq__event_session_obj?.poc_agree}
|
||||||
|
<div
|
||||||
|
class="text-center text-red-500"
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
class="text-red-500"
|
||||||
|
>
|
||||||
|
<span class="fas fa-times text-red-500 m-1"></span>
|
||||||
|
Not Yet Agreed
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
class="bg-red-100 p-4 border border-red-200 rounded-md"
|
||||||
|
>
|
||||||
|
Waiting for agreement to the {$events_loc.pres_mgmt?.label__session_poc_name} Consent and Release and Terms and Conditions before you can move on. Please review and mark as agreed below.
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{/if}
|
||||||
|
|
||||||
|
<div class="bg-gray-100 p-4 border border-gray-200 rounded-md space-y-4">
|
||||||
|
<Element_data_store
|
||||||
|
ds_code="event_session_poc_agree_text"
|
||||||
|
ds_type="html"
|
||||||
|
class_li="p-2"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="text-center w-full">
|
||||||
|
{#if !$lq__event_session_obj?.poc_agree}
|
||||||
|
<button
|
||||||
|
disabled={!$ae_loc.administrator_access &&
|
||||||
|
!$events_loc.auth__kv.session[$lq__event_session_obj?.event_session_id_random] === true}
|
||||||
|
on:click={() => {
|
||||||
|
console.log('Agree to the terms and conditions.');
|
||||||
|
|
||||||
|
let event_session_data = {
|
||||||
|
poc_agree: true,
|
||||||
|
}
|
||||||
|
|
||||||
|
// Use this in the future if we need to store the agreements in a more complex way?
|
||||||
|
// let event_session_data = {poc_kv_json: $lq__event_session_obj?.poc_kv_json};
|
||||||
|
// console.log('event_session_data:', event_session_data);
|
||||||
|
// event_session_data.poc_kv_json[poc_type]['agree'] = true;
|
||||||
|
|
||||||
|
ae_promises.update__event_session_obj = events_func.update_ae_obj__event_session({
|
||||||
|
api_cfg: $ae_api,
|
||||||
|
event_session_id: $lq__event_session_obj?.event_session_id_random,
|
||||||
|
data_kv: event_session_data,
|
||||||
|
log_lvl: log_lvl,
|
||||||
|
})
|
||||||
|
.then(function (update_result) {
|
||||||
|
// console.log(update_result);
|
||||||
|
// return update_result;
|
||||||
|
});
|
||||||
|
|
||||||
|
}}
|
||||||
|
class="btn btn-lg variant-ghost-warning hover:variant-filled-success m-2"
|
||||||
|
>
|
||||||
|
<span class="fa fa-check m-1 text-green-500"></span>
|
||||||
|
Mark as agreed?
|
||||||
|
</button>
|
||||||
|
{:else}
|
||||||
|
<button
|
||||||
|
on:click={() => {
|
||||||
|
console.log('Change to not agreed.');
|
||||||
|
|
||||||
|
let event_session_data = {
|
||||||
|
poc_agree: false,
|
||||||
|
}
|
||||||
|
|
||||||
|
// Use this in the future if we need to store the agreements in a more complex way?
|
||||||
|
// let event_session_data = {poc_kv_json: $lq__event_session_obj?.poc_kv_json};
|
||||||
|
// console.log('event_session_data:', event_session_data);
|
||||||
|
// event_session_data.poc_kv_json[poc_type]['agree'] = false;
|
||||||
|
|
||||||
|
ae_promises.update__event_session_obj = events_func.update_ae_obj__event_session({
|
||||||
|
api_cfg: $ae_api,
|
||||||
|
event_session_id: $lq__event_session_obj?.event_session_id_random,
|
||||||
|
data_kv: event_session_data,
|
||||||
|
log_lvl: log_lvl,
|
||||||
|
})
|
||||||
|
.then(function (update_result) {
|
||||||
|
// console.log(update_result);
|
||||||
|
// return update_result;
|
||||||
|
});
|
||||||
|
|
||||||
|
}}
|
||||||
|
class="btn btn-lg variant-ghost-success hover:variant-filled-warning m-2"
|
||||||
|
>
|
||||||
|
<span class="fas fa-times text-red-500 m-1"></span>
|
||||||
|
Change to not agreed?
|
||||||
|
</button>
|
||||||
|
{/if}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{:else}
|
||||||
|
Not ready
|
||||||
|
{/if}
|
||||||
@@ -22,7 +22,6 @@ import { ae_snip, ae_loc, ae_sess, ae_api, ae_trig, slct, slct_trigger } from '$
|
|||||||
import { events_loc, events_sess, events_slct, events_trigger, events_trig_kv } from '$lib/ae_events_stores';
|
import { events_loc, events_sess, events_slct, events_trigger, events_trig_kv } from '$lib/ae_events_stores';
|
||||||
import { events_func } from '$lib/ae_events_functions';
|
import { events_func } from '$lib/ae_events_functions';
|
||||||
|
|
||||||
import Form_agree from './form_agree.svelte';
|
|
||||||
// import Comp_event_session_obj_li from './ae_comp__event_session_obj_li.svelte';
|
// import Comp_event_session_obj_li from './ae_comp__event_session_obj_li.svelte';
|
||||||
|
|
||||||
|
|
||||||
@@ -469,58 +468,6 @@ $: if ($lq__event_location_obj) {
|
|||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
{#if $events_sess.pres_mgmt?.show_content__agree_text}
|
|
||||||
<div class="ae_quick_modal_container">
|
|
||||||
<section class="ae_quick_popover">
|
|
||||||
|
|
||||||
<div class="flex flex-col items-center">
|
|
||||||
|
|
||||||
|
|
||||||
<!-- <div class="h-4 p-10"> -->
|
|
||||||
|
|
||||||
<!-- </div> -->
|
|
||||||
|
|
||||||
<section class="ae_modal_scrollfix">
|
|
||||||
<button
|
|
||||||
on:click={
|
|
||||||
() => {
|
|
||||||
$events_sess.pres_mgmt.show_content__agree_text = null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
class="btn btn-md variant-soft-secondary hover:variant-filled-secondary float-right"
|
|
||||||
>
|
|
||||||
<span class="fas fa-times mx-1"></span>
|
|
||||||
Close
|
|
||||||
</button>
|
|
||||||
|
|
||||||
<Form_agree
|
|
||||||
lq__event_presentation_obj={lq__event_presentation_obj}
|
|
||||||
lq__event_session_obj={lq__event_session_obj}
|
|
||||||
/>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- <div class="h-12"> -->
|
|
||||||
<button
|
|
||||||
on:click={
|
|
||||||
() => {
|
|
||||||
$events_sess.pres_mgmt.show_content__agree_text = null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
class="btn btn-md variant-soft-secondary hover:variant-filled-secondary"
|
|
||||||
>
|
|
||||||
<span class="fas fa-times mx-1"></span>
|
|
||||||
Close
|
|
||||||
</button>
|
|
||||||
<!-- </div> -->
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
{/if}
|
|
||||||
|
|
||||||
|
|
||||||
<style lang="postcss">
|
<style lang="postcss">
|
||||||
/* Use the div.ae_quick_modal_container to block background clicks when using the section.ae_quick_popover. */
|
/* Use the div.ae_quick_modal_container to block background clicks when using the section.ae_quick_popover. */
|
||||||
div.ae_quick_modal_container {
|
div.ae_quick_modal_container {
|
||||||
|
|||||||
@@ -1,18 +1,20 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
/** @type {import('./$types').PageData} */
|
/** @type {import('./$types').PageData} */
|
||||||
export let data: any;
|
export let data: any;
|
||||||
|
export let log_lvl = 1;
|
||||||
|
|
||||||
// Imports
|
// Imports (external and then internal)
|
||||||
import { browser } from '$app/environment';
|
import { browser } from '$app/environment';
|
||||||
|
|
||||||
import type { key_val } from '$lib/ae_stores';
|
import type { key_val } from '$lib/ae_stores';
|
||||||
import { ae_util } from '$lib/ae_utils';
|
import { ae_util } from '$lib/ae_utils';
|
||||||
import { api } from '$lib/api';
|
// import { api } from '$lib/api';
|
||||||
import Element_ae_crud from '$lib/element_ae_crud.svelte';
|
// import Element_ae_crud from '$lib/element_ae_crud.svelte';
|
||||||
import Element_data_store from '$lib/element_data_store.svelte';
|
import Element_data_store from '$lib/element_data_store.svelte';
|
||||||
|
|
||||||
import { liveQuery } from "dexie";
|
import { liveQuery } from "dexie";
|
||||||
import { core_func } from '$lib/ae_core_functions';
|
import { Modal } from 'flowbite-svelte';
|
||||||
|
// import { core_func } from '$lib/ae_core_functions';
|
||||||
import { db_events } from "$lib/db_events";
|
import { db_events } from "$lib/db_events";
|
||||||
import { ae_snip, ae_loc, ae_sess, ae_api, ae_trig, slct, slct_trigger } from '$lib/ae_stores';
|
import { ae_snip, ae_loc, ae_sess, ae_api, ae_trig, slct, slct_trigger } from '$lib/ae_stores';
|
||||||
import { events_loc, events_sess, events_slct, events_trigger } from '$lib/ae_events_stores';
|
import { events_loc, events_sess, events_slct, events_trigger } from '$lib/ae_events_stores';
|
||||||
@@ -20,7 +22,7 @@ import { events_func } from '$lib/ae_events_functions';
|
|||||||
|
|
||||||
import Comp_event_files_upload from './../../ae_comp__event_files_upload.svelte';
|
import Comp_event_files_upload from './../../ae_comp__event_files_upload.svelte';
|
||||||
import Element_manage_event_file_li_wrap from '$lib/element_manage_event_file_li_direct.svelte';
|
import Element_manage_event_file_li_wrap from '$lib/element_manage_event_file_li_direct.svelte';
|
||||||
import Form_agree from './../../form_agree.svelte';
|
import Comp_event_presenter_form_agree from '../../ae_comp__event_presenter_form_agree.svelte';
|
||||||
import Presenter_view from './../../presenter_view.svelte';
|
import Presenter_view from './../../presenter_view.svelte';
|
||||||
import Presenter_page_menu from './../../presenter_page_menu.svelte';
|
import Presenter_page_menu from './../../presenter_page_menu.svelte';
|
||||||
|
|
||||||
@@ -40,7 +42,7 @@ $events_slct.event_presenter_id = ae_acct.slct.event_presenter_id;
|
|||||||
// $events_slct.event_presenter_obj = ae_acct.slct.event_presenter_obj;
|
// $events_slct.event_presenter_obj = ae_acct.slct.event_presenter_obj;
|
||||||
$events_slct.event_file_obj_li = ae_acct.slct.event_file_obj_li;
|
$events_slct.event_file_obj_li = ae_acct.slct.event_file_obj_li;
|
||||||
|
|
||||||
$events_sess.pres_mgmt.show_content__agree_text = false;
|
$events_sess.pres_mgmt.show_modal__presenter_agree = false;
|
||||||
$events_sess.pres_mgmt.show_content__presenter_start = false;
|
$events_sess.pres_mgmt.show_content__presenter_start = false;
|
||||||
|
|
||||||
let lq__event_obj = liveQuery(
|
let lq__event_obj = liveQuery(
|
||||||
@@ -140,6 +142,7 @@ if (!$ae_loc.authenticated_access && $events_loc.pres_mgmt.show_content__present
|
|||||||
<!-- Yes... This is a duplicate of what is shown when they press "Presenter Files" button. It can be cleaned up later. -->
|
<!-- Yes... This is a duplicate of what is shown when they press "Presenter Files" button. It can be cleaned up later. -->
|
||||||
{#if $ae_loc.trusted_access || $events_loc.auth__kv.presenter[$lq__event_presenter_obj?.event_presenter_id_random]}
|
{#if $ae_loc.trusted_access || $events_loc.auth__kv.presenter[$lq__event_presenter_obj?.event_presenter_id_random]}
|
||||||
<Comp_event_files_upload
|
<Comp_event_files_upload
|
||||||
|
class_li="border border-gray-300 rounded-md p-2 bg-gray-100 hover:bg-gray-200"
|
||||||
link_to_type="event_presenter"
|
link_to_type="event_presenter"
|
||||||
link_to_id={$lq__event_presenter_obj?.event_presenter_id}
|
link_to_id={$lq__event_presenter_obj?.event_presenter_id}
|
||||||
/>
|
/>
|
||||||
@@ -165,6 +168,7 @@ if (!$ae_loc.authenticated_access && $events_loc.pres_mgmt.show_content__present
|
|||||||
|
|
||||||
{#if $ae_loc.public_access || $events_loc.auth__kv.presenter[$lq__event_presenter_obj?.event_presenter_id_random]}
|
{#if $ae_loc.public_access || $events_loc.auth__kv.presenter[$lq__event_presenter_obj?.event_presenter_id_random]}
|
||||||
<Comp_event_files_upload
|
<Comp_event_files_upload
|
||||||
|
class_li="border border-gray-300 rounded-md p-2 bg-gray-100 hover:bg-gray-200"
|
||||||
link_to_type="event_presenter"
|
link_to_type="event_presenter"
|
||||||
link_to_id={$lq__event_presenter_obj.event_presenter_id}
|
link_to_id={$lq__event_presenter_obj.event_presenter_id}
|
||||||
/>
|
/>
|
||||||
@@ -219,55 +223,39 @@ if (!$ae_loc.authenticated_access && $events_loc.pres_mgmt.show_content__present
|
|||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
|
||||||
{#if $events_sess.pres_mgmt?.show_content__agree_text}
|
|
||||||
<div class="ae_quick_modal_container">
|
|
||||||
<section class="ae_quick_popover">
|
|
||||||
|
|
||||||
<div class="flex flex-col items-center">
|
<!-- Main modal -->
|
||||||
|
<Modal
|
||||||
|
title="Presenter's Profile"
|
||||||
|
bind:open={$events_sess.pres_mgmt.show_modal__presenter_agree}
|
||||||
|
autoclose={false}
|
||||||
|
class="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"
|
||||||
|
>
|
||||||
|
|
||||||
|
<Comp_event_presenter_form_agree
|
||||||
|
lq__event_presenter_obj={lq__event_presenter_obj}
|
||||||
|
lq__event_presentation_obj={$lq__event_presentation_obj}
|
||||||
|
/>
|
||||||
|
|
||||||
<!-- <div class="h-4 p-10"> -->
|
<svelte:fragment slot="footer">
|
||||||
|
<div class="text-center w-full">
|
||||||
|
|
||||||
<!-- </div> -->
|
|
||||||
|
|
||||||
<section class="ae_modal_scrollfix">
|
|
||||||
<button
|
<button
|
||||||
on:click={
|
on:click={() => {
|
||||||
() => {
|
$events_sess.pres_mgmt.show_modal__presenter_agree = false;
|
||||||
$events_sess.pres_mgmt.show_content__agree_text = null;
|
}}
|
||||||
}
|
class="btn btn-sm variant-soft-warning hover:variant-ghost-warning"
|
||||||
}
|
|
||||||
class="btn btn-md variant-soft-secondary hover:variant-filled-secondary float-right"
|
|
||||||
>
|
>
|
||||||
<span class="fas fa-times mx-1"></span>
|
<span class="fas fa-times m-1"></span>
|
||||||
Close
|
Close
|
||||||
</button>
|
</button>
|
||||||
|
</div>
|
||||||
|
</svelte:fragment>
|
||||||
|
|
||||||
<Form_agree
|
</Modal>
|
||||||
lq__event_presenter_obj={lq__event_presenter_obj}
|
|
||||||
lq__event_presentation_obj={$lq__event_presentation_obj}
|
|
||||||
/>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- <div class="h-12"> -->
|
|
||||||
<button
|
|
||||||
on:click={
|
|
||||||
() => {
|
|
||||||
$events_sess.pres_mgmt.show_content__agree_text = null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
class="btn btn-md variant-soft-secondary hover:variant-filled-secondary"
|
|
||||||
>
|
|
||||||
<span class="fas fa-times mx-1"></span>
|
|
||||||
Close
|
|
||||||
</button>
|
|
||||||
<!-- </div> -->
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
{/if}
|
|
||||||
|
|
||||||
|
|
||||||
<style lang="postcss">
|
<style lang="postcss">
|
||||||
|
|||||||
@@ -153,7 +153,7 @@ let ae_triggers: key_val = {};
|
|||||||
$events_slct.event_presenter_id = $lq__event_presenter_obj?.event_presenter_id_random;
|
$events_slct.event_presenter_id = $lq__event_presenter_obj?.event_presenter_id_random;
|
||||||
// $lq__event_presenter_obj = $lq__event_presenter_obj;
|
// $lq__event_presenter_obj = $lq__event_presenter_obj;
|
||||||
|
|
||||||
$events_sess.pres_mgmt.show_content__agree_text = $lq__event_presenter_obj?.event_presenter_id_random;
|
$events_sess.pres_mgmt.show_modal__presenter_agree = $lq__event_presenter_obj?.event_presenter_id_random;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
class="{ae_snip.classes__events_pres_mgmt_menu__button} hover:variant-filled-success"
|
class="{ae_snip.classes__events_pres_mgmt_menu__button} hover:variant-filled-success"
|
||||||
@@ -174,7 +174,7 @@ let ae_triggers: key_val = {};
|
|||||||
$events_slct.event_presenter_id = $lq__event_presenter_obj?.event_presenter_id_random;
|
$events_slct.event_presenter_id = $lq__event_presenter_obj?.event_presenter_id_random;
|
||||||
// $lq__event_presenter_obj = $lq__event_presenter_obj;
|
// $lq__event_presenter_obj = $lq__event_presenter_obj;
|
||||||
|
|
||||||
$events_sess.pres_mgmt.show_content__agree_text = $lq__event_presenter_obj?.event_presenter_id_random;
|
$events_sess.pres_mgmt.show_modal__presenter_agree = $lq__event_presenter_obj?.event_presenter_id_random;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
class="{ae_snip.classes__events_pres_mgmt_menu__button_warning_special} hover:variant-filled-warning"
|
class="{ae_snip.classes__events_pres_mgmt_menu__button_warning_special} hover:variant-filled-warning"
|
||||||
|
|||||||
@@ -188,6 +188,7 @@ onMount(() => {
|
|||||||
</h3>
|
</h3>
|
||||||
|
|
||||||
<Comp_event_files_upload
|
<Comp_event_files_upload
|
||||||
|
class_li="border border-gray-300 rounded-md p-2 bg-gray-100 hover:bg-gray-200"
|
||||||
link_to_type="event_session"
|
link_to_type="event_session"
|
||||||
link_to_id={$lq__event_session_obj.event_session_id}
|
link_to_id={$lq__event_session_obj.event_session_id}
|
||||||
/>
|
/>
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
console.log(`ae_events_pres_mgmt session_view.svelte`);
|
console.log(`ae_events_pres_mgmt session_view.svelte`);
|
||||||
export let log_lvl = 1;
|
export let log_lvl = 1;
|
||||||
|
|
||||||
|
// Imports (external and then internal)
|
||||||
import { clipboard } from '@skeletonlabs/skeleton';
|
import { clipboard } from '@skeletonlabs/skeleton';
|
||||||
import { liveQuery } from "dexie";
|
import { liveQuery } from "dexie";
|
||||||
import { Modal } from 'flowbite-svelte';
|
import { Modal } from 'flowbite-svelte';
|
||||||
@@ -23,9 +24,10 @@ import { ae_snip, ae_loc, ae_sess, ae_api, ae_trig, slct, slct_trigger } from '$
|
|||||||
import { events_loc, events_sess, events_slct, events_trigger, events_trig_kv } from '$lib/ae_events_stores';
|
import { events_loc, events_sess, events_slct, events_trigger, events_trig_kv } from '$lib/ae_events_stores';
|
||||||
import { events_func } from '$lib/ae_events_functions';
|
import { events_func } from '$lib/ae_events_functions';
|
||||||
|
|
||||||
import Form_agree from './form_agree.svelte';
|
import Comp_event_presenter_form_agree from './ae_comp__event_presenter_form_agree.svelte';
|
||||||
import Comp_event_presentation_obj_li from './ae_comp__event_presentation_obj_li.svelte';
|
import Comp_event_presentation_obj_li from './ae_comp__event_presentation_obj_li.svelte';
|
||||||
import Comp_event_session_poc_profile from './ae_comp__event_session_poc_profile.svelte';
|
import Comp_event_session_poc_profile from './ae_comp__event_session_poc_profile.svelte';
|
||||||
|
import Comp_event_session_poc_form_agree from './ae_comp__event_session_poc_form_agree.svelte';
|
||||||
|
|
||||||
|
|
||||||
// Exports
|
// Exports
|
||||||
@@ -36,11 +38,11 @@ export let event_session_id: string;
|
|||||||
|
|
||||||
if (!$events_sess.pres_mgmt) {
|
if (!$events_sess.pres_mgmt) {
|
||||||
$events_sess.pres_mgmt = {};
|
$events_sess.pres_mgmt = {};
|
||||||
$events_sess.pres_mgmt.show_content__agree_text = null;
|
$events_sess.pres_mgmt.show_modal__presenter_agree = null;
|
||||||
$events_sess.pres_mgmt.show_content__presenter_start = null;
|
$events_sess.pres_mgmt.show_content__presenter_start = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
$events_sess.pres_mgmt.show_content__agree_text = false;
|
$events_sess.pres_mgmt.show_modal__presenter_agree = false;
|
||||||
$events_sess.pres_mgmt.show_content__presenter_start = false;
|
$events_sess.pres_mgmt.show_content__presenter_start = false;
|
||||||
|
|
||||||
let poc_type = $events_loc.pres_mgmt.label__session_poc_type;
|
let poc_type = $events_loc.pres_mgmt.label__session_poc_type;
|
||||||
@@ -64,6 +66,9 @@ export let lq__event_presentation_obj_li: any;
|
|||||||
// .sortBy('name')
|
// .sortBy('name')
|
||||||
// );
|
// );
|
||||||
|
|
||||||
|
|
||||||
|
// Local Variables
|
||||||
|
|
||||||
let lq__event_presentation_obj = liveQuery(
|
let lq__event_presentation_obj = liveQuery(
|
||||||
() => db_events.presentations.get($events_slct.event_presentation_id)
|
() => db_events.presentations.get($events_slct.event_presentation_id)
|
||||||
);
|
);
|
||||||
@@ -79,7 +84,7 @@ let lq__event_presenter_obj = liveQuery(
|
|||||||
$slct.person_obj_kv = {}; // This is intended for the person POC lookup list when generated.
|
$slct.person_obj_kv = {}; // This is intended for the person POC lookup list when generated.
|
||||||
|
|
||||||
|
|
||||||
|
// Functions and Logic
|
||||||
$events_sess.pres_mgmt.session__updated_on = null;
|
$events_sess.pres_mgmt.session__updated_on = null;
|
||||||
$: if ($lq__event_session_obj) {
|
$: if ($lq__event_session_obj) {
|
||||||
if (log_lvl > 1) {
|
if (log_lvl > 1) {
|
||||||
@@ -441,7 +446,7 @@ $: if ($lq__event_session_obj) {
|
|||||||
<!-- Modal toggle -->
|
<!-- Modal toggle -->
|
||||||
<button
|
<button
|
||||||
class="btn btn-sm variant-soft-primary hover:variant-filled-primary"
|
class="btn btn-sm variant-soft-primary hover:variant-filled-primary"
|
||||||
on:click={() => ($events_loc.pres_mgmt.show__session_poc_profile = true)}>
|
on:click={() => ($events_sess.pres_mgmt.show__session_poc_profile = true)}>
|
||||||
<span class="fas fa-id-card m-1"></span>
|
<span class="fas fa-id-card m-1"></span>
|
||||||
{$events_loc.pres_mgmt?.label__session_poc_name}'s
|
{$events_loc.pres_mgmt?.label__session_poc_name}'s
|
||||||
Profile
|
Profile
|
||||||
@@ -450,32 +455,32 @@ $: if ($lq__event_session_obj) {
|
|||||||
<!-- Main modal -->
|
<!-- Main modal -->
|
||||||
<Modal
|
<Modal
|
||||||
title="{$events_loc.pres_mgmt?.label__session_poc_name}'s Profile"
|
title="{$events_loc.pres_mgmt?.label__session_poc_name}'s Profile"
|
||||||
bind:open={$events_loc.pres_mgmt.show__session_poc_profile}
|
bind:open={$events_sess.pres_mgmt.show__session_poc_profile}
|
||||||
autoclose={false}
|
autoclose={false}
|
||||||
class="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"
|
class="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"
|
||||||
>
|
>
|
||||||
|
|
||||||
<Comp_event_session_poc_profile
|
<Comp_event_session_poc_profile
|
||||||
class_li={$events_loc.pres_mgmt.show__session_poc_profile ? '' : ''}
|
class_li={$events_sess.pres_mgmt.show__session_poc_profile ? '' : ''}
|
||||||
person_id={$lq__event_session_obj.poc_person_id_random}
|
person_id={$lq__event_session_obj.poc_person_id_random}
|
||||||
lq__event_session_obj={lq__event_session_obj}
|
lq__event_session_obj={lq__event_session_obj}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<svelte:fragment slot="footer">
|
<svelte:fragment slot="footer">
|
||||||
<div class="text-center w-full">
|
<div class="text-center w-full">
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
on:click={() => {
|
on:click={() => {
|
||||||
console.log('Close modal session poc profile.');
|
console.log('Close modal session poc profile.');
|
||||||
$events_loc.pres_mgmt.show__session_poc_profile = !$events_loc.pres_mgmt.show__session_poc_profile;
|
$events_sess.pres_mgmt.show__session_poc_profile = !$events_sess.pres_mgmt.show__session_poc_profile;
|
||||||
}}
|
}}
|
||||||
class="btn btn-sm variant-soft-warning hover:variant-ghost-warning"
|
class="btn btn-sm variant-soft-warning hover:variant-ghost-warning"
|
||||||
>
|
>
|
||||||
<span class="fas fa-times mx-1"></span>
|
<span class="fas fa-times mx-1"></span>
|
||||||
Close
|
Close
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</svelte:fragment>
|
</svelte:fragment>
|
||||||
|
|
||||||
</Modal>
|
</Modal>
|
||||||
|
|
||||||
@@ -488,7 +493,7 @@ $: if ($lq__event_session_obj) {
|
|||||||
class="btn btn-sm hover:variant-filled-success"
|
class="btn btn-sm hover:variant-filled-success"
|
||||||
class:variant-soft-success={$lq__event_session_obj?.poc_agree}
|
class:variant-soft-success={$lq__event_session_obj?.poc_agree}
|
||||||
class:variant-ghost-warning={!$lq__event_session_obj?.poc_agree}
|
class:variant-ghost-warning={!$lq__event_session_obj?.poc_agree}
|
||||||
on:click={() => ($events_loc.pres_mgmt.show__session_poc_agree = true)}>
|
on:click={() => ($events_sess.pres_mgmt.show_modal__session_poc_agree = true)}>
|
||||||
{#if !$lq__event_session_obj?.poc_agree}
|
{#if !$lq__event_session_obj?.poc_agree}
|
||||||
<span class="fas fa-times bg-red-500 text-white px-1 mx-1" title="Not agreed to terms and conditions"></span>
|
<span class="fas fa-times bg-red-500 text-white px-1 mx-1" title="Not agreed to terms and conditions"></span>
|
||||||
Not yet agreed
|
Not yet agreed
|
||||||
@@ -501,109 +506,20 @@ $: if ($lq__event_session_obj) {
|
|||||||
<!-- Main modal -->
|
<!-- Main modal -->
|
||||||
<Modal
|
<Modal
|
||||||
title="{$events_loc.pres_mgmt?.label__session_poc_name}'s Consent and Release and Terms and Conditions"
|
title="{$events_loc.pres_mgmt?.label__session_poc_name}'s Consent and Release and Terms and Conditions"
|
||||||
bind:open={$events_loc.pres_mgmt.show__session_poc_agree}
|
bind:open={$events_sess.pres_mgmt.show_modal__session_poc_agree}
|
||||||
autoclose={false}
|
autoclose={false}
|
||||||
>
|
>
|
||||||
{#if !$lq__event_session_obj?.poc_agree}
|
|
||||||
<div
|
|
||||||
class="text-center text-red-500"
|
|
||||||
>
|
|
||||||
<div
|
|
||||||
class="text-red-500"
|
|
||||||
>
|
|
||||||
<span class="fas fa-times text-red-500 m-1"></span>
|
|
||||||
Not Yet Agreed
|
|
||||||
</div>
|
|
||||||
<div
|
|
||||||
class="bg-red-100 p-4 border border-red-200 rounded-md"
|
|
||||||
>
|
|
||||||
Waiting for agreement to the {$events_loc.pres_mgmt?.label__session_poc_name} Consent and Release and Terms and Conditions before you can move on. Please review and mark as agreed below.
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{/if}
|
|
||||||
|
|
||||||
<div class="bg-gray-100 p-4 border border-gray-200 rounded-md space-y-4">
|
<Comp_event_session_poc_form_agree
|
||||||
<Element_data_store
|
lq__event_session_obj={lq__event_session_obj}
|
||||||
ds_code="event_session_poc_agree_text"
|
/>
|
||||||
ds_type="html"
|
|
||||||
class_li="p-2"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="text-center w-full">
|
|
||||||
{#if !$lq__event_session_obj?.poc_agree}
|
|
||||||
<button
|
|
||||||
disabled={!$ae_loc.administrator_access &&
|
|
||||||
!$events_loc.auth__kv.session[$lq__event_session_obj?.event_session_id_random] === true}
|
|
||||||
on:click={() => {
|
|
||||||
console.log('Agree to the terms and conditions.');
|
|
||||||
|
|
||||||
let event_session_data = {
|
|
||||||
poc_agree: true,
|
|
||||||
}
|
|
||||||
|
|
||||||
// Use this in the future if we need to store the agreements in a more complex way?
|
|
||||||
// let event_session_data = {poc_kv_json: $lq__event_session_obj?.poc_kv_json};
|
|
||||||
// console.log('event_session_data:', event_session_data);
|
|
||||||
// event_session_data.poc_kv_json[poc_type]['agree'] = true;
|
|
||||||
|
|
||||||
ae_promises.update__event_session_obj = events_func.update_ae_obj__event_session({
|
|
||||||
api_cfg: $ae_api,
|
|
||||||
event_session_id: $lq__event_session_obj?.event_session_id_random,
|
|
||||||
data_kv: event_session_data,
|
|
||||||
log_lvl: log_lvl,
|
|
||||||
})
|
|
||||||
.then(function (update_result) {
|
|
||||||
// console.log(update_result);
|
|
||||||
// return update_result;
|
|
||||||
});
|
|
||||||
|
|
||||||
}}
|
|
||||||
class="btn btn-lg variant-ghost-warning hover:variant-filled-success m-2"
|
|
||||||
>
|
|
||||||
<span class="fa fa-check m-1 text-green-500"></span>
|
|
||||||
Mark as agreed?
|
|
||||||
</button>
|
|
||||||
{:else}
|
|
||||||
<button
|
|
||||||
on:click={() => {
|
|
||||||
console.log('Change to not agreed.');
|
|
||||||
|
|
||||||
let event_session_data = {
|
|
||||||
poc_agree: false,
|
|
||||||
}
|
|
||||||
|
|
||||||
// Use this in the future if we need to store the agreements in a more complex way?
|
|
||||||
// let event_session_data = {poc_kv_json: $lq__event_session_obj?.poc_kv_json};
|
|
||||||
// console.log('event_session_data:', event_session_data);
|
|
||||||
// event_session_data.poc_kv_json[poc_type]['agree'] = false;
|
|
||||||
|
|
||||||
ae_promises.update__event_session_obj = events_func.update_ae_obj__event_session({
|
|
||||||
api_cfg: $ae_api,
|
|
||||||
event_session_id: $lq__event_session_obj?.event_session_id_random,
|
|
||||||
data_kv: event_session_data,
|
|
||||||
log_lvl: log_lvl,
|
|
||||||
})
|
|
||||||
.then(function (update_result) {
|
|
||||||
// console.log(update_result);
|
|
||||||
// return update_result;
|
|
||||||
});
|
|
||||||
|
|
||||||
}}
|
|
||||||
class="btn btn-lg variant-ghost-success hover:variant-filled-warning m-2"
|
|
||||||
>
|
|
||||||
<span class="fas fa-times text-red-500 m-1"></span>
|
|
||||||
Change to not agreed?
|
|
||||||
</button>
|
|
||||||
{/if}
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<svelte:fragment slot="footer">
|
<svelte:fragment slot="footer">
|
||||||
<div class="text-center w-full">
|
<div class="text-center w-full">
|
||||||
|
|
||||||
<button
|
<button
|
||||||
on:click={() => {
|
on:click={() => {
|
||||||
$events_loc.pres_mgmt.show__session_poc_agree = false;
|
$events_sess.pres_mgmt.show_modal__session_poc_agree = false;
|
||||||
}}
|
}}
|
||||||
class="btn btn-sm variant-soft-warning hover:variant-ghost-warning"
|
class="btn btn-sm variant-soft-warning hover:variant-ghost-warning"
|
||||||
>
|
>
|
||||||
@@ -1026,55 +942,40 @@ $: if ($lq__event_session_obj) {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
{#if $events_sess.pres_mgmt?.show_content__agree_text}
|
|
||||||
<div class="ae_quick_modal_container">
|
|
||||||
<section class="ae_quick_popover">
|
|
||||||
|
|
||||||
<div class="flex flex-col items-center">
|
<!-- Main modal -->
|
||||||
|
<Modal
|
||||||
|
title="Presenter's Profile"
|
||||||
|
bind:open={$events_sess.pres_mgmt.show_modal__presenter_agree}
|
||||||
|
autoclose={false}
|
||||||
|
class="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"
|
||||||
|
>
|
||||||
|
|
||||||
|
<Comp_event_presenter_form_agree
|
||||||
|
lq__event_presenter_obj={lq__event_presenter_obj}
|
||||||
|
lq__event_presentation_obj={$lq__event_presentation_obj}
|
||||||
|
/>
|
||||||
|
|
||||||
<!-- <div class="h-4 p-10"> -->
|
<svelte:fragment slot="footer">
|
||||||
|
<div class="text-center w-full">
|
||||||
|
|
||||||
<!-- </div> -->
|
|
||||||
|
|
||||||
<section class="ae_modal_scrollfix">
|
|
||||||
<button
|
<button
|
||||||
on:click={
|
on:click={() => {
|
||||||
() => {
|
$events_sess.pres_mgmt.show_modal__presenter_agree = false;
|
||||||
$events_sess.pres_mgmt.show_content__agree_text = null;
|
}}
|
||||||
}
|
class="btn btn-sm variant-soft-warning hover:variant-ghost-warning"
|
||||||
}
|
|
||||||
class="btn btn-md variant-soft-secondary hover:variant-filled-secondary float-right"
|
|
||||||
>
|
>
|
||||||
<span class="fas fa-times mx-1"></span>
|
<span class="fas fa-times m-1"></span>
|
||||||
Close
|
Close
|
||||||
</button>
|
</button>
|
||||||
|
</div>
|
||||||
|
</svelte:fragment>
|
||||||
|
|
||||||
|
</Modal>
|
||||||
|
|
||||||
<Form_agree
|
|
||||||
lq__event_presenter_obj={lq__event_presenter_obj}
|
|
||||||
lq__event_presentation_obj={$lq__event_presentation_obj}
|
|
||||||
/>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- <div class="h-12"> -->
|
|
||||||
<button
|
|
||||||
on:click={
|
|
||||||
() => {
|
|
||||||
$events_sess.pres_mgmt.show_content__agree_text = null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
class="btn btn-md variant-soft-secondary hover:variant-filled-secondary"
|
|
||||||
>
|
|
||||||
<span class="fas fa-times mx-1"></span>
|
|
||||||
Close
|
|
||||||
</button>
|
|
||||||
<!-- </div> -->
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
{/if}
|
|
||||||
|
|
||||||
|
|
||||||
<style lang="postcss">
|
<style lang="postcss">
|
||||||
|
|||||||
Reference in New Issue
Block a user