Work on Event reports.

This commit is contained in:
Scott Idem
2025-09-04 12:30:32 -04:00
parent 4fcf28f303
commit 390bcf05a4
4 changed files with 204 additions and 178 deletions

View File

@@ -494,6 +494,10 @@ export async function search__event_presenter(
like_search_qry_str = null, like_search_qry_str = null,
like_presentation_search_qry_str = null, like_presentation_search_qry_str = null,
like_presenter_search_qry_str = null, like_presenter_search_qry_str = null,
enabled = 'enabled',
hidden = 'not_hidden',
limit = 49,
offset = 0,
order_by_li = {'priority': 'DESC', 'sort': 'DESC', 'given_name': 'ASC', 'family_name': 'ASC', 'email': 'ASC', 'updated_on': 'DESC', 'created_on': 'DESC'}, order_by_li = {'priority': 'DESC', 'sort': 'DESC', 'given_name': 'ASC', 'family_name': 'ASC', 'email': 'ASC', 'updated_on': 'DESC', 'created_on': 'DESC'},
params = {}, params = {},
try_cache = true, try_cache = true,
@@ -508,6 +512,10 @@ export async function search__event_presenter(
like_search_qry_str?: null|string, like_search_qry_str?: null|string,
like_presentation_search_qry_str?: null|string, like_presentation_search_qry_str?: null|string,
like_presenter_search_qry_str?: null|string, like_presenter_search_qry_str?: null|string,
enabled?: string,
hidden?: string,
limit?: number,
offset?: number,
order_by_li?: key_val, order_by_li?: key_val,
params?: any, params?: any,
try_cache?: boolean, try_cache?: boolean,
@@ -518,10 +526,10 @@ export async function search__event_presenter(
console.log(`*** search__event_presenter() *** event_id=${event_id}`); console.log(`*** search__event_presenter() *** event_id=${event_id}`);
} }
let enabled: string = (params.qry__enabled ?? 'enabled'); // all, disabled, enabled // let enabled: string = (params.qry__enabled ?? 'enabled'); // all, disabled, enabled
let hidden: string = (params.qry__hidden ?? 'not_hidden'); // all, hidden, not_hidden // let hidden: string = (params.qry__hidden ?? 'not_hidden'); // all, hidden, not_hidden
let limit: number = (params.qry__limit ?? 25); // 99 // let limit: number = (params.qry__limit ?? 25); // 99
let offset: number = (params.qry__offset ?? 0); // 0 // let offset: number = (params.qry__offset ?? 0); // 0
let params_json: key_val = {}; let params_json: key_val = {};

View File

@@ -2,10 +2,10 @@
interface Props { interface Props {
// Exports // Exports
container_class_li?: string|Array<string>; container_class_li?: string|Array<string>;
display_mode?: string; // 'default', 'compact', 'minimal', 'launcher' // display_mode?: string; // 'default', 'compact', 'minimal', 'launcher'
event_presenter_id_random_li: Array<string>; event_presenter_id_random_li?: Array<string>;
link_to_type: string; link_to_type?: string;
link_to_id: string; link_to_id?: string;
// export let lq__event_presentation_obj // export let lq__event_presentation_obj
log_lvl?: number; log_lvl?: number;
show_presentation_fields?: boolean; show_presentation_fields?: boolean;
@@ -14,8 +14,8 @@ interface Props {
let { let {
container_class_li = [], container_class_li = [],
display_mode = 'default', // display_mode = 'default',
event_presenter_id_random_li = [], event_presenter_id_random_li = $bindable([]),
link_to_type, link_to_type,
link_to_id, link_to_id,
log_lvl = 0, log_lvl = 0,
@@ -41,19 +41,24 @@ if (log_lvl) {
let dq__where_type_id_val: string = `${link_to_type}_id_random`; let dq__where_type_id_val: string = `${link_to_type}_id_random`;
let dq__where_eq_id_val: string = link_to_id; let dq__where_eq_id_val: string = link_to_id;
// *** Functions and Logic // *** Functions and Logic
let lq__event_presenter_obj_li = $derived(liveQuery(async () => { let lq__event_presenter_obj_li = $derived(liveQuery(async () => {
if (link_to_type && link_to_id) { let results;
let results = await db_events.presenters
if (event_presenter_id_random_li.length) {
results = await db_events.presenters
.bulkGet(event_presenter_id_random_li);
return results;
} else if (link_to_type && link_to_id) {
console.log(`Trying where: ${dq__where_type_id_val}; equals: ${dq__where_eq_id_val}`);
results = await db_events.presenters
.where(dq__where_type_id_val) .where(dq__where_type_id_val)
.equals(dq__where_eq_id_val) .equals(dq__where_eq_id_val)
.sortBy('name') .sortBy('name')
return results;
} else if (event_presenter_id_random_li.length > 0) {
let results = await db_events.presenters
.bulkGet(event_presenter_id_random_li);
return results; return results;
} else { } else {
return null; return null;

View File

@@ -319,12 +319,15 @@ async function handle_search__event_presenter(
biography = null, biography = null,
ft_search_str = '', ft_search_str = '',
lk_search_str = '', lk_search_str = '',
enabled = $events_loc.pres_mgmt.qry_enabled ?? 'enabled',
hidden = $events_loc.pres_mgmt.qry_hidden ?? 'not_hidden',
limit = $events_loc.pres_mgmt.qry_limit__presenters ?? 150,
order_by_li = {'updated_on': 'DESC', 'priority': 'DESC', 'sort': 'DESC', 'given_name': 'ASC', 'family_name': 'ASC', 'email': 'ASC', 'created_on': 'DESC'}, order_by_li = {'updated_on': 'DESC', 'priority': 'DESC', 'sort': 'DESC', 'given_name': 'ASC', 'family_name': 'ASC', 'email': 'ASC', 'created_on': 'DESC'},
params = { // params = {
'qry__enabled': $events_loc.pres_mgmt.qry_enabled ?? 'enabled', // 'qry__enabled': $events_loc.pres_mgmt.qry_enabled ?? 'enabled',
'qry__hidden': $events_loc.pres_mgmt.qry_hidden ?? 'not_hidden', // 'qry__hidden': $events_loc.pres_mgmt.qry_hidden ?? 'not_hidden',
'qry__limit': $events_loc.pres_mgmt.qry_limit__presenters ?? 199, // 'qry__limit': $events_loc.pres_mgmt.qry_limit__presenters ?? 199,
}, // },
// try_cache = true, // try_cache = true,
log_lvl = 0, log_lvl = 0,
}: { }: {
@@ -332,14 +335,18 @@ async function handle_search__event_presenter(
biography?: null|boolean, biography?: null|boolean,
ft_search_str?: string, ft_search_str?: string,
lk_search_str?: string, lk_search_str?: string,
order_by_li?: key_val, // Order by fields and directions.
// search_delay?: number, // In milliseconds // search_delay?: number, // In milliseconds
// max_tries?: number, // max_tries?: number,
params?: key_val, enabled?: string,
hidden?: string,
limit?: number,
order_by_li?: key_val, // Order by fields and directions.
// params?: key_val,
// try_cache?: boolean, // try_cache?: boolean,
log_lvl?: number, log_lvl?: number,
} }
) { ) {
log_lvl = 2;
if (log_lvl) { if (log_lvl) {
console.log('handle_search__event_presenter()'); console.log('handle_search__event_presenter()');
} }
@@ -360,8 +367,10 @@ async function handle_search__event_presenter(
like_presentation_search_qry_str: lk_search_str, like_presentation_search_qry_str: lk_search_str,
like_presenter_search_qry_str: lk_search_str, like_presenter_search_qry_str: lk_search_str,
// external_event_id: $events_loc.pres_mgmt.default__external_registration_id, // external_event_id: $events_loc.pres_mgmt.default__external_registration_id,
enabled: enabled,
hidden: hidden,
limit: limit,
order_by_li: order_by_li, order_by_li: order_by_li,
params: params,
// try_cache: try_cache, // try_cache: try_cache,
log_lvl: log_lvl, log_lvl: log_lvl,
}) })
@@ -433,7 +442,9 @@ async function handle_qry__event_session(
log_lvl?: number, log_lvl?: number,
} }
) { ) {
if (log_lvl) {
console.log('handle_qry__event_session()'); console.log('handle_qry__event_session()');
}
$events_sess.pres_mgmt.status_qry__search = 'loading'; $events_sess.pres_mgmt.status_qry__search = 'loading';
$events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'loading'; $events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'loading';
@@ -854,6 +865,7 @@ async function handle_qry__event_session(
type="button" type="button"
onclick={() => { onclick={() => {
$events_loc.pres_mgmt.rpt__presenter_agree = !$events_loc.pres_mgmt.rpt__presenter_agree; $events_loc.pres_mgmt.rpt__presenter_agree = !$events_loc.pres_mgmt.rpt__presenter_agree;
$events_loc.pres_mgmt.show_report = '';
ae_promises.handle_search__event_presenter = handle_search__event_presenter({ ae_promises.handle_search__event_presenter = handle_search__event_presenter({
agree: $events_loc.pres_mgmt.rpt__presenter_agree ?? false, agree: $events_loc.pres_mgmt.rpt__presenter_agree ?? false,
@@ -861,6 +873,7 @@ async function handle_qry__event_session(
lk_search_str: '', lk_search_str: '',
log_lvl: log_lvl, log_lvl: log_lvl,
}); });
$events_loc.pres_mgmt.show_report = 'presenters_agree';
}} }}
class="ae_btn_info btn btn-sm m-1" class="ae_btn_info btn btn-sm m-1"
> >
@@ -879,6 +892,7 @@ async function handle_qry__event_session(
<p class="text-center text-red-500 font-bold">This report is not complete! Some records will be missing from these results. This report is being worked on.</p> <p class="text-center text-red-500 font-bold">This report is not complete! Some records will be missing from these results. This report is being worked on.</p>
{/if} --> {/if} -->
<!-- {#if event_presenter_id_random_li && event_presenter_id_random_li?.length } -->
<Comp_event_presenter_obj_tbl <Comp_event_presenter_obj_tbl
bind:event_presenter_id_random_li={event_presenter_id_random_li} bind:event_presenter_id_random_li={event_presenter_id_random_li}
show_presentation_fields={true} show_presentation_fields={true}
@@ -886,6 +900,9 @@ async function handle_qry__event_session(
log_lvl={log_lvl} log_lvl={log_lvl}
> >
</Comp_event_presenter_obj_tbl> </Comp_event_presenter_obj_tbl>
<!-- {:else}
<p class="text-center text-red-500 font-bold">No presenters found for this report.</p>
{/if} -->
{/if} {/if}
<!-- Show presenters with bios --> <!-- Show presenters with bios -->

View File

@@ -7,7 +7,7 @@ import { db_events } from "$lib/ae_events/db_events";
// Exports // Exports
export let container_class_li: string|Array<string> = []; export let container_class_li: string|Array<string> = [];
export let display_mode: string = 'default'; // 'default', 'compact', 'minimal', 'launcher' // export let display_mode: string = 'default'; // 'default', 'compact', 'minimal', 'launcher'
export let event_session_id_random_li: Array<string>; export let event_session_id_random_li: Array<string>;
export let link_to_type: string; export let link_to_type: string;
export let link_to_id: string; export let link_to_id: string;
@@ -52,10 +52,6 @@ $: lq__event_session_obj_li = liveQuery(async () => {
<Comp_event_session_obj_tbl <Comp_event_session_obj_tbl
container_class_li={container_class_li} container_class_li={container_class_li}
display_mode={display_mode}
link_to_type={link_to_type}
link_to_id={link_to_id}
event_session_id_random_li={event_session_id_random_li}
lq__event_session_obj_li={lq__event_session_obj_li} lq__event_session_obj_li={lq__event_session_obj_li}
show_location_fields={show_location_fields} show_location_fields={show_location_fields}
log_lvl={log_lvl} log_lvl={log_lvl}