Finally getting the event session list to use the LiveQuery with a list of IDs to work correctly. Now replacing old version. Well... maybe some more testing tomorrow.

This commit is contained in:
Scott Idem
2025-05-22 18:19:20 -04:00
parent a75f40bf8d
commit 14f4adeafa
3 changed files with 37 additions and 29 deletions

View File

@@ -649,7 +649,12 @@ export async function search__event_session(
like_presenter_search_qry_str = null,
file_count = false, // If true then only show those that have a file count
location_name = null,
params = {},
params = {
'qry__enabled': 'enabled',
'qry__hidden':'not_hidden',
'qry__limit': 150,
'qry__offset': 0
},
try_cache = true,
log_lvl = 0
}: {
@@ -668,7 +673,9 @@ export async function search__event_session(
log_lvl?: number
}
) {
console.log(`*** search__event_session() *** event_id=${event_id}`);
if (log_lvl) {
console.log(`*** search__event_session() *** event_id=${event_id}`);
}
let enabled: string = (params.qry__enabled ?? 'enabled'); // all, disabled, enabled
let hidden: string = (params.qry__hidden ?? 'not_hidden'); // all, hidden, not_hidden

View File

@@ -77,29 +77,29 @@ let event_session_id_random_li: Array<string> = $state([]);
// OMG THIS WORKS!!! 2024-09-17
// Using the $: seems to have fixed it along with the async await?
let lq__event_session_obj_li = $derived(liveQuery(async () => {
// console.log(`*** LiveQuery: lq__event_session_obj_li *** event_session_id_random_li`, $state.snapshot(event_session_id_random_li));
// if (!event_session_id_random_li) {
// // return [];
// return;
// }
if (event_session_id_random_li.length) {
console.log(`*** LiveQuery: lq__event_session_obj_li *** time to bulkGet`, $state.snapshot(event_session_id_random_li));
let results = await db_events.sessions
.bulkGet(event_session_id_random_li);
// let lq__event_session_obj_li = $derived(liveQuery(async () => {
// // console.log(`*** LiveQuery: lq__event_session_obj_li *** event_session_id_random_li`, $state.snapshot(event_session_id_random_li));
// // if (!event_session_id_random_li) {
// // // return [];
// // return;
// // }
// if (event_session_id_random_li.length) {
// console.log(`*** LiveQuery: lq__event_session_obj_li *** time to bulkGet`, $state.snapshot(event_session_id_random_li));
// let results = await db_events.sessions
// .bulkGet(event_session_id_random_li);
return results;
} else {
let results = await db_events.sessions
.where('event_id')
.equals($events_slct?.event_id ?? '') // null or undefined does not reset things like '' does
.reverse()
.sortBy('name');
// return results;
// } else {
// let results = await db_events.sessions
// .where('event_id')
// .equals($events_slct?.event_id ?? '') // null or undefined does not reset things like '' does
// .reverse()
// .sortBy('name');
return results;
}
// return results;
// }
}));
// }));
let lq__event_location_obj_li = $derived(liveQuery(async () => {
@@ -244,8 +244,8 @@ function process_search_string(search_str: string) {
// like_presentation_search_qry_str: lk_search_str_new,
// like_presenter_search_qry_str: lk_search_str_new,
// params: params,
try_cache: false,
log_lvl: 0,
try_cache: true,
log_lvl: log_lvl,
});
}
@@ -262,8 +262,8 @@ async function handle_search__event_session(
'qry__hidden': $events_loc.pres_mgmt.qry_hidden ?? 'not_hidden',
'qry__limit': $events_loc.pres_mgmt.qry_limit__sessions ?? 35,
},
try_cache=false,
log_lvl=1,
try_cache = true,
log_lvl = 0,
}: {
ft_search_str?: string,
lk_search_str?: string,
@@ -289,7 +289,7 @@ async function handle_search__event_session(
search_delay += 50+random_delay;
}
log_lvl = 2;
// log_lvl = 1;
let count = 0;
let request_loop = setInterval(() => {
@@ -327,7 +327,7 @@ async function handle_search__event_session(
location_name: and_lk_location_name,
params: params,
try_cache: try_cache,
log_lvl: 0,
log_lvl: log_lvl,
})
.then(function (search_results) {
// Processing the results from the search.

View File

@@ -1,5 +1,6 @@
<script lang="ts">
// *** Import Svelte specific
import type { key_val } from '$lib/ae_stores';
import { ae_util } from '$lib/ae_utils/ae_utils';
@@ -69,7 +70,7 @@ let ae_triggers: key_val = $state({});
<section
class="
ae_comp event_session_obj_li
border border-2 border-dashed border-x-red-500 border-y-white
border-2 border-dashed border-x-red-500 border-y-white
sm:border-x-red-400 md:border-x-yellow-400 lg:border-x-gray-100
px-0.5 py-2 space-y-2
min-w-full