More work on reports and config options
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "osit-aether-app-svelte",
|
||||
"version": "3.1.0",
|
||||
"version": "3.1.1",
|
||||
"description": "One Sky IT's Aether App created with Svelte, SvelteKit, Tailwind CSS, Lucide, Font Awesome, and Skeleton UI. -Scott Idem",
|
||||
"homepage": "https://oneskyit.com/",
|
||||
"private": true,
|
||||
|
||||
@@ -191,11 +191,11 @@ export async function get_ae_obj_li_for_obj_id_crud_v2(
|
||||
headers['order_by_li'] = JSON.stringify(order_by_li);
|
||||
}
|
||||
|
||||
if (limit >= 0) {
|
||||
if (limit > 0) {
|
||||
params['limit'] = limit;
|
||||
}
|
||||
|
||||
if (offset >= 0) {
|
||||
if (offset > 0) {
|
||||
params['offset'] = offset;
|
||||
}
|
||||
|
||||
|
||||
@@ -387,7 +387,7 @@ export async function qry__event_file(
|
||||
qry_file_purpose = null,
|
||||
enabled = 'enabled',
|
||||
hidden = 'not_hidden',
|
||||
limit = 50,
|
||||
limit = 49,
|
||||
offset = 0,
|
||||
order_by_li = {'priority': 'DESC', 'sort': 'DESC', 'created_on': 'DESC', 'updated_on': 'DESC', 'filename': 'ASC', 'extension': 'ASC', 'hosted_file_size': 'ASC'},
|
||||
params = {},
|
||||
@@ -451,6 +451,10 @@ export async function qry__event_file(
|
||||
params_json['qry'].push(qry_param);
|
||||
}
|
||||
|
||||
// if (!limit || limit <= 0) {
|
||||
// limit = null;
|
||||
// }
|
||||
|
||||
if (log_lvl) {
|
||||
console.log('params_json:', params_json);
|
||||
}
|
||||
|
||||
@@ -122,6 +122,7 @@ async function handle_qry__event_file(
|
||||
file_purpose = null,
|
||||
ft_search_str = '',
|
||||
lk_search_str = '',
|
||||
limit = $events_loc.pres_mgmt.qry_limit__files ?? 0,
|
||||
try_cache = true,
|
||||
log_lvl = 0,
|
||||
}: {
|
||||
@@ -130,6 +131,7 @@ async function handle_qry__event_file(
|
||||
file_purpose?: null|string,
|
||||
ft_search_str?: string,
|
||||
lk_search_str?: string,
|
||||
limit?: number,
|
||||
try_cache?: boolean,
|
||||
log_lvl?: number,
|
||||
}
|
||||
@@ -195,7 +197,7 @@ async function handle_qry__event_file(
|
||||
// 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: $events_loc.pres_mgmt.qry_limit__files ?? 35,
|
||||
limit: limit,
|
||||
// params: params,
|
||||
try_cache: try_cache,
|
||||
log_lvl: log_lvl,
|
||||
@@ -931,107 +933,117 @@ async function handle_qry__event_session(
|
||||
|
||||
<!-- Show overview of presenters (status checklist) -->
|
||||
{#if $events_loc.pres_mgmt.show_report == 'presenters_overview' && $events_sess.event_presenter_obj_li}
|
||||
<header class="w-full flex flex-row flex-wrap items-center justify-center gap-1">
|
||||
<h3 class="h4 text-center">
|
||||
Presenters Overview
|
||||
<!-- Sorting options (presenter name, start_datetime, updated_on) -->
|
||||
<label class="label text-sm">
|
||||
<span class="fas fa-sort m-1"></span>
|
||||
Sort by:
|
||||
</h3>
|
||||
{#if $events_sess.pres_mgmt.status_rpt[$events_sess.pres_mgmt?.show_report] == 'loading'}
|
||||
<span class="fas fa-spinner fa-spin m-1"></span>
|
||||
<span>Loading...</span>
|
||||
{/if}
|
||||
|
||||
<div class="flex flex-row items-center justify-center">
|
||||
<!-- Sorting options (presenter name, start_datetime, updated_on) -->
|
||||
<label class="label text-sm">
|
||||
<span class="fas fa-sort m-1"></span>
|
||||
Sort by:
|
||||
|
||||
<select
|
||||
class="inline-block select text-sm w-36 m-1 ae_btn_info"
|
||||
class="inline-block select text-sm w-36 px-1 m-1 ae_btn_info"
|
||||
bind:value={$events_loc.pres_mgmt.qry__presenter_sort}
|
||||
onchange={(event) => {
|
||||
if (event.target.value) {
|
||||
$events_loc.pres_mgmt.qry__presenter_sort = event.target.value;
|
||||
} else {
|
||||
$events_loc.pres_mgmt.qry__presenter_sort = 'updated_on';
|
||||
}
|
||||
if (event.target.value) {
|
||||
$events_loc.pres_mgmt.qry__presenter_sort = event.target.value;
|
||||
} else {
|
||||
$events_loc.pres_mgmt.qry__presenter_sort = 'updated_on';
|
||||
}
|
||||
|
||||
if ($events_loc.pres_mgmt.qry__presenter_sort == 'updated_on') {
|
||||
$events_loc.pres_mgmt.qry__presenter_order_by_li = {
|
||||
'updated_on': 'DESC',
|
||||
'priority': 'DESC',
|
||||
'sort': 'DESC',
|
||||
'given_name': 'ASC',
|
||||
'family_name': 'ASC',
|
||||
'email': 'ASC',
|
||||
'created_on': 'DESC',
|
||||
};
|
||||
} else if ($events_loc.pres_mgmt.qry__presenter_sort == 'given_name') {
|
||||
$events_loc.pres_mgmt.qry__presenter_order_by_li = {
|
||||
'given_name': 'ASC',
|
||||
'family_name': 'ASC',
|
||||
'updated_on': 'DESC',
|
||||
'priority': 'DESC',
|
||||
'sort': 'DESC',
|
||||
'email': 'ASC',
|
||||
'created_on': 'DESC',
|
||||
};
|
||||
} else if ($events_loc.pres_mgmt.qry__presenter_sort == 'family_name') {
|
||||
$events_loc.pres_mgmt.qry__presenter_order_by_li = {
|
||||
'family_name': 'ASC',
|
||||
'given_name': 'ASC',
|
||||
'updated_on': 'DESC',
|
||||
'priority': 'DESC',
|
||||
'sort': 'DESC',
|
||||
'email': 'ASC',
|
||||
'created_on': 'DESC',
|
||||
};
|
||||
} else if ($events_loc.pres_mgmt.qry__presenter_sort == 'email') {
|
||||
$events_loc.pres_mgmt.qry__presenter_order_by_li = {
|
||||
'email': 'ASC',
|
||||
'given_name': 'ASC',
|
||||
'family_name': 'ASC',
|
||||
'updated_on': 'DESC',
|
||||
'priority': 'DESC',
|
||||
'sort': 'DESC',
|
||||
'created_on': 'DESC',
|
||||
if ($events_loc.pres_mgmt.qry__presenter_sort == 'updated_on') {
|
||||
$events_loc.pres_mgmt.qry__presenter_order_by_li = {
|
||||
'updated_on': 'DESC',
|
||||
'priority': 'DESC',
|
||||
'sort': 'DESC',
|
||||
'given_name': 'ASC',
|
||||
'family_name': 'ASC',
|
||||
'email': 'ASC',
|
||||
'created_on': 'DESC',
|
||||
};
|
||||
} else if ($events_loc.pres_mgmt.qry__presenter_sort == 'given_name') {
|
||||
$events_loc.pres_mgmt.qry__presenter_order_by_li = {
|
||||
'given_name': 'ASC',
|
||||
'family_name': 'ASC',
|
||||
'updated_on': 'DESC',
|
||||
'priority': 'DESC',
|
||||
'sort': 'DESC',
|
||||
'email': 'ASC',
|
||||
'created_on': 'DESC',
|
||||
};
|
||||
} else if ($events_loc.pres_mgmt.qry__presenter_sort == 'family_name') {
|
||||
$events_loc.pres_mgmt.qry__presenter_order_by_li = {
|
||||
'family_name': 'ASC',
|
||||
'given_name': 'ASC',
|
||||
'updated_on': 'DESC',
|
||||
'priority': 'DESC',
|
||||
'sort': 'DESC',
|
||||
'email': 'ASC',
|
||||
'created_on': 'DESC',
|
||||
};
|
||||
} else if ($events_loc.pres_mgmt.qry__presenter_sort == 'email') {
|
||||
$events_loc.pres_mgmt.qry__presenter_order_by_li = {
|
||||
'email': 'ASC',
|
||||
'given_name': 'ASC',
|
||||
'family_name': 'ASC',
|
||||
'updated_on': 'DESC',
|
||||
'priority': 'DESC',
|
||||
'sort': 'DESC',
|
||||
'created_on': 'DESC',
|
||||
|
||||
};
|
||||
} else if ($events_loc.pres_mgmt.qry__presenter_sort == 'start_datetime') {
|
||||
$events_loc.pres_mgmt.qry__presenter_order_by_li = {
|
||||
'event_presentation_start_datetime': 'ASC',
|
||||
'priority': 'DESC',
|
||||
'sort': 'DESC',
|
||||
'given_name': 'ASC',
|
||||
'family_name': 'ASC',
|
||||
'email': 'ASC',
|
||||
'updated_on': 'DESC',
|
||||
'created_on': 'DESC',
|
||||
};
|
||||
} else {
|
||||
$events_loc.pres_mgmt.qry__presenter_order_by_li = {
|
||||
'updated_on': 'DESC',
|
||||
'priority': 'DESC',
|
||||
'sort': 'DESC',
|
||||
'given_name': 'ASC',
|
||||
'family_name': 'ASC',
|
||||
'email': 'ASC',
|
||||
'created_on': 'DESC',
|
||||
};
|
||||
}
|
||||
ae_promises.handle_search__event_presenter = handle_search__event_presenter({
|
||||
// ft_search_str: '',
|
||||
// lk_search_str: '',
|
||||
order_by_li: $events_loc.pres_mgmt.qry__presenter_order_by_li,
|
||||
log_lvl: log_lvl,
|
||||
});
|
||||
$events_loc.pres_mgmt.show_report = 'presenters_overview';
|
||||
}}
|
||||
>
|
||||
<option value="updated_on">Updated On</option>
|
||||
<option value="given_name">Given Name</option>
|
||||
<option value="family_name">Family Name</option>
|
||||
<option value="email">Email</option>
|
||||
<option value="start_datetime">Start Date Time</option>
|
||||
<!-- <option value="created_on">Created On</option> -->
|
||||
<!-- <option value="sort">Sort</option> -->
|
||||
<!-- <option value="priority">Priority</option> -->
|
||||
</select>
|
||||
</label>
|
||||
};
|
||||
} else if ($events_loc.pres_mgmt.qry__presenter_sort == 'start_datetime') {
|
||||
$events_loc.pres_mgmt.qry__presenter_order_by_li = {
|
||||
'event_presentation_start_datetime': 'ASC',
|
||||
'priority': 'DESC',
|
||||
'sort': 'DESC',
|
||||
'given_name': 'ASC',
|
||||
'family_name': 'ASC',
|
||||
'email': 'ASC',
|
||||
'updated_on': 'DESC',
|
||||
'created_on': 'DESC',
|
||||
};
|
||||
} else {
|
||||
$events_loc.pres_mgmt.qry__presenter_order_by_li = {
|
||||
'updated_on': 'DESC',
|
||||
'priority': 'DESC',
|
||||
'sort': 'DESC',
|
||||
'given_name': 'ASC',
|
||||
'family_name': 'ASC',
|
||||
'email': 'ASC',
|
||||
'created_on': 'DESC',
|
||||
};
|
||||
}
|
||||
ae_promises.handle_search__event_presenter = handle_search__event_presenter({
|
||||
// ft_search_str: '',
|
||||
// lk_search_str: '',
|
||||
order_by_li: $events_loc.pres_mgmt.qry__presenter_order_by_li,
|
||||
log_lvl: log_lvl,
|
||||
});
|
||||
$events_loc.pres_mgmt.show_report = 'presenters_overview';
|
||||
}}
|
||||
>
|
||||
<option value="updated_on">Updated On</option>
|
||||
<option value="given_name">Given Name</option>
|
||||
<option value="family_name">Family Name</option>
|
||||
<option value="email">Email</option>
|
||||
<option value="start_datetime">Start Date Time</option>
|
||||
<!-- <option value="created_on">Created On</option> -->
|
||||
<!-- <option value="sort">Sort</option> -->
|
||||
<!-- <option value="priority">Priority</option> -->
|
||||
</select>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
</header>
|
||||
|
||||
</h3>
|
||||
<Comp_event_presenter_obj_tbl
|
||||
bind:event_presenter_obj_li={$events_sess.event_presenter_obj_li}
|
||||
show_presentation_fields={true}
|
||||
@@ -1055,7 +1067,7 @@ async function handle_qry__event_session(
|
||||
<!-- Show list of offsets: 10 minutes, 1 hours, 6 hours, 12 hours, 24 hours, 48 hours, 72 hours -->
|
||||
<div class="flex flex-row items-center justify-center">
|
||||
<select
|
||||
class="inline-block select text-sm p-1 w-40 m-1 ae_btn_info"
|
||||
class="inline-block select text-sm px-1 w-40 m-1 ae_btn_info"
|
||||
bind:value={$events_loc.pres_mgmt.qry__files_offset_seconds}
|
||||
onchange={() => {
|
||||
if ($events_loc.pres_mgmt?.qry__files_offset_seconds) {
|
||||
@@ -1100,7 +1112,7 @@ async function handle_qry__event_session(
|
||||
<select
|
||||
id="file_purpose"
|
||||
name="file_purpose"
|
||||
class="inline-block select text-sm w-40 p-1 m-1 ae_btn_info"
|
||||
class="inline-block select text-sm w-40 px-1 m-1 ae_btn_info"
|
||||
bind:value={$events_loc.pres_mgmt.qry__file_purpose}
|
||||
onchange={() => {
|
||||
handle_qry__event_file({
|
||||
@@ -1130,6 +1142,32 @@ async function handle_qry__event_session(
|
||||
{/each}
|
||||
{/if}
|
||||
</select>
|
||||
|
||||
<!-- Max files select options -->
|
||||
|
||||
<select
|
||||
id="qry_limit__files"
|
||||
bind:value={$events_loc.pres_mgmt.qry_limit__files}
|
||||
class="inline-block select text-sm px-1 w-40 m-1 ae_btn_info"
|
||||
onchange={() => {
|
||||
handle_qry__event_file({
|
||||
created_on_offset: $events_loc.pres_mgmt.qry__files_offset_seconds ?? 0,
|
||||
file_purpose: $events_loc.pres_mgmt.qry__file_purpose ?? null,
|
||||
limit: $events_loc.pres_mgmt.qry_limit__files ?? 100,
|
||||
log_lvl: log_lvl,
|
||||
});
|
||||
$events_loc.pres_mgmt.show_report = 'recent_files';
|
||||
}}
|
||||
>
|
||||
<option value={0}>-- max not set --</option>
|
||||
<option value={25}>25 files</option>
|
||||
<option value={50}>50 files</option>
|
||||
<option value={75}>75 files</option>
|
||||
<option value={100}>100 files</option>
|
||||
<option value={200}>200 files</option>
|
||||
<option value={500}>500 files</option>
|
||||
</select>
|
||||
|
||||
</div>
|
||||
|
||||
</header>
|
||||
|
||||
@@ -57,7 +57,7 @@ export let hide: boolean = true;
|
||||
<select
|
||||
id="qry_limit__presenters"
|
||||
bind:value={$events_loc.pres_mgmt.qry_limit__presenters}
|
||||
class="select w-20 text-sm preset-tonal-surface"
|
||||
class="select w-20 text-sm preset-tonal-surface px-1"
|
||||
>
|
||||
<option value={25}>25</option>
|
||||
<option value={50}>50</option>
|
||||
@@ -82,7 +82,7 @@ export let hide: boolean = true;
|
||||
<select
|
||||
id="qry_limit__sessions"
|
||||
bind:value={$events_loc.pres_mgmt.qry_limit__sessions}
|
||||
class="select w-20 text-sm preset-tonal-surface"
|
||||
class="select w-20 text-sm preset-tonal-surface px-1"
|
||||
>
|
||||
<option value={25}>25</option>
|
||||
<option value={50}>50</option>
|
||||
@@ -105,7 +105,7 @@ export let hide: boolean = true;
|
||||
<select
|
||||
id="qry_limit__files"
|
||||
bind:value={$events_loc.pres_mgmt.qry_limit__files}
|
||||
class="select w-20 text-sm preset-tonal-surface"
|
||||
class="select w-20 text-sm preset-tonal-surface px-1"
|
||||
>
|
||||
<option value={25}>25</option>
|
||||
<option value={50}>50</option>
|
||||
|
||||
Reference in New Issue
Block a user