I quite for the night! The presentation list shows now...
This commit is contained in:
@@ -3,6 +3,8 @@ import { api } from '$lib/api';
|
|||||||
|
|
||||||
import { db_events } from "$lib/db_events";
|
import { db_events } from "$lib/db_events";
|
||||||
|
|
||||||
|
import { handle_load_ae_obj_li__event_presentation } from "$lib/ae_events__event_presentation";
|
||||||
|
|
||||||
let ae_promises: key_val = {};
|
let ae_promises: key_val = {};
|
||||||
|
|
||||||
|
|
||||||
@@ -11,11 +13,15 @@ export async function handle_load_ae_obj_id__event_session(
|
|||||||
{
|
{
|
||||||
api_cfg,
|
api_cfg,
|
||||||
event_session_id,
|
event_session_id,
|
||||||
|
inc_file_li = false,
|
||||||
|
inc_presenter_li = false, // Actually presentations and presenters
|
||||||
try_cache = true,
|
try_cache = true,
|
||||||
log_lvl = 0
|
log_lvl = 0
|
||||||
}: {
|
}: {
|
||||||
api_cfg: any,
|
api_cfg: any,
|
||||||
event_session_id: string,
|
event_session_id: string,
|
||||||
|
inc_file_li?: boolean,
|
||||||
|
inc_presenter_li?: boolean,
|
||||||
try_cache?: boolean,
|
try_cache?: boolean,
|
||||||
log_lvl?: number
|
log_lvl?: number
|
||||||
}
|
}
|
||||||
@@ -53,6 +59,41 @@ export async function handle_load_ae_obj_id__event_session(
|
|||||||
console.log('No results returned or failed.', error);
|
console.log('No results returned or failed.', error);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
if (inc_presenter_li) {
|
||||||
|
// Load the presentations for the session
|
||||||
|
if (log_lvl) {
|
||||||
|
console.log(`Need to load the presentation list now`);
|
||||||
|
}
|
||||||
|
let load_event_presentation_obj_li = handle_load_ae_obj_li__event_presentation({
|
||||||
|
api_cfg: api_cfg,
|
||||||
|
event_session_id: event_session_id,
|
||||||
|
params: {enabled: 'all', qry__limit: 15},
|
||||||
|
try_cache: try_cache,
|
||||||
|
log_lvl: log_lvl
|
||||||
|
})
|
||||||
|
.then((event_presentation_obj_li) => {
|
||||||
|
if (log_lvl) {
|
||||||
|
console.log(`event_presentation_obj_li = `, event_presentation_obj_li);
|
||||||
|
}
|
||||||
|
if (try_cache) {
|
||||||
|
ae_promises.load__event_session_obj.event_presentation_li = event_presentation_obj_li;
|
||||||
|
// Re-save the session object with the new presentation list
|
||||||
|
handle_db_save_ae_obj_li__event_session({
|
||||||
|
obj_type: 'event_session',
|
||||||
|
obj_li: ae_promises.load__event_session_obj
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
return event_presentation_obj_li;
|
||||||
|
});
|
||||||
|
|
||||||
|
if (log_lvl) {
|
||||||
|
console.log(`event_presentation_obj_li = `, load_event_presentation_obj_li);
|
||||||
|
}
|
||||||
|
ae_promises.load__event_session_obj.event_presentation_li = load_event_presentation_obj_li;
|
||||||
|
}
|
||||||
|
|
||||||
return ae_promises.load__event_session_obj;
|
return ae_promises.load__event_session_obj;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -63,6 +104,8 @@ export async function handle_load_ae_obj_li__event_session(
|
|||||||
api_cfg,
|
api_cfg,
|
||||||
for_obj_type,
|
for_obj_type,
|
||||||
for_obj_id,
|
for_obj_id,
|
||||||
|
inc_file_li = false,
|
||||||
|
inc_presenter_li = false, // Actually presentations and presenters
|
||||||
params={},
|
params={},
|
||||||
try_cache=true,
|
try_cache=true,
|
||||||
log_lvl=0
|
log_lvl=0
|
||||||
@@ -70,6 +113,8 @@ export async function handle_load_ae_obj_li__event_session(
|
|||||||
api_cfg: any,
|
api_cfg: any,
|
||||||
for_obj_type: string,
|
for_obj_type: string,
|
||||||
for_obj_id: string,
|
for_obj_id: string,
|
||||||
|
inc_file_li?: boolean,
|
||||||
|
inc_presenter_li?: boolean,
|
||||||
params?: key_val,
|
params?: key_val,
|
||||||
try_cache?: boolean,
|
try_cache?: boolean,
|
||||||
log_lvl?: number
|
log_lvl?: number
|
||||||
@@ -122,6 +167,40 @@ export async function handle_load_ae_obj_li__event_session(
|
|||||||
if (log_lvl) {
|
if (log_lvl) {
|
||||||
console.log('ae_promises.load__event_session_obj_li:', ae_promises.load__event_session_obj_li);
|
console.log('ae_promises.load__event_session_obj_li:', ae_promises.load__event_session_obj_li);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (inc_presenter_li) {
|
||||||
|
// Load the presentations for the sessions
|
||||||
|
for (let i = 0; i < ae_promises.load__event_session_obj_li.length; i++) {
|
||||||
|
let event_session_obj = ae_promises.load__event_session_obj_li[i];
|
||||||
|
let event_session_id = event_session_obj.event_session_id_random;
|
||||||
|
|
||||||
|
let load_event_presentation_obj_li = handle_load_ae_obj_li__event_presentation({
|
||||||
|
api_cfg: api_cfg,
|
||||||
|
event_session_id: event_session_id,
|
||||||
|
params: {enabled: 'all', qry__limit: 15},
|
||||||
|
try_cache: try_cache,
|
||||||
|
log_lvl: log_lvl
|
||||||
|
})
|
||||||
|
.then((event_presentation_obj_li) => {
|
||||||
|
if (try_cache) {
|
||||||
|
event_session_obj.event_presentation_li = event_presentation_obj_li;
|
||||||
|
// Re-save the session object with the new presentation list
|
||||||
|
handle_db_save_ae_obj_li__event_session({
|
||||||
|
obj_type: 'event_session',
|
||||||
|
obj_li: event_session_obj
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
if (log_lvl) {
|
||||||
|
console.log(`load_event_presentation_obj_li = `, load_event_presentation_obj_li);
|
||||||
|
}
|
||||||
|
// event_session_obj.event_presentation_li = load_event_presentation_obj_li;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
return ae_promises.load__event_session_obj_li;
|
return ae_promises.load__event_session_obj_li;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -328,6 +407,7 @@ export function handle_db_save_ae_obj_li__event_session(
|
|||||||
|
|
||||||
// A key value list of the presentations
|
// A key value list of the presentations
|
||||||
event_presentation_kv: obj.event_presentation_kv,
|
event_presentation_kv: obj.event_presentation_kv,
|
||||||
|
event_presentation_li: obj.event_presentation_li,
|
||||||
});
|
});
|
||||||
// console.log(`Put obj with ID: ${obj.event_session_id_random} or ${id_random}`);
|
// console.log(`Put obj with ID: ${obj.event_session_id_random} or ${id_random}`);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
|||||||
@@ -370,8 +370,10 @@ export interface Session {
|
|||||||
|
|
||||||
// A key value list of the presentations
|
// A key value list of the presentations
|
||||||
event_presentation_kv?: null|key_val;
|
event_presentation_kv?: null|key_val;
|
||||||
|
event_presentation_li?: null|list;
|
||||||
// A key value list of the files
|
// A key value list of the files
|
||||||
event_file_kv?: null|key_val;
|
event_file_kv?: null|key_val;
|
||||||
|
event_file_li?: null|list;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -427,6 +429,7 @@ export interface Presentation {
|
|||||||
|
|
||||||
// A key value list of the presenters
|
// A key value list of the presenters
|
||||||
event_presenter_kv?: null|key_val;
|
event_presenter_kv?: null|key_val;
|
||||||
|
event_presenter_li?: null|list;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -59,6 +59,7 @@ let lq__event_presentation_obj_li = liveQuery(
|
|||||||
.sortBy('name')
|
.sortBy('name')
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// FIX! This id list needs to be updated. It is currently commented out in the menu_session_list.svelte file.
|
||||||
let lq_get__event_presentation_obj_li = liveQuery(
|
let lq_get__event_presentation_obj_li = liveQuery(
|
||||||
() => db_events.presentations
|
() => db_events.presentations
|
||||||
.bulkGet($events_slct.id_li__event_presentation)
|
.bulkGet($events_slct.id_li__event_presentation)
|
||||||
@@ -134,12 +135,14 @@ let link_to_id: null|string = null;
|
|||||||
<div><strong>Presentations:</strong></div>
|
<div><strong>Presentations:</strong></div>
|
||||||
|
|
||||||
|
|
||||||
{$lq_get__event_presentation_obj_li?.length}
|
{$lq__event_presentation_obj_li?.length}
|
||||||
|
|
||||||
{#if $lq_get__event_presentation_obj_li}
|
{$lq__event_session_obj?.event_presentation_li?.length ?? 'loading...?'}
|
||||||
|
|
||||||
|
{#if $lq__event_presentation_obj_li}
|
||||||
Presentations:
|
Presentations:
|
||||||
<ul class="event_presentation_list">
|
<ul class="event_presentation_list">
|
||||||
{#each $lq_get__event_presentation_obj_li as event_presentation_obj}
|
{#each $lq__event_presentation_obj_li as event_presentation_obj}
|
||||||
<li>
|
<li>
|
||||||
<div class="event_presentation_datetime_name">
|
<div class="event_presentation_datetime_name">
|
||||||
{#if event_presentation_obj?.start_datetime}
|
{#if event_presentation_obj?.start_datetime}
|
||||||
@@ -149,6 +152,7 @@ let link_to_id: null|string = null;
|
|||||||
<span class="event_presentation_name">{event_presentation_obj?.name}</span>
|
<span class="event_presentation_name">{event_presentation_obj?.name}</span>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- {#if 1==3 && event_presentation_obj?.event_presenter_list.length}
|
<!-- {#if 1==3 && event_presentation_obj?.event_presenter_list.length}
|
||||||
<ul>
|
<ul>
|
||||||
{#each event_presentation_obj?.event_presenter_list as event_presenter_obj, index}
|
{#each event_presentation_obj?.event_presenter_list as event_presenter_obj, index}
|
||||||
|
|||||||
@@ -60,7 +60,9 @@ let ae_promises: key_val = {
|
|||||||
ae_promises.slct_event_session_id = await events_func.handle_load_ae_obj_id__event_session({
|
ae_promises.slct_event_session_id = await events_func.handle_load_ae_obj_id__event_session({
|
||||||
api_cfg: $ae_api,
|
api_cfg: $ae_api,
|
||||||
event_session_id: event_session_obj?.id,
|
event_session_id: event_session_obj?.id,
|
||||||
try_cache: true
|
inc_presenter_li: true,
|
||||||
|
try_cache: true,
|
||||||
|
log_lvl: 1
|
||||||
})
|
})
|
||||||
.then(async (load_results) => {
|
.then(async (load_results) => {
|
||||||
console.log(`load_results = `, load_results);
|
console.log(`load_results = `, load_results);
|
||||||
@@ -70,41 +72,42 @@ let ae_promises: key_val = {
|
|||||||
goto(new_url, {replaceState: false});
|
goto(new_url, {replaceState: false});
|
||||||
});
|
});
|
||||||
|
|
||||||
ae_promises.slct_event_presentation_li = await events_func.handle_load_ae_obj_li__event_presentation({
|
// ae_promises.slct_event_presentation_li = await events_func.handle_load_ae_obj_li__event_presentation({
|
||||||
api_cfg: $ae_api,
|
// api_cfg: $ae_api,
|
||||||
event_session_id: event_session_obj?.id,
|
// event_session_id: event_session_obj?.id,
|
||||||
try_cache: true,
|
// try_cache: true,
|
||||||
log_lvl: 1
|
// log_lvl: 1
|
||||||
})
|
// })
|
||||||
.then(async (load_results) => {
|
// .then(async (load_results) => {
|
||||||
console.log(`load_results = `, load_results);
|
// console.log(`load_results = `, load_results);
|
||||||
|
|
||||||
let event_presentation_id_li = [];
|
// let event_presentation_id_li = [];
|
||||||
|
|
||||||
let tmp_li = []; // This is to prevent the array from constantly updating and triggering the liveQuery.
|
// let tmp_li = []; // This is to prevent the array from constantly updating and triggering the liveQuery.
|
||||||
|
|
||||||
for (let i = 0; i < load_results.length; i++) {
|
// for (let i = 0; i < load_results.length; i++) {
|
||||||
let event_presentation_obj = load_results[i];
|
// let event_presentation_obj = load_results[i];
|
||||||
let event_presentation_id_random = event_presentation_obj.event_presentation_id_random;
|
// let event_presentation_id_random = event_presentation_obj.event_presentation_id_random;
|
||||||
tmp_li.push(event_presentation_id_random);
|
// tmp_li.push(event_presentation_id_random);
|
||||||
}
|
// }
|
||||||
event_presentation_id_li = tmp_li;
|
// event_presentation_id_li = tmp_li;
|
||||||
console.log(`event_presentation_id_li:`, event_presentation_id_li);
|
// console.log(`event_presentation_id_li:`, event_presentation_id_li);
|
||||||
$events_slct.id_li__event_presentation = event_presentation_id_li;
|
// $events_slct.id_li__event_presentation = event_presentation_id_li;
|
||||||
|
|
||||||
data_url.searchParams.set('presentation_li', event_presentation_id_li);
|
// data_url.searchParams.set('presentation_li', event_presentation_id_li);
|
||||||
|
|
||||||
// let new_url = data_url.toString();
|
// // let new_url = data_url.toString();
|
||||||
// console.log(new_url);
|
// // console.log(new_url);
|
||||||
// goto(new_url, {replaceState: false});
|
// // goto(new_url, {replaceState: false});
|
||||||
|
|
||||||
// return load_results;
|
// // return load_results;
|
||||||
|
|
||||||
|
// });
|
||||||
|
|
||||||
});
|
|
||||||
// await tick();
|
// await tick();
|
||||||
let new_url = data_url.toString();
|
// let new_url = data_url.toString();
|
||||||
console.log(new_url);
|
// console.log(new_url);
|
||||||
goto(new_url, {replaceState: false});
|
// goto(new_url, {replaceState: false});
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
{event_session_obj?.name}
|
{event_session_obj?.name}
|
||||||
|
|||||||
Reference in New Issue
Block a user