|
|
|
|
@@ -78,476 +78,419 @@ $effect(() => {
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
// if ($events_loc.pres_mgmt.show_report == 'sessions_poc_agree') {
|
|
|
|
|
// handle_qry__event_session({
|
|
|
|
|
// qry_poc_agree: $events_loc.pres_mgmt.rpt__session_poc_agree ?? false,
|
|
|
|
|
// });
|
|
|
|
|
// } else if ($events_loc.pres_mgmt.show_report == 'session_no_bio') {
|
|
|
|
|
// handle_qry__event_session({
|
|
|
|
|
// qry_poc_kv_json: true,
|
|
|
|
|
// qry_poc_bios: true,
|
|
|
|
|
// });
|
|
|
|
|
// } else if ($events_loc.pres_mgmt.show_report == 'session_no_files') {
|
|
|
|
|
// handle_qry__event_session({
|
|
|
|
|
// qry_files: false,
|
|
|
|
|
// });
|
|
|
|
|
// } else if ($events_loc.pres_mgmt.show_report == 'presenters_agree') {
|
|
|
|
|
// handle_search__event_presenter({
|
|
|
|
|
// agree: $events_loc.pres_mgmt.rpt__presenter_agree ?? false,
|
|
|
|
|
// ft_search_str: '',
|
|
|
|
|
// lk_search_str: '',
|
|
|
|
|
|
|
|
|
|
// async function handle_qry__event_file(
|
|
|
|
|
// {
|
|
|
|
|
// created_on_offset = null,
|
|
|
|
|
// min_file_size = null, // in bytes
|
|
|
|
|
// file_purpose = null,
|
|
|
|
|
// ft_search_str = '',
|
|
|
|
|
// lk_search_str = '',
|
|
|
|
|
// limit = $events_loc.pres_mgmt.qry_limit__files ?? 0,
|
|
|
|
|
// try_cache = true,
|
|
|
|
|
// log_lvl = 0,
|
|
|
|
|
// }: {
|
|
|
|
|
// created_on_offset?: null|number,
|
|
|
|
|
// min_file_size?: null|number,
|
|
|
|
|
// file_purpose?: null|string,
|
|
|
|
|
// ft_search_str?: string,
|
|
|
|
|
// lk_search_str?: string,
|
|
|
|
|
// limit?: number,
|
|
|
|
|
// try_cache?: boolean,
|
|
|
|
|
// log_lvl?: number,
|
|
|
|
|
// }
|
|
|
|
|
// ) {
|
|
|
|
|
// console.log('handle_qry__event_file()');
|
|
|
|
|
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'loading';
|
|
|
|
|
// $events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'loading';
|
|
|
|
|
|
|
|
|
|
// let created_on_str = null;
|
|
|
|
|
// if (created_on_offset) {
|
|
|
|
|
// // Calculate the datetime to pass based on the selected offset.
|
|
|
|
|
// let offset = created_on_offset ?? 0;
|
|
|
|
|
|
|
|
|
|
// let current_datetime = new Date();
|
|
|
|
|
// console.log(`Current time:`, current_datetime);
|
|
|
|
|
|
|
|
|
|
// // It is very important to know that all of the created_on and updated_on timestamps are in ET timezone. Sorry...?
|
|
|
|
|
// let for_et_tz_datetime = new Date(current_datetime.toLocaleString('en-US', {timeZone: 'America/New_York'}));
|
|
|
|
|
// const adjust_minutes = for_et_tz_datetime.getTimezoneOffset(); // Usually 240 minutes for ET.
|
|
|
|
|
// const adjusted_for_et_tz_datetime = new Date(for_et_tz_datetime.getTime() - adjust_minutes * 60 * 1000);
|
|
|
|
|
// const adjusted_for_et_tz_datetime_iso_str = adjusted_for_et_tz_datetime.toISOString().slice(0, -1);
|
|
|
|
|
// console.log(`Adjusted for ET TZ time:`, adjusted_for_et_tz_datetime_iso_str);
|
|
|
|
|
|
|
|
|
|
// let offset_datetime = adjusted_for_et_tz_datetime;
|
|
|
|
|
// offset_datetime.setSeconds(offset_datetime.getSeconds() - offset);
|
|
|
|
|
// console.log(`Offset time:`, offset_datetime);
|
|
|
|
|
// // .slice(0, 19).replace('T', ' '), // '2024-10-15 13:59:59'
|
|
|
|
|
// const offset_datetime_iso_str = adjusted_for_et_tz_datetime.toISOString().slice(0, -1);
|
|
|
|
|
// console.log(`Offset time ET ISO: ${offset_datetime_iso_str}`);
|
|
|
|
|
|
|
|
|
|
// created_on_str = offset_datetime_iso_str;
|
|
|
|
|
|
|
|
|
|
// // Convert to US Eastern time and output as ISO string.
|
|
|
|
|
// // let offset_datetime_local = new Date(offset_datetime.toLocaleString('en-US', {timeZone: 'America/New_York'}));
|
|
|
|
|
// // console.log(`Test time local ET: ${offset_datetime_local}`);
|
|
|
|
|
|
|
|
|
|
// // let formatted_str = offset_datetime_local.toLocaleString('en-US', {
|
|
|
|
|
// // year: 'numeric',
|
|
|
|
|
// // month: '2-digit',
|
|
|
|
|
// // day: '2-digit',
|
|
|
|
|
// // hour: '2-digit',
|
|
|
|
|
// // minute: '2-digit',
|
|
|
|
|
// // second: '2-digit',
|
|
|
|
|
// // timeZone: 'UTC'
|
|
|
|
|
// // });
|
|
|
|
|
// // console.log(`Test time local ET: ${formatted_str}`);
|
|
|
|
|
|
|
|
|
|
// // let offset_datetime_local_str = offset_datetime_local.toISOString();
|
|
|
|
|
// // console.log(`Test time local ET: ${offset_datetime_local_str}`);
|
|
|
|
|
|
|
|
|
|
// // created_on_str = offset_datetime_local_str;
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// ae_promises.search__event_file = events_func.qry__event_file({
|
|
|
|
|
// api_cfg: $ae_api,
|
|
|
|
|
// event_id: $events_slct.event_id,
|
|
|
|
|
// qry_created_on: created_on_str,
|
|
|
|
|
// qry_min_file_size: min_file_size,
|
|
|
|
|
// qry_file_purpose: file_purpose,
|
|
|
|
|
// // fulltext_search_qry_str: ft_search_str,
|
|
|
|
|
// // like_search_qry_str: lk_search_str,
|
|
|
|
|
// // external_event_id: $events_loc.pres_mgmt.default__external_registration_id,
|
|
|
|
|
// enabled: $events_loc.pres_mgmt.qry_enabled ?? 'enabled',
|
|
|
|
|
// hidden: $events_loc.pres_mgmt.qry_hidden ?? 'not_hidden',
|
|
|
|
|
// limit: limit,
|
|
|
|
|
// // params: params,
|
|
|
|
|
// try_cache: try_cache,
|
|
|
|
|
// log_lvl: log_lvl,
|
|
|
|
|
// })
|
|
|
|
|
// .then(function (search_results) {
|
|
|
|
|
// // Processing the results from the search.
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'processing';
|
|
|
|
|
// $events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'processing';
|
|
|
|
|
// $events_slct.event_file_obj_li = search_results;
|
|
|
|
|
// // console.log(search_results);
|
|
|
|
|
// // $events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
// })
|
|
|
|
|
// .finally(() => {
|
|
|
|
|
// if (log_lvl) {
|
|
|
|
|
// console.log('TEST SEARCH - Search done. Pulling out the event_file_id_randoms.');
|
|
|
|
|
// }
|
|
|
|
|
// // console.log(`TEST search: ${$lq_kv__event_file_obj_li}`);
|
|
|
|
|
|
|
|
|
|
// event_file_id_random_li = [];
|
|
|
|
|
|
|
|
|
|
// // We need to loop through the array of objects and get the event_file_id_random from each object a new list of event_file_id_randoms. Then we can use this list to get the full objects from the database.
|
|
|
|
|
// let tmp_li = []; // This is to prevent the array from constantly updating and triggering the liveQuery.
|
|
|
|
|
// for (let i = 0; i < $events_slct.event_file_obj_li.length; i++) {
|
|
|
|
|
// tmp_li.push($events_slct.event_file_obj_li[i].event_file_id_random);
|
|
|
|
|
// }
|
|
|
|
|
// event_file_id_random_li = tmp_li;
|
|
|
|
|
|
|
|
|
|
// // event_file_id_random_li = $events_slct.event_file_obj_li.map(file_obj => file_obj.event_file_id_random);
|
|
|
|
|
|
|
|
|
|
// // Finally done with the search.
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
// $events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'done';
|
|
|
|
|
|
|
|
|
|
// if (log_lvl > 1) {
|
|
|
|
|
// console.log(`TEST SEARCH - event_file_id_random_li:`, event_file_id_random_li);
|
|
|
|
|
// // console.log(`TEST SEARCH - search live query: ${$lq_kv__event_file_obj_li}`);
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// });
|
|
|
|
|
// } else if ($events_loc.pres_mgmt.show_report == 'presenters_biography') {
|
|
|
|
|
// handle_search__event_presenter({
|
|
|
|
|
// biography: true,
|
|
|
|
|
// ft_search_str: '',
|
|
|
|
|
// lk_search_str: '',
|
|
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// async function handle_search__event_session(
|
|
|
|
|
// {
|
|
|
|
|
// poc_agree = null,
|
|
|
|
|
// ft_search_str = '',
|
|
|
|
|
// lk_search_str = '',
|
|
|
|
|
// params = {
|
|
|
|
|
// 'qry__enabled': $events_loc.pres_mgmt.qry_enabled ?? 'enabled',
|
|
|
|
|
// 'qry__hidden': $events_loc.pres_mgmt.qry_hidden ?? 'not_hidden',
|
|
|
|
|
// 'qry__limit': $events_loc.pres_mgmt.qry_limit__sessions ?? 150,
|
|
|
|
|
// },
|
|
|
|
|
// try_cache=true,
|
|
|
|
|
// log_lvl=0,
|
|
|
|
|
// }: {
|
|
|
|
|
// poc_agree?: null|boolean,
|
|
|
|
|
// ft_search_str?: string,
|
|
|
|
|
// lk_search_str?: string,
|
|
|
|
|
// params?: key_val,
|
|
|
|
|
// try_cache?: boolean,
|
|
|
|
|
// log_lvl?: number,
|
|
|
|
|
// }
|
|
|
|
|
// ) {
|
|
|
|
|
// if (log_lvl) {
|
|
|
|
|
// console.log('handle_search__event_session()');
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'loading';
|
|
|
|
|
// $events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'loading';
|
|
|
|
|
|
|
|
|
|
// ae_promises.handle_search__event_session = events_func.search__event_session({
|
|
|
|
|
// api_cfg: $ae_api,
|
|
|
|
|
// event_id: $events_slct.event_id,
|
|
|
|
|
// poc_agree: poc_agree,
|
|
|
|
|
// fulltext_search_qry_str: ft_search_str,
|
|
|
|
|
// like_search_qry_str: lk_search_str,
|
|
|
|
|
// // external_event_id: $events_loc.pres_mgmt.default__external_registration_id,
|
|
|
|
|
// params: params,
|
|
|
|
|
// try_cache: try_cache,
|
|
|
|
|
// log_lvl: log_lvl,
|
|
|
|
|
// })
|
|
|
|
|
// .then(function (search_results) {
|
|
|
|
|
// // Processing the results from the search.
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'processing';
|
|
|
|
|
// $events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'processing';
|
|
|
|
|
// $events_slct.event_session_obj_li = search_results;
|
|
|
|
|
// console.log(search_results);
|
|
|
|
|
// // $events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
// })
|
|
|
|
|
// .finally(() => {
|
|
|
|
|
// if (log_lvl) {
|
|
|
|
|
// console.log('API query done. Pulling out the event_session_id_random values.');
|
|
|
|
|
// }
|
|
|
|
|
// // console.log(`TEST search: ${$lq_kv__event_session_obj_li}`);
|
|
|
|
|
|
|
|
|
|
// event_session_id_random_li = [];
|
|
|
|
|
|
|
|
|
|
// // We need to loop through the array of objects and get the event_session_id_random from each object a new list of event_session_id_randoms. Then we can use this list to get the full objects from the database.
|
|
|
|
|
// let tmp_li = []; // This is to prevent the array from constantly updating and triggering the liveQuery.
|
|
|
|
|
// if ($events_slct.event_session_obj_li) {
|
|
|
|
|
// for (let i = 0; i < $events_slct.event_session_obj_li.length; i++) {
|
|
|
|
|
// tmp_li.push($events_slct.event_session_obj_li[i].event_session_id_random);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// event_session_id_random_li = tmp_li;
|
|
|
|
|
|
|
|
|
|
// // event_session_id_random_li = $events_slct.event_session_obj_li.map(session_obj => session_obj.event_session_id_random);
|
|
|
|
|
|
|
|
|
|
// // Finally done with the search.
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
// $events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'done';
|
|
|
|
|
|
|
|
|
|
// if (log_lvl > 1) {
|
|
|
|
|
// console.log(`TEST SEARCH - event_session_id_random_li:`, event_session_id_random_li);
|
|
|
|
|
// // console.log(`TEST SEARCH - search live query: ${$lq_kv__event_session_obj_li}`);
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// });
|
|
|
|
|
// } else if ($events_loc.pres_mgmt.show_report == 'presenters_overview') {
|
|
|
|
|
// // NOT READY YET: Show overview of presenters' statuses. (for LCI)
|
|
|
|
|
// handle_search__event_presenter({
|
|
|
|
|
// ft_search_str: '',
|
|
|
|
|
// lk_search_str: '',
|
|
|
|
|
// log_lvl: log_lvl,
|
|
|
|
|
// });
|
|
|
|
|
// if ($events_loc.pres_mgmt.show_report == 'recent_files') {
|
|
|
|
|
// handle_qry__event_file({
|
|
|
|
|
// created_on_offset: $events_loc.pres_mgmt.qry__files_offset_seconds ?? 0,
|
|
|
|
|
// file_purpose: $events_loc.pres_mgmt.qry__files_purpose ?? null,
|
|
|
|
|
// log_lvl: 0,
|
|
|
|
|
// });
|
|
|
|
|
// } else if ($events_loc.pres_mgmt.show_report == 'large_files') {
|
|
|
|
|
// handle_qry__event_file({
|
|
|
|
|
// min_file_size: $events_loc.pres_mgmt.qry__files_min_size ?? 100000000, // in bytes
|
|
|
|
|
// file_purpose: $events_loc.pres_mgmt.qry__files_purpose ?? null,
|
|
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// async function handle_search__event_presenter(
|
|
|
|
|
// {
|
|
|
|
|
// agree = null,
|
|
|
|
|
// biography = null,
|
|
|
|
|
// ft_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'},
|
|
|
|
|
// // params = {
|
|
|
|
|
// // 'qry__enabled': $events_loc.pres_mgmt.qry_enabled ?? 'enabled',
|
|
|
|
|
// // 'qry__hidden': $events_loc.pres_mgmt.qry_hidden ?? 'not_hidden',
|
|
|
|
|
// // 'qry__limit': $events_loc.pres_mgmt.qry_limit__presenters ?? 199,
|
|
|
|
|
// // },
|
|
|
|
|
// // try_cache = true,
|
|
|
|
|
// log_lvl = 0,
|
|
|
|
|
// }: {
|
|
|
|
|
// agree?: null|boolean,
|
|
|
|
|
// biography?: null|boolean,
|
|
|
|
|
// ft_search_str?: string,
|
|
|
|
|
// lk_search_str?: string,
|
|
|
|
|
// // search_delay?: number, // In milliseconds
|
|
|
|
|
// // max_tries?: number,
|
|
|
|
|
// enabled?: string,
|
|
|
|
|
// hidden?: string,
|
|
|
|
|
// limit?: number,
|
|
|
|
|
// order_by_li?: key_val, // Order by fields and directions.
|
|
|
|
|
// // params?: key_val,
|
|
|
|
|
// // try_cache?: boolean,
|
|
|
|
|
// log_lvl?: number,
|
|
|
|
|
// }
|
|
|
|
|
// ) {
|
|
|
|
|
// log_lvl = 2;
|
|
|
|
|
// if (log_lvl) {
|
|
|
|
|
// console.log('handle_search__event_presenter()');
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'loading';
|
|
|
|
|
// $events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'loading';
|
|
|
|
|
|
|
|
|
|
// $events_sess.event_presenter_obj_li = [];
|
|
|
|
|
// $events_slct.event_presenter_obj_li = []; // Clear out any previous results.
|
|
|
|
|
|
|
|
|
|
// // let order_by_li = {'updated_on': 'DESC', 'priority': 'DESC', 'sort': 'DESC', 'given_name': 'ASC', 'family_name': 'ASC', 'email': 'ASC', 'created_on': 'DESC'};
|
|
|
|
|
|
|
|
|
|
// ae_promises.search__event_presenter = events_func.search__event_presenter({
|
|
|
|
|
// api_cfg: $ae_api,
|
|
|
|
|
// event_id: $events_slct.event_id,
|
|
|
|
|
// agree: agree,
|
|
|
|
|
// biography: biography,
|
|
|
|
|
// fulltext_search_qry_str: ft_search_str,
|
|
|
|
|
// ft_presenter_search_qry_str: null,
|
|
|
|
|
// like_search_qry_str: lk_search_str,
|
|
|
|
|
// like_presentation_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,
|
|
|
|
|
// enabled: enabled,
|
|
|
|
|
// hidden: hidden,
|
|
|
|
|
// limit: limit,
|
|
|
|
|
// order_by_li: order_by_li,
|
|
|
|
|
// // try_cache: try_cache,
|
|
|
|
|
// log_lvl: log_lvl,
|
|
|
|
|
// })
|
|
|
|
|
// .then(function (search_results) {
|
|
|
|
|
// // Processing the results from the search.
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'processing';
|
|
|
|
|
// $events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'processing';
|
|
|
|
|
// $events_sess.event_presenter_obj_li = search_results;
|
|
|
|
|
// // $events_slct.event_presenter_obj_li = search_results;
|
|
|
|
|
// console.log(search_results);
|
|
|
|
|
// // $events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
// })
|
|
|
|
|
// .finally(() => {
|
|
|
|
|
// if (log_lvl) {
|
|
|
|
|
// console.log('TEST SEARCH - Search done. Pulling out the event_presenter_id_randoms.');
|
|
|
|
|
// }
|
|
|
|
|
// // console.log(`TEST search: ${$lq_kv__event_presenter_obj_li}`);
|
|
|
|
|
|
|
|
|
|
// // event_presenter_id_random_li = [];
|
|
|
|
|
|
|
|
|
|
// // We need to loop through the array of objects and get the event_presenter_id_random from each object a new list of event_presenter_id_randoms. Then we can use this list to get the full objects from the database.
|
|
|
|
|
// // let tmp_li = []; // This is to prevent the array from constantly updating and triggering the liveQuery.
|
|
|
|
|
// // for (let i = 0; i < $events_slct.event_presenter_obj_li.length; i++) {
|
|
|
|
|
// // tmp_li.push($events_slct.event_presenter_obj_li[i].event_presenter_id_random);
|
|
|
|
|
// // }
|
|
|
|
|
// // event_presenter_id_random_li = tmp_li;
|
|
|
|
|
|
|
|
|
|
// // event_presenter_id_random_li = $events_slct.event_presenter_obj_li.map(presenter_obj => presenter_obj.event_presenter_id_random);
|
|
|
|
|
|
|
|
|
|
// // Finally done with the search.
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
// $events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'done';
|
|
|
|
|
|
|
|
|
|
// // if (log_lvl > 1) {
|
|
|
|
|
// // console.log(`TEST SEARCH - event_presenter_id_random_li:`, event_presenter_id_random_li);
|
|
|
|
|
// // // console.log(`TEST SEARCH - search live query: ${$lq_kv__event_presenter_obj_li}`);
|
|
|
|
|
// // }
|
|
|
|
|
|
|
|
|
|
// });
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// onMount(() => {
|
|
|
|
|
// console.log('Events Event [slug] Reports: +page.svelte');
|
|
|
|
|
|
|
|
|
|
// if (!$events_slct.event_id) {
|
|
|
|
|
// console.log(`No ID! Nothing to show. Try setting the ID again.`);
|
|
|
|
|
// $events_slct.event_id = $events_slct.event_id;
|
|
|
|
|
// // Updated 2024-10-15
|
|
|
|
|
// async function handle_qry__event_session(
|
|
|
|
|
// {
|
|
|
|
|
// qry_files = null,
|
|
|
|
|
// // file_count = false,
|
|
|
|
|
// // file_count_all = null,
|
|
|
|
|
// // ft_search_str = '',
|
|
|
|
|
// // lk_search_str = '',
|
|
|
|
|
// qry_poc_agree = null,
|
|
|
|
|
// qry_poc_kv_json = null,
|
|
|
|
|
// qry_poc_bios = null,
|
|
|
|
|
// enabled = $events_loc.pres_mgmt.qry_enabled ?? 'enabled',
|
|
|
|
|
// hidden = $events_loc.pres_mgmt.qry_hidden ?? 'not_hidden',
|
|
|
|
|
// limit = $events_loc.pres_mgmt.qry_limit__sessions ?? 150,
|
|
|
|
|
// log_lvl = 0,
|
|
|
|
|
// }: {
|
|
|
|
|
// qry_files?: null|boolean,
|
|
|
|
|
// // file_count?: boolean,
|
|
|
|
|
// // file_count_all?: null|number,
|
|
|
|
|
// // ft_search_str?: string,
|
|
|
|
|
// // lk_search_str?: string,
|
|
|
|
|
// qry_poc_agree?: null|boolean,
|
|
|
|
|
// qry_poc_kv_json?: null|boolean,
|
|
|
|
|
// qry_poc_bios?: null|boolean,
|
|
|
|
|
// enabled?: string,
|
|
|
|
|
// hidden?: string,
|
|
|
|
|
// limit?: number,
|
|
|
|
|
// log_lvl?: number,
|
|
|
|
|
// }
|
|
|
|
|
// ) {
|
|
|
|
|
// if (log_lvl) {
|
|
|
|
|
// console.log('handle_qry__event_session()');
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// });
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'loading';
|
|
|
|
|
// $events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'loading';
|
|
|
|
|
|
|
|
|
|
async function handle_qry__event_file(
|
|
|
|
|
{
|
|
|
|
|
created_on_offset = null,
|
|
|
|
|
min_file_size = null, // in bytes
|
|
|
|
|
file_purpose = null,
|
|
|
|
|
ft_search_str = '',
|
|
|
|
|
lk_search_str = '',
|
|
|
|
|
limit = $events_loc.pres_mgmt.qry_limit__files ?? 0,
|
|
|
|
|
try_cache = true,
|
|
|
|
|
log_lvl = 0,
|
|
|
|
|
}: {
|
|
|
|
|
created_on_offset?: null|number,
|
|
|
|
|
min_file_size?: null|number,
|
|
|
|
|
file_purpose?: null|string,
|
|
|
|
|
ft_search_str?: string,
|
|
|
|
|
lk_search_str?: string,
|
|
|
|
|
limit?: number,
|
|
|
|
|
try_cache?: boolean,
|
|
|
|
|
log_lvl?: number,
|
|
|
|
|
}
|
|
|
|
|
) {
|
|
|
|
|
console.log('handle_qry__event_file()');
|
|
|
|
|
// ae_promises.handle_qry__event_session = events_func.qry__event_session({
|
|
|
|
|
// api_cfg: $ae_api,
|
|
|
|
|
// event_id: $events_slct.event_id,
|
|
|
|
|
// // file_count_all: file_count_all,
|
|
|
|
|
// // fulltext_search_qry_str: ft_search_str,
|
|
|
|
|
// // like_search_qry_str: lk_search_str,
|
|
|
|
|
// // external_event_id: $events_loc.pres_mgmt.default__external_registration_id,
|
|
|
|
|
// qry_files: qry_files,
|
|
|
|
|
// qry_start_datetime: null,
|
|
|
|
|
// qry_poc_agree: qry_poc_agree,
|
|
|
|
|
// qry_poc_kv_json: qry_poc_kv_json,
|
|
|
|
|
// enabled: enabled,
|
|
|
|
|
// hidden: hidden,
|
|
|
|
|
// limit: limit,
|
|
|
|
|
// log_lvl: log_lvl,
|
|
|
|
|
// })
|
|
|
|
|
// .then(function (search_results) {
|
|
|
|
|
// // Processing the results from the search.
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'processing';
|
|
|
|
|
// $events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'processing';
|
|
|
|
|
// $events_slct.event_session_obj_li = search_results;
|
|
|
|
|
// if (log_lvl) {
|
|
|
|
|
// console.log(`Search results:`, search_results);
|
|
|
|
|
// }
|
|
|
|
|
// // $events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
// })
|
|
|
|
|
// .finally(() => {
|
|
|
|
|
// if (log_lvl) {
|
|
|
|
|
// console.log('API query done. Pulling out the event_session_id_random values.');
|
|
|
|
|
// }
|
|
|
|
|
// // console.log(`TEST search: ${$lq_kv__event_session_obj_li}`);
|
|
|
|
|
|
|
|
|
|
$events_sess.pres_mgmt.status_qry__search = 'loading';
|
|
|
|
|
$events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'loading';
|
|
|
|
|
// event_session_id_random_li = [];
|
|
|
|
|
|
|
|
|
|
let created_on_str = null;
|
|
|
|
|
if (created_on_offset) {
|
|
|
|
|
// Calculate the datetime to pass based on the selected offset.
|
|
|
|
|
let offset = created_on_offset ?? 0;
|
|
|
|
|
// // We need to loop through the array of objects and get the event_session_id_random from each object a new list of event_session_id_randoms. Then we can use this list to get the full objects from the database.
|
|
|
|
|
// let tmp_li = []; // This is to prevent the array from constantly updating and triggering the liveQuery.
|
|
|
|
|
// if ($events_slct.event_session_obj_li) {
|
|
|
|
|
// for (let i = 0; i < $events_slct.event_session_obj_li.length; i++) {
|
|
|
|
|
// if (qry_poc_bios && $events_slct.event_session_obj_li[i].poc_kv_json) {
|
|
|
|
|
// if ($events_slct.event_session_obj_li[i].poc_kv_json['champion']?.biography.length > 1) {
|
|
|
|
|
// console.log(`Biography for session:`, $events_slct.event_session_obj_li[i]);
|
|
|
|
|
// tmp_li.push($events_slct.event_session_obj_li[i].event_session_id_random);
|
|
|
|
|
// } else {
|
|
|
|
|
// console.log(`No biography for session:`, $events_slct.event_session_obj_li[i]);
|
|
|
|
|
// }
|
|
|
|
|
// } else {
|
|
|
|
|
// // console.log(`Pushing session to array (no biography):`, $events_slct.event_session_obj_li[i]);
|
|
|
|
|
// tmp_li.push($events_slct.event_session_obj_li[i].event_session_id_random);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// event_session_id_random_li = tmp_li;
|
|
|
|
|
|
|
|
|
|
let current_datetime = new Date();
|
|
|
|
|
console.log(`Current time:`, current_datetime);
|
|
|
|
|
// // event_session_id_random_li = $events_slct.event_session_obj_li.map(session_obj => session_obj.event_session_id_random);
|
|
|
|
|
|
|
|
|
|
// It is very important to know that all of the created_on and updated_on timestamps are in ET timezone. Sorry...?
|
|
|
|
|
let for_et_tz_datetime = new Date(current_datetime.toLocaleString('en-US', {timeZone: 'America/New_York'}));
|
|
|
|
|
const adjust_minutes = for_et_tz_datetime.getTimezoneOffset(); // Usually 240 minutes for ET.
|
|
|
|
|
const adjusted_for_et_tz_datetime = new Date(for_et_tz_datetime.getTime() - adjust_minutes * 60 * 1000);
|
|
|
|
|
const adjusted_for_et_tz_datetime_iso_str = adjusted_for_et_tz_datetime.toISOString().slice(0, -1);
|
|
|
|
|
console.log(`Adjusted for ET TZ time:`, adjusted_for_et_tz_datetime_iso_str);
|
|
|
|
|
// // Finally done with the search.
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
// $events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'done';
|
|
|
|
|
|
|
|
|
|
let offset_datetime = adjusted_for_et_tz_datetime;
|
|
|
|
|
offset_datetime.setSeconds(offset_datetime.getSeconds() - offset);
|
|
|
|
|
console.log(`Offset time:`, offset_datetime);
|
|
|
|
|
// .slice(0, 19).replace('T', ' '), // '2024-10-15 13:59:59'
|
|
|
|
|
const offset_datetime_iso_str = adjusted_for_et_tz_datetime.toISOString().slice(0, -1);
|
|
|
|
|
console.log(`Offset time ET ISO: ${offset_datetime_iso_str}`);
|
|
|
|
|
// if (log_lvl > 1) {
|
|
|
|
|
// console.log(`TEST SEARCH - event_session_id_random_li:`, event_session_id_random_li);
|
|
|
|
|
// // console.log(`TEST SEARCH - search live query: ${$lq_kv__event_session_obj_li}`);
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
created_on_str = offset_datetime_iso_str;
|
|
|
|
|
// });
|
|
|
|
|
|
|
|
|
|
// Convert to US Eastern time and output as ISO string.
|
|
|
|
|
// let offset_datetime_local = new Date(offset_datetime.toLocaleString('en-US', {timeZone: 'America/New_York'}));
|
|
|
|
|
// console.log(`Test time local ET: ${offset_datetime_local}`);
|
|
|
|
|
|
|
|
|
|
// let formatted_str = offset_datetime_local.toLocaleString('en-US', {
|
|
|
|
|
// year: 'numeric',
|
|
|
|
|
// month: '2-digit',
|
|
|
|
|
// day: '2-digit',
|
|
|
|
|
// hour: '2-digit',
|
|
|
|
|
// minute: '2-digit',
|
|
|
|
|
// second: '2-digit',
|
|
|
|
|
// timeZone: 'UTC'
|
|
|
|
|
// });
|
|
|
|
|
// console.log(`Test time local ET: ${formatted_str}`);
|
|
|
|
|
|
|
|
|
|
// let offset_datetime_local_str = offset_datetime_local.toISOString();
|
|
|
|
|
// console.log(`Test time local ET: ${offset_datetime_local_str}`);
|
|
|
|
|
|
|
|
|
|
// created_on_str = offset_datetime_local_str;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ae_promises.search__event_file = events_func.qry__event_file({
|
|
|
|
|
api_cfg: $ae_api,
|
|
|
|
|
event_id: $events_slct.event_id,
|
|
|
|
|
qry_created_on: created_on_str,
|
|
|
|
|
qry_min_file_size: min_file_size,
|
|
|
|
|
qry_file_purpose: file_purpose,
|
|
|
|
|
// fulltext_search_qry_str: ft_search_str,
|
|
|
|
|
// like_search_qry_str: lk_search_str,
|
|
|
|
|
// external_event_id: $events_loc.pres_mgmt.default__external_registration_id,
|
|
|
|
|
enabled: $events_loc.pres_mgmt.qry_enabled ?? 'enabled',
|
|
|
|
|
hidden: $events_loc.pres_mgmt.qry_hidden ?? 'not_hidden',
|
|
|
|
|
limit: limit,
|
|
|
|
|
// params: params,
|
|
|
|
|
try_cache: try_cache,
|
|
|
|
|
log_lvl: log_lvl,
|
|
|
|
|
})
|
|
|
|
|
.then(function (search_results) {
|
|
|
|
|
// Processing the results from the search.
|
|
|
|
|
$events_sess.pres_mgmt.status_qry__search = 'processing';
|
|
|
|
|
$events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'processing';
|
|
|
|
|
$events_slct.event_file_obj_li = search_results;
|
|
|
|
|
// console.log(search_results);
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
})
|
|
|
|
|
.finally(() => {
|
|
|
|
|
if (log_lvl) {
|
|
|
|
|
console.log('TEST SEARCH - Search done. Pulling out the event_file_id_randoms.');
|
|
|
|
|
}
|
|
|
|
|
// console.log(`TEST search: ${$lq_kv__event_file_obj_li}`);
|
|
|
|
|
|
|
|
|
|
event_file_id_random_li = [];
|
|
|
|
|
|
|
|
|
|
// We need to loop through the array of objects and get the event_file_id_random from each object a new list of event_file_id_randoms. Then we can use this list to get the full objects from the database.
|
|
|
|
|
let tmp_li = []; // This is to prevent the array from constantly updating and triggering the liveQuery.
|
|
|
|
|
for (let i = 0; i < $events_slct.event_file_obj_li.length; i++) {
|
|
|
|
|
tmp_li.push($events_slct.event_file_obj_li[i].event_file_id_random);
|
|
|
|
|
}
|
|
|
|
|
event_file_id_random_li = tmp_li;
|
|
|
|
|
|
|
|
|
|
// event_file_id_random_li = $events_slct.event_file_obj_li.map(file_obj => file_obj.event_file_id_random);
|
|
|
|
|
|
|
|
|
|
// Finally done with the search.
|
|
|
|
|
$events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
$events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'done';
|
|
|
|
|
|
|
|
|
|
if (log_lvl > 1) {
|
|
|
|
|
console.log(`TEST SEARCH - event_file_id_random_li:`, event_file_id_random_li);
|
|
|
|
|
// console.log(`TEST SEARCH - search live query: ${$lq_kv__event_file_obj_li}`);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
async function handle_search__event_session(
|
|
|
|
|
{
|
|
|
|
|
poc_agree = null,
|
|
|
|
|
ft_search_str = '',
|
|
|
|
|
lk_search_str = '',
|
|
|
|
|
params = {
|
|
|
|
|
'qry__enabled': $events_loc.pres_mgmt.qry_enabled ?? 'enabled',
|
|
|
|
|
'qry__hidden': $events_loc.pres_mgmt.qry_hidden ?? 'not_hidden',
|
|
|
|
|
'qry__limit': $events_loc.pres_mgmt.qry_limit__sessions ?? 150,
|
|
|
|
|
},
|
|
|
|
|
try_cache=true,
|
|
|
|
|
log_lvl=0,
|
|
|
|
|
}: {
|
|
|
|
|
poc_agree?: null|boolean,
|
|
|
|
|
ft_search_str?: string,
|
|
|
|
|
lk_search_str?: string,
|
|
|
|
|
params?: key_val,
|
|
|
|
|
try_cache?: boolean,
|
|
|
|
|
log_lvl?: number,
|
|
|
|
|
}
|
|
|
|
|
) {
|
|
|
|
|
if (log_lvl) {
|
|
|
|
|
console.log('handle_search__event_session()');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$events_sess.pres_mgmt.status_qry__search = 'loading';
|
|
|
|
|
$events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'loading';
|
|
|
|
|
|
|
|
|
|
ae_promises.handle_search__event_session = events_func.search__event_session({
|
|
|
|
|
api_cfg: $ae_api,
|
|
|
|
|
event_id: $events_slct.event_id,
|
|
|
|
|
poc_agree: poc_agree,
|
|
|
|
|
fulltext_search_qry_str: ft_search_str,
|
|
|
|
|
like_search_qry_str: lk_search_str,
|
|
|
|
|
// external_event_id: $events_loc.pres_mgmt.default__external_registration_id,
|
|
|
|
|
params: params,
|
|
|
|
|
try_cache: try_cache,
|
|
|
|
|
log_lvl: log_lvl,
|
|
|
|
|
})
|
|
|
|
|
.then(function (search_results) {
|
|
|
|
|
// Processing the results from the search.
|
|
|
|
|
$events_sess.pres_mgmt.status_qry__search = 'processing';
|
|
|
|
|
$events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'processing';
|
|
|
|
|
$events_slct.event_session_obj_li = search_results;
|
|
|
|
|
console.log(search_results);
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
})
|
|
|
|
|
.finally(() => {
|
|
|
|
|
if (log_lvl) {
|
|
|
|
|
console.log('API query done. Pulling out the event_session_id_random values.');
|
|
|
|
|
}
|
|
|
|
|
// console.log(`TEST search: ${$lq_kv__event_session_obj_li}`);
|
|
|
|
|
|
|
|
|
|
event_session_id_random_li = [];
|
|
|
|
|
|
|
|
|
|
// We need to loop through the array of objects and get the event_session_id_random from each object a new list of event_session_id_randoms. Then we can use this list to get the full objects from the database.
|
|
|
|
|
let tmp_li = []; // This is to prevent the array from constantly updating and triggering the liveQuery.
|
|
|
|
|
if ($events_slct.event_session_obj_li) {
|
|
|
|
|
for (let i = 0; i < $events_slct.event_session_obj_li.length; i++) {
|
|
|
|
|
tmp_li.push($events_slct.event_session_obj_li[i].event_session_id_random);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
event_session_id_random_li = tmp_li;
|
|
|
|
|
|
|
|
|
|
// event_session_id_random_li = $events_slct.event_session_obj_li.map(session_obj => session_obj.event_session_id_random);
|
|
|
|
|
|
|
|
|
|
// Finally done with the search.
|
|
|
|
|
$events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
$events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'done';
|
|
|
|
|
|
|
|
|
|
if (log_lvl > 1) {
|
|
|
|
|
console.log(`TEST SEARCH - event_session_id_random_li:`, event_session_id_random_li);
|
|
|
|
|
// console.log(`TEST SEARCH - search live query: ${$lq_kv__event_session_obj_li}`);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
async function handle_search__event_presenter(
|
|
|
|
|
{
|
|
|
|
|
agree = null,
|
|
|
|
|
biography = null,
|
|
|
|
|
ft_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'},
|
|
|
|
|
// params = {
|
|
|
|
|
// 'qry__enabled': $events_loc.pres_mgmt.qry_enabled ?? 'enabled',
|
|
|
|
|
// 'qry__hidden': $events_loc.pres_mgmt.qry_hidden ?? 'not_hidden',
|
|
|
|
|
// 'qry__limit': $events_loc.pres_mgmt.qry_limit__presenters ?? 199,
|
|
|
|
|
// },
|
|
|
|
|
// try_cache = true,
|
|
|
|
|
log_lvl = 0,
|
|
|
|
|
}: {
|
|
|
|
|
agree?: null|boolean,
|
|
|
|
|
biography?: null|boolean,
|
|
|
|
|
ft_search_str?: string,
|
|
|
|
|
lk_search_str?: string,
|
|
|
|
|
// search_delay?: number, // In milliseconds
|
|
|
|
|
// max_tries?: number,
|
|
|
|
|
enabled?: string,
|
|
|
|
|
hidden?: string,
|
|
|
|
|
limit?: number,
|
|
|
|
|
order_by_li?: key_val, // Order by fields and directions.
|
|
|
|
|
// params?: key_val,
|
|
|
|
|
// try_cache?: boolean,
|
|
|
|
|
log_lvl?: number,
|
|
|
|
|
}
|
|
|
|
|
) {
|
|
|
|
|
log_lvl = 2;
|
|
|
|
|
if (log_lvl) {
|
|
|
|
|
console.log('handle_search__event_presenter()');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$events_sess.pres_mgmt.status_qry__search = 'loading';
|
|
|
|
|
$events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'loading';
|
|
|
|
|
|
|
|
|
|
$events_sess.event_presenter_obj_li = [];
|
|
|
|
|
$events_slct.event_presenter_obj_li = []; // Clear out any previous results.
|
|
|
|
|
|
|
|
|
|
// let order_by_li = {'updated_on': 'DESC', 'priority': 'DESC', 'sort': 'DESC', 'given_name': 'ASC', 'family_name': 'ASC', 'email': 'ASC', 'created_on': 'DESC'};
|
|
|
|
|
|
|
|
|
|
ae_promises.search__event_presenter = events_func.search__event_presenter({
|
|
|
|
|
api_cfg: $ae_api,
|
|
|
|
|
event_id: $events_slct.event_id,
|
|
|
|
|
agree: agree,
|
|
|
|
|
biography: biography,
|
|
|
|
|
fulltext_search_qry_str: ft_search_str,
|
|
|
|
|
ft_presenter_search_qry_str: null,
|
|
|
|
|
like_search_qry_str: lk_search_str,
|
|
|
|
|
like_presentation_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,
|
|
|
|
|
enabled: enabled,
|
|
|
|
|
hidden: hidden,
|
|
|
|
|
limit: limit,
|
|
|
|
|
order_by_li: order_by_li,
|
|
|
|
|
// try_cache: try_cache,
|
|
|
|
|
log_lvl: log_lvl,
|
|
|
|
|
})
|
|
|
|
|
.then(function (search_results) {
|
|
|
|
|
// Processing the results from the search.
|
|
|
|
|
$events_sess.pres_mgmt.status_qry__search = 'processing';
|
|
|
|
|
$events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'processing';
|
|
|
|
|
$events_sess.event_presenter_obj_li = search_results;
|
|
|
|
|
// $events_slct.event_presenter_obj_li = search_results;
|
|
|
|
|
console.log(search_results);
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
})
|
|
|
|
|
.finally(() => {
|
|
|
|
|
if (log_lvl) {
|
|
|
|
|
console.log('TEST SEARCH - Search done. Pulling out the event_presenter_id_randoms.');
|
|
|
|
|
}
|
|
|
|
|
// console.log(`TEST search: ${$lq_kv__event_presenter_obj_li}`);
|
|
|
|
|
|
|
|
|
|
// event_presenter_id_random_li = [];
|
|
|
|
|
|
|
|
|
|
// We need to loop through the array of objects and get the event_presenter_id_random from each object a new list of event_presenter_id_randoms. Then we can use this list to get the full objects from the database.
|
|
|
|
|
// let tmp_li = []; // This is to prevent the array from constantly updating and triggering the liveQuery.
|
|
|
|
|
// for (let i = 0; i < $events_slct.event_presenter_obj_li.length; i++) {
|
|
|
|
|
// tmp_li.push($events_slct.event_presenter_obj_li[i].event_presenter_id_random);
|
|
|
|
|
// }
|
|
|
|
|
// event_presenter_id_random_li = tmp_li;
|
|
|
|
|
|
|
|
|
|
// event_presenter_id_random_li = $events_slct.event_presenter_obj_li.map(presenter_obj => presenter_obj.event_presenter_id_random);
|
|
|
|
|
|
|
|
|
|
// Finally done with the search.
|
|
|
|
|
$events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
$events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'done';
|
|
|
|
|
|
|
|
|
|
// if (log_lvl > 1) {
|
|
|
|
|
// console.log(`TEST SEARCH - event_presenter_id_random_li:`, event_presenter_id_random_li);
|
|
|
|
|
// // console.log(`TEST SEARCH - search live query: ${$lq_kv__event_presenter_obj_li}`);
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Updated 2024-10-15
|
|
|
|
|
async function handle_qry__event_session(
|
|
|
|
|
{
|
|
|
|
|
qry_files = null,
|
|
|
|
|
// file_count = false,
|
|
|
|
|
// file_count_all = null,
|
|
|
|
|
// ft_search_str = '',
|
|
|
|
|
// lk_search_str = '',
|
|
|
|
|
qry_poc_agree = null,
|
|
|
|
|
qry_poc_kv_json = null,
|
|
|
|
|
qry_poc_bios = null,
|
|
|
|
|
enabled = $events_loc.pres_mgmt.qry_enabled ?? 'enabled',
|
|
|
|
|
hidden = $events_loc.pres_mgmt.qry_hidden ?? 'not_hidden',
|
|
|
|
|
limit = $events_loc.pres_mgmt.qry_limit__sessions ?? 150,
|
|
|
|
|
log_lvl = 0,
|
|
|
|
|
}: {
|
|
|
|
|
qry_files?: null|boolean,
|
|
|
|
|
// file_count?: boolean,
|
|
|
|
|
// file_count_all?: null|number,
|
|
|
|
|
// ft_search_str?: string,
|
|
|
|
|
// lk_search_str?: string,
|
|
|
|
|
qry_poc_agree?: null|boolean,
|
|
|
|
|
qry_poc_kv_json?: null|boolean,
|
|
|
|
|
qry_poc_bios?: null|boolean,
|
|
|
|
|
enabled?: string,
|
|
|
|
|
hidden?: string,
|
|
|
|
|
limit?: number,
|
|
|
|
|
log_lvl?: number,
|
|
|
|
|
}
|
|
|
|
|
) {
|
|
|
|
|
if (log_lvl) {
|
|
|
|
|
console.log('handle_qry__event_session()');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$events_sess.pres_mgmt.status_qry__search = 'loading';
|
|
|
|
|
$events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'loading';
|
|
|
|
|
|
|
|
|
|
ae_promises.handle_qry__event_session = events_func.qry__event_session({
|
|
|
|
|
api_cfg: $ae_api,
|
|
|
|
|
event_id: $events_slct.event_id,
|
|
|
|
|
// file_count_all: file_count_all,
|
|
|
|
|
// fulltext_search_qry_str: ft_search_str,
|
|
|
|
|
// like_search_qry_str: lk_search_str,
|
|
|
|
|
// external_event_id: $events_loc.pres_mgmt.default__external_registration_id,
|
|
|
|
|
qry_files: qry_files,
|
|
|
|
|
qry_start_datetime: null,
|
|
|
|
|
qry_poc_agree: qry_poc_agree,
|
|
|
|
|
qry_poc_kv_json: qry_poc_kv_json,
|
|
|
|
|
enabled: enabled,
|
|
|
|
|
hidden: hidden,
|
|
|
|
|
limit: limit,
|
|
|
|
|
log_lvl: log_lvl,
|
|
|
|
|
})
|
|
|
|
|
.then(function (search_results) {
|
|
|
|
|
// Processing the results from the search.
|
|
|
|
|
$events_sess.pres_mgmt.status_qry__search = 'processing';
|
|
|
|
|
$events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'processing';
|
|
|
|
|
$events_slct.event_session_obj_li = search_results;
|
|
|
|
|
if (log_lvl) {
|
|
|
|
|
console.log(`Search results:`, search_results);
|
|
|
|
|
}
|
|
|
|
|
// $events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
})
|
|
|
|
|
.finally(() => {
|
|
|
|
|
if (log_lvl) {
|
|
|
|
|
console.log('API query done. Pulling out the event_session_id_random values.');
|
|
|
|
|
}
|
|
|
|
|
// console.log(`TEST search: ${$lq_kv__event_session_obj_li}`);
|
|
|
|
|
|
|
|
|
|
event_session_id_random_li = [];
|
|
|
|
|
|
|
|
|
|
// We need to loop through the array of objects and get the event_session_id_random from each object a new list of event_session_id_randoms. Then we can use this list to get the full objects from the database.
|
|
|
|
|
let tmp_li = []; // This is to prevent the array from constantly updating and triggering the liveQuery.
|
|
|
|
|
if ($events_slct.event_session_obj_li) {
|
|
|
|
|
for (let i = 0; i < $events_slct.event_session_obj_li.length; i++) {
|
|
|
|
|
if (qry_poc_bios && $events_slct.event_session_obj_li[i].poc_kv_json) {
|
|
|
|
|
if ($events_slct.event_session_obj_li[i].poc_kv_json['champion']?.biography.length > 1) {
|
|
|
|
|
console.log(`Biography for session:`, $events_slct.event_session_obj_li[i]);
|
|
|
|
|
tmp_li.push($events_slct.event_session_obj_li[i].event_session_id_random);
|
|
|
|
|
} else {
|
|
|
|
|
console.log(`No biography for session:`, $events_slct.event_session_obj_li[i]);
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
// console.log(`Pushing session to array (no biography):`, $events_slct.event_session_obj_li[i]);
|
|
|
|
|
tmp_li.push($events_slct.event_session_obj_li[i].event_session_id_random);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
event_session_id_random_li = tmp_li;
|
|
|
|
|
|
|
|
|
|
// event_session_id_random_li = $events_slct.event_session_obj_li.map(session_obj => session_obj.event_session_id_random);
|
|
|
|
|
|
|
|
|
|
// Finally done with the search.
|
|
|
|
|
$events_sess.pres_mgmt.status_qry__search = 'done';
|
|
|
|
|
$events_sess.pres_mgmt.status_rpt[$events_loc.pres_mgmt.show_report] = 'done';
|
|
|
|
|
|
|
|
|
|
if (log_lvl > 1) {
|
|
|
|
|
console.log(`TEST SEARCH - event_session_id_random_li:`, event_session_id_random_li);
|
|
|
|
|
// console.log(`TEST SEARCH - search live query: ${$lq_kv__event_session_obj_li}`);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
|