From ef583e1328375ac6c4763b8a1cc8d667c7850b3c Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Mon, 8 Apr 2024 19:12:44 -0400 Subject: [PATCH] Getting the badge search really ready --- src/app.postcss | 8 + src/lib/ae_events_functions.ts | 7 +- src/lib/ae_stores.ts | 1 + src/lib/element_data_store.svelte | 15 +- src/routes/+layout.ts | 1 + src/routes/events_badges/+layout.svelte | 1 + src/routes/events_badges/review/+page.svelte | 167 ++++++++++++++++-- .../exhibit/[slug]/leads_list.svelte | 6 +- 8 files changed, 181 insertions(+), 25 deletions(-) diff --git a/src/app.postcss b/src/app.postcss index 72b7e23b..a8c0fc4b 100644 --- a/src/app.postcss +++ b/src/app.postcss @@ -297,4 +297,12 @@ section.ae_quick_popover_small { max-height: 95%; min-width: 50%; max-width: 95%; +} + + +.fade_50 { + opacity: 0.5; +} +.fade_50:hover { + opacity: 1; } \ No newline at end of file diff --git a/src/lib/ae_events_functions.ts b/src/lib/ae_events_functions.ts index b6d75e88..7fc2fcea 100644 --- a/src/lib/ae_events_functions.ts +++ b/src/lib/ae_events_functions.ts @@ -191,6 +191,11 @@ async function handle_search__event_badge( let params_json: key_val = {}; + if (!fulltext_search_qry_str && !like_search_qry_str) { + console.log('No search string provided!!!'); + return false; // Returning false instead of [] because no search was performed. + } + if (fulltext_search_qry_str && fulltext_search_qry_str.length > 2) { params_json['ft_qry'] = { 'default_qry_str': fulltext_search_qry_str, @@ -227,7 +232,7 @@ async function handle_search__event_badge( params_json['and_qry']['badge_type_code'] = type_code; } - let order_by_li = {'priority': 'DESC', 'sort': 'DESC', 'family_name': 'ASC', 'given_name': 'ASC', 'updated_on': 'DESC', 'created_on': 'DESC'}; + let order_by_li = {'print_count': 'ASC', 'priority': 'DESC', 'sort': 'DESC', 'given_name': 'ASC', 'family_name': 'ASC', 'updated_on': 'DESC', 'created_on': 'DESC'}; // $events_sess.badges.status_qry__search = 'loading'; ae_promises.search__event_badge = await api.get_ae_obj_li_for_obj_id_crud({ diff --git a/src/lib/ae_stores.ts b/src/lib/ae_stores.ts index 69926761..66f4fd5b 100644 --- a/src/lib/ae_stores.ts +++ b/src/lib/ae_stores.ts @@ -50,6 +50,7 @@ export let ae_app_local_data_struct: key_val = { slct__event_id: null, slct__event_badge_template_id: null, slct__sponsorship_cfg_id: null, + header_image_path: null, }, 'page_access_code_li': {'administrator': '11500', 'trusted': '19111', 'authenticated': '00000'}, diff --git a/src/lib/element_data_store.svelte b/src/lib/element_data_store.svelte index 64714059..f537a0ad 100644 --- a/src/lib/element_data_store.svelte +++ b/src/lib/element_data_store.svelte @@ -9,6 +9,7 @@ import { ae_util } from '$lib/ae_utils'; import type { key_val } from '$lib/ae_stores'; export let expire_minutes: number = 10; +export let mount_reload_sec: number = 0; export let ds_code: string; export let ds_name: null|string = null; @@ -133,12 +134,14 @@ onMount(() => { console.log('Element: Data Store element_data_store.svelte'); // console.log('ae_ MOUNTED Browser detected.'); - // Wait for random number of milliseconds to avoid all data stores being reloaded at the same time. - let random_ms = Math.floor(Math.random() * 15000); - console.log(`ae_e_data_store: Random number of milliseconds: ${random_ms}`); - setTimeout(() => { - trigger = 'load__ds__code'; - }, random_ms); + if (mount_reload_sec) { + // Wait for random number of milliseconds to avoid all data stores being reloaded at the same time. + let random_ms = Math.floor(Math.random() * mount_reload_sec * 1000); + console.log(`ae_e_data_store: Random number of milliseconds: ${random_ms}`); + setTimeout(() => { + trigger = 'load__ds__code'; + }, random_ms); + } }); // let ds_code_li = {}; //: key_val; // = ae_loc_tmp.ds; diff --git a/src/routes/+layout.ts b/src/routes/+layout.ts index 36360ef5..995627e0 100644 --- a/src/routes/+layout.ts +++ b/src/routes/+layout.ts @@ -150,6 +150,7 @@ export async function load({ fetch, params, parent, route, url }) { // params, r ae_loc_init['site_id'] = site_domain_results.site_id_random; ae_loc_init['site_domain_id'] = site_domain_results.site_domain_id_random; ae_loc_init['site_enable'] = site_domain_results.enable; + ae_loc_init['site_header_image_path'] = site_domain_results.header_image_path; ae_loc_init['site_style_href'] = site_domain_results.style_href; ae_loc_init['site_google_tracking_id'] = site_domain_results.google_tracking_id; ae_loc_init['site_cfg_json'] = site_domain_results.cfg_json; diff --git a/src/routes/events_badges/+layout.svelte b/src/routes/events_badges/+layout.svelte index e267d86a..72902d02 100644 --- a/src/routes/events_badges/+layout.svelte +++ b/src/routes/events_badges/+layout.svelte @@ -117,6 +117,7 @@ onMount(() => { {:else} -
- No badges found. +
+ Type your name, email, or affiliations and results will start to appear automatically.
+ + {#if $events_sess.badges.fulltext_search_qry_str && $events_sess.badges.fulltext_search_qry_str.length > 5} +
+ No badges found. Please change your search. +
+ {/if} {/if} diff --git a/src/routes/events_leads/exhibit/[slug]/leads_list.svelte b/src/routes/events_leads/exhibit/[slug]/leads_list.svelte index 656d6474..d88b01e4 100644 --- a/src/routes/events_leads/exhibit/[slug]/leads_list.svelte +++ b/src/routes/events_leads/exhibit/[slug]/leads_list.svelte @@ -174,7 +174,7 @@ let refresh_leads_list = setInterval(function () { @@ -388,12 +388,12 @@ let refresh_leads_list = setInterval(function () {