Implement exhibitor search constraints and sync telemetry
- Restricted public exhibitor search to Priority (paid) items only. - Enforced 3-character search minimum for non-trusted users on landing page. - Implemented real-time sync telemetry (last refresh and countdown) in Manage tab. - Added auto-refresh logic with configurable intervals.
This commit is contained in:
@@ -362,6 +362,7 @@ export async function search__exhibit({
|
||||
fulltext_search_qry_str = null,
|
||||
enabled = 'enabled',
|
||||
hidden = 'not_hidden',
|
||||
priority = 'all',
|
||||
view = 'default',
|
||||
order_by_li = { name: 'ASC' },
|
||||
limit = 100,
|
||||
@@ -374,6 +375,7 @@ export async function search__exhibit({
|
||||
fulltext_search_qry_str?: string | null;
|
||||
enabled?: 'enabled' | 'all' | 'not_enabled';
|
||||
hidden?: 'hidden' | 'all' | 'not_hidden';
|
||||
priority?: 'all' | 'priority' | 'not_priority';
|
||||
view?: string;
|
||||
order_by_li?: any;
|
||||
limit?: number;
|
||||
@@ -398,6 +400,9 @@ export async function search__exhibit({
|
||||
if (hidden === 'hidden') search_query.and.push({ field: 'hide', op: 'eq', value: 1 });
|
||||
else if (hidden === 'not_hidden') search_query.and.push({ field: 'hide', op: 'eq', value: 0 });
|
||||
|
||||
if (priority === 'priority') search_query.and.push({ field: 'priority', op: 'eq', value: 1 });
|
||||
else if (priority === 'not_priority') search_query.and.push({ field: 'priority', op: 'eq', value: 0 });
|
||||
|
||||
try {
|
||||
const result_li = await api.search_ae_obj_v3({
|
||||
api_cfg,
|
||||
|
||||
@@ -477,6 +477,9 @@ const events_session_data_struct: key_val = {
|
||||
|
||||
submit_status__search: null, // 'searching', 'complete'
|
||||
|
||||
last_refresh_time: null as string | null,
|
||||
next_refresh_countdown: 0,
|
||||
|
||||
// The entered_passcode is the exhibit booths shared passcode for staff. This is used to initially access the lead retrieval service.
|
||||
entered_passcode: null,
|
||||
|
||||
|
||||
Reference in New Issue
Block a user