Work on reports and prep for LCI
This commit is contained in:
@@ -102,17 +102,21 @@ if (log_lvl) {
|
||||
href="/events/{event_presenter_obj?.event_id_random}/presenter/{event_presenter_obj?.event_presenter_id_random}"
|
||||
class="text-blue-500 underline hover:text-blue-800"
|
||||
>
|
||||
{event_presenter_obj?.full_name}
|
||||
{event_presenter_obj?.full_name ?? '-- not set --'}
|
||||
</a>
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<span class="fas fa-envelope"></span>
|
||||
<a
|
||||
href="mailto:{event_presenter_obj?.email}"
|
||||
class="text-blue-500 underline hover:text-blue-800"
|
||||
>
|
||||
{event_presenter_obj?.email}
|
||||
</a>
|
||||
{#if event_presenter_obj?.email}
|
||||
<a
|
||||
href="mailto:{event_presenter_obj?.email}"
|
||||
class="text-blue-500 underline hover:text-blue-800"
|
||||
>
|
||||
{event_presenter_obj?.email}
|
||||
</a>
|
||||
{:else}
|
||||
<span class="dim">-- not set --</span>
|
||||
{/if}
|
||||
</td>
|
||||
<td class="px-4 py-2">{event_presenter_obj?.agree ? 'Yes' : 'No'}</td>
|
||||
<td class="px-4 py-2">{event_presenter_obj?.file_count ?? '0'}</td>
|
||||
@@ -124,18 +128,40 @@ if (log_lvl) {
|
||||
href="/events/{event_presenter_obj?.event_id}/session/{event_presenter_obj?.event_session_id}"
|
||||
class="text-blue-500 underline hover:text-blue-800"
|
||||
>
|
||||
{event_presenter_obj?.event_session_name}
|
||||
{#if event_presenter_obj?.event_session_name}
|
||||
{event_presenter_obj?.event_session_name}
|
||||
{:else}
|
||||
<span class="dim">-- not set --</span>
|
||||
{/if}
|
||||
</a>
|
||||
</td>
|
||||
<td class="px-4 py-2 text-sm">{ae_util.iso_datetime_formatter(event_presenter_obj?.event_session_start_datetime, 'datetime_iso_12_no_seconds')}</td>
|
||||
<td class="px-4 py-2 text-sm">
|
||||
{#if event_presenter_obj?.event_session_start_datetime}
|
||||
{ae_util.iso_datetime_formatter(event_presenter_obj?.event_session_start_datetime, 'datetime_iso_12_no_seconds')}
|
||||
{:else}
|
||||
<span class="dim">-- not set --</span>
|
||||
{/if}
|
||||
</td>
|
||||
{/if}
|
||||
|
||||
{#if show_presentation_fields}
|
||||
<td class="px-4 py-2 lg:text-xs">{event_presenter_obj?.event_presentation_name}</td>
|
||||
<td class="px-4 py-2 lg:text-xs">{ae_util.iso_datetime_formatter(event_presenter_obj?.event_presentation_start_datetime, 'time_12_short')}</td>
|
||||
<td class="px-4 py-2 lg:text-xs">
|
||||
{#if event_presenter_obj?.event_presentation_start_datetime}
|
||||
{ae_util.iso_datetime_formatter(event_presenter_obj?.event_presentation_start_datetime, 'time_12_short')}
|
||||
{:else}
|
||||
<span class="dim">-- not set --</span>
|
||||
{/if}
|
||||
</td>
|
||||
{/if}
|
||||
|
||||
<td class="px-4 py-2 text-sm">{ae_util.iso_datetime_formatter(event_presenter_obj?.updated_on, 'datetime_iso_12_no_seconds')}</td>
|
||||
<td class="px-4 py-2 text-sm">
|
||||
{#if event_presenter_obj?.updated_on}
|
||||
{ae_util.iso_datetime_formatter(event_presenter_obj?.updated_on, 'datetime_iso_12_no_seconds')}
|
||||
{:else}
|
||||
<span class="dim">-- not set --</span>
|
||||
{/if}
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
{/each}
|
||||
|
||||
@@ -304,6 +304,7 @@ async function handle_search__event_presenter(
|
||||
biography = null,
|
||||
ft_search_str = '',
|
||||
lk_search_str = '',
|
||||
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',
|
||||
@@ -316,8 +317,9 @@ async function handle_search__event_presenter(
|
||||
biography?: null|boolean,
|
||||
ft_search_str?: string,
|
||||
lk_search_str?: string,
|
||||
search_delay?: number, // In milliseconds
|
||||
max_tries?: number,
|
||||
order_by_li?: key_val, // Order by fields and directions.
|
||||
// search_delay?: number, // In milliseconds
|
||||
// max_tries?: number,
|
||||
params?: key_val,
|
||||
try_cache?: boolean,
|
||||
log_lvl?: number,
|
||||
@@ -330,7 +332,7 @@ async function 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';
|
||||
|
||||
let order_by_li = {'updated_on': 'DESC', 'priority': 'DESC', 'sort': 'DESC', 'given_name': 'ASC', 'family_name': 'ASC', 'email': 'ASC', 'created_on': 'DESC'};
|
||||
// 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,
|
||||
@@ -680,7 +682,7 @@ async function handle_qry__event_session(
|
||||
}}
|
||||
class:hidden={$lq__event_obj?.mod_pres_mgmt_json?.hide__report_kv.presenter_no_bio}
|
||||
class="btn btn-sm variant-ghost-success hover:variant-filled-success transition-all m-1"
|
||||
title="NOT READY YET: Show presenters with bios."
|
||||
title="Show presenters with bios."
|
||||
>
|
||||
{#if $events_sess.pres_mgmt?.show_report == 'presenters_biography' && $events_sess.pres_mgmt.status_rpt[$events_sess.pres_mgmt?.show_report] == 'loading'}
|
||||
<span class="fas fa-spinner fa-spin"></span>
|
||||
@@ -689,6 +691,29 @@ async function handle_qry__event_session(
|
||||
Presenter Bios
|
||||
</button>
|
||||
|
||||
<button
|
||||
type="button"
|
||||
disabled={!$ae_loc.trusted_access}
|
||||
on:click={() => {
|
||||
handle_search__event_presenter({
|
||||
biography: true,
|
||||
ft_search_str: '',
|
||||
lk_search_str: '',
|
||||
log_lvl: log_lvl,
|
||||
});
|
||||
$events_loc.pres_mgmt.show_report = 'presenters_overview';
|
||||
}}
|
||||
class:hidden={$lq__event_obj?.mod_pres_mgmt_json?.hide__report_kv.presenter_overview}
|
||||
class="btn btn-sm variant-ghost-success hover:variant-filled-success transition-all m-1"
|
||||
title="NOT READY YET: Show overview of presenters' statuses."
|
||||
>
|
||||
{#if $events_sess.pres_mgmt?.show_report == 'presenters_overview' && $events_sess.pres_mgmt.status_rpt[$events_sess.pres_mgmt?.show_report] == 'loading'}
|
||||
<span class="fas fa-spinner fa-spin"></span>
|
||||
{/if}
|
||||
<span class="fas fa-tasks m-1"></span>
|
||||
Overview of Presenters
|
||||
</button>
|
||||
|
||||
</span>
|
||||
|
||||
<span class="border border-gray-200 rounded-md p-1">
|
||||
@@ -766,9 +791,9 @@ async function handle_qry__event_session(
|
||||
{/if}
|
||||
</button>
|
||||
</h3>
|
||||
{#if !$events_loc.pres_mgmt.rpt__session_poc_agree}
|
||||
<!-- {#if !$events_loc.pres_mgmt.rpt__session_poc_agree}
|
||||
<p class="text-center text-red-500 font-bold">This report is not complete! Some records will be missing from these results. This report is being worked on.</p>
|
||||
{/if}
|
||||
{/if} -->
|
||||
|
||||
<Comp_event_session_obj_tbl
|
||||
link_to_type="event"
|
||||
@@ -828,9 +853,9 @@ async function handle_qry__event_session(
|
||||
{/if}
|
||||
</button>
|
||||
</h3>
|
||||
{#if !$events_loc.pres_mgmt.rpt__presenter_agree}
|
||||
<!-- {#if !$events_loc.pres_mgmt.rpt__presenter_agree}
|
||||
<p class="text-center text-red-500 font-bold">This report is not complete! Some records will be missing from these results. This report is being worked on.</p>
|
||||
{/if}
|
||||
{/if} -->
|
||||
|
||||
<Comp_event_presenter_obj_tbl
|
||||
bind:event_presenter_id_random_li={event_presenter_id_random_li}
|
||||
@@ -854,6 +879,117 @@ async function handle_qry__event_session(
|
||||
</Comp_event_presenter_obj_tbl>
|
||||
{/if}
|
||||
|
||||
<!-- Show overview of presenters (status checklist) -->
|
||||
{#if $events_loc.pres_mgmt.show_report == 'presenters_overview' && event_presenter_id_random_li}
|
||||
<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:
|
||||
|
||||
<select
|
||||
class="select text-sm w-36 variant-glass-warning hover:variant-ghost-warning transition-all m-1"
|
||||
bind:value={$events_loc.pres_mgmt.qry__presenter_sort}
|
||||
on:change={
|
||||
(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 ($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',
|
||||
};
|
||||
}
|
||||
handle_search__event_presenter({
|
||||
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>
|
||||
|
||||
</h3>
|
||||
<Comp_event_presenter_obj_tbl
|
||||
bind:event_presenter_id_random_li={event_presenter_id_random_li}
|
||||
show_presentation_fields={true}
|
||||
show_session_fields={true}
|
||||
log_lvl={log_lvl}
|
||||
>
|
||||
</Comp_event_presenter_obj_tbl>
|
||||
{/if}
|
||||
|
||||
<!-- Show recently uploaded files -->
|
||||
{#if $events_loc.pres_mgmt.show_report == 'recent_files' && event_file_id_random_li}
|
||||
@@ -888,13 +1024,16 @@ async function handle_qry__event_session(
|
||||
>
|
||||
<option value="">-- not set --</option>
|
||||
<option value="600">10 minutes</option>
|
||||
<option value="1800">30 minutes</option>
|
||||
<option value="3600">1 hour</option>
|
||||
<option value="10800">2 hours</option>
|
||||
<option value="21600">6 hours</option>
|
||||
<option value="43200">12 hours</option>
|
||||
<option value="86400">24 hours</option>
|
||||
<option value="129600">36 hours</option>
|
||||
<option value="172800">48 hours</option>
|
||||
<option value="259200">72 hours</option>
|
||||
<option value="604800">1 week</option>
|
||||
</select>
|
||||
</h3>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user