diff --git a/documentation/Aether_Events_Exhibitor_Leads_v3.md b/documentation/Aether_Events_Exhibitor_Leads_v3.md index 645aa97f..071ff5ff 100644 --- a/documentation/Aether_Events_Exhibitor_Leads_v3.md +++ b/documentation/Aether_Events_Exhibitor_Leads_v3.md @@ -102,7 +102,7 @@ License: ## [tab 4] Manage / Config ### Exhibit Specific -* Priorty/payment toggle - Administrator Access or above +* Priority/payment toggle - Administrator Access or above * Max licenses (number) - readonly or edit for Administrator Access or above * Small devices (number) - readonly or edit for Administrator Access or above * Large devices (number) - readonly or edit for Administrator Access or above diff --git a/documentation/Aether_Events_Exhibitor_Leads_v3_detail.md b/documentation/Aether_Events_Exhibitor_Leads_v3_detail.md index 5781c7a9..7bc91469 100644 --- a/documentation/Aether_Events_Exhibitor_Leads_v3_detail.md +++ b/documentation/Aether_Events_Exhibitor_Leads_v3_detail.md @@ -78,27 +78,76 @@ I am probably using the term "tab" loosely here. It may just be sections that sh * Button to trigger QR scan (opens camera and scans QR code on badge) * Button to "Add as Lead" if Attendee Badge found and not already a Lead * Button to "View Lead" if Attendee Badge found and already a Lead +Functions needed: + * Search function to find Attendee Badge by Badge ID, QR code, name, email, or affiliations. + * QR code scan function to read QR code and find Attendee Badge. + * Add Lead function to create Exhibit_tracking entry linking Exhibit and Attendee Badge. ### [tab 3] Leads - List of Attendee Leads for Exhibitor * Allow for toggle between showing all per Exhibit and per licensed user based on their email address. Not perfect, but works well enough. * Allow for easy edit or remove +* Sections: + * List of Leads with basic info and buttons to Edit or Remove + * Options: + * Filter by Licensed user email address (dropdown of emails that have added leads for this Exhibit) + * Toggle for show/hide Hidden records + * Select options for sorting: Newest added first, Oldest added first, Alpha ascending, Alpha descending, Last updated first * Buttons and Inputs: * Button to Export Data - CSV or XLSX * Toggle for show/hide Hidden records * Select options for sorting: Newest added first, Oldest added first, Alpha ascending, Alpha descending, Last updated first + * Should it have a text search? +* NOTE: It is probably easiest for them to us the search tab to find a lead that has already been added. It will show "View Lead" button if already added. +Functions needed: + * Load Leads function to get Exhibit_tracking entries for the Exhibit. + * Filter function to filter by Licensed user email address. + * Sort function to sort by selected option. + * Export function to export displayed Leads to CSV or XLSX. -### [tab 4] Manage - Leads (app and exhibit) Manage -* Show list of Leads added for this Exhibit. -* Allow for easy edit or remove -* Allow for sorting: Newest added first, Oldest added first, Alpha ascending, Alpha descending, Last updated first -* Allow for toggle for show/hide Hidden records -* Allow for filtering by Licensed user email address +### [tab 4] Manage - Leads (app and exhibit) Manage / Config +#### Exhibit Specific +* Priority/payment toggle - Administrator Access or above +* Max licenses (number) - readonly or edit for Administrator Access or above +* Small devices (number) - readonly or edit for Administrator Access or above +* Large devices (number) - readonly or edit for Administrator Access or above +* Exhibit (shared) Passcode +* Same Exhibit Leads License list component as the Start tab's Licensed Users section + +#### App Specific + +* Show/Hide Payment Tab +* Additional Settings: + * List refresh interval in seconds - default 25 seconds; 1 second to 2 minutes (120000) + * Basic reload/refresh + * Clear Indexed DB + * Clear localStorage + * Auto hide header/footer on sign in - default true + * (?) Turn on iframe mode + * (?) Show or hide additional details - Use "$events_loc.show_details"? + +* Sections: + * Exhibit Specific Manage/Config + * App Specific Manage/Config * Buttons and Inputs: - * Button to Export Data - CSV or XLSX - * Toggle for show/hide Hidden records - * Select options for sorting: Newest added first, Oldest added first, Alpha ascending, Alpha descending, Last updated first - * Filter by Licensed user email address (dropdown of emails that have added leads for this Exhibit) - - - + * Exhibit Specific: + * Priority/payment toggle - Administrator Access or above + * Max licenses (number) - readonly or edit for Administrator Access or above + * Small devices (number) - readonly or edit for Administrator Access or above + * Large devices (number) - readonly or edit for Administrator Access or above + * Exhibit (shared) Passcode + * Same Exhibit Leads License list component as the Start tab's Licensed Users section + * App Specific: + * Show/Hide Payment Tab + * Show last refresh time and counter for next refresh based on the List refresh interval setting. + * Additional Settings: + * List refresh interval in seconds - default 25 seconds; 1 second to 2 minutes (120000) + * Basic reload/refresh (F5) + * Clear Indexed DB + * Clear localStorage + * Auto hide header/footer on sign in - default true + * (?) Turn on iframe mode + * (?) Show or hide additional details - Use "$events_loc.show_details"? +* Functions: + * Update Exhibit configuration function to update the Exhibit with the new settings. + * Update App configuration function to update the app-wide settings for the Leads module. diff --git a/src/routes/events/[event_id]/(leads)/leads/+layout.svelte b/src/routes/events/[event_id]/(leads)/leads/+layout.svelte index fadaa765..a7062e7b 100644 --- a/src/routes/events/[event_id]/(leads)/leads/+layout.svelte +++ b/src/routes/events/[event_id]/(leads)/leads/+layout.svelte @@ -7,6 +7,6 @@ // Basic layout for the leads module -
Booth #{$lq__exhibit_obj?.code ?? '...'}
+Booth #{$lq__exhibit_obj?.code ?? '...'}
Searching leads...
+Searching leads...
-Placeholder for attendee lookup.
-No attendees found matching "{search_query}"
+ {/if} +Placeholder for QR scanner component.
-Point camera at the badge QR code
+ + {:else if scanning_status === 'found' || scanning_status === 'adding'} +{found_badge?.affiliations || ''}
+{found_badge?.full_name}
+Resetting scanner...
+{error_msg}
+ +