Reports can set max count. Bug fixes. Clean up.

This commit is contained in:
Scott Idem
2024-07-17 17:08:09 -04:00
parent 625169a321
commit 064bba3d62
7 changed files with 189 additions and 37 deletions

View File

@@ -420,7 +420,10 @@ async function handle_search__event_session(
<span class="fas fa-home mx-1"></span>
X
</a> -->
<a href="/events_pres_mgmt/event/{$lq__event_obj?.event_id_random}/reports" class="{ae_snip.classes__events_pres_mgmt_menu__button}">
<a
href="/events_pres_mgmt/event/{$lq__event_obj?.event_id_random}/reports" class="{ae_snip.classes__events_pres_mgmt_menu__button}"
class:hidden={!$ae_loc.trusted_access}
>
<span class="fas fa-chart-line mx-1"></span>
Pres Mgmt Reports
</a>

View File

@@ -1,6 +1,7 @@
<script lang="ts">
/** @type {import('./$types').PageData} */
export let data: any;
let log_lvl = 0;
// console.log(`ae_events_pres_mgmt event [slug] +page.svelte data:`, data);
import { onMount } from 'svelte';
@@ -66,9 +67,9 @@ async function handle_search__event_file(
params = {
'qry__enabled': 'enabled',
'qry__hidden': 'not_hidden',
'qry__limit': 75,},
'qry__limit': 35,},
try_cache=false,
log_lvl=1,
log_lvl=0,
}: {
api_cfg: any,
event_id: string,
@@ -93,7 +94,7 @@ async function handle_search__event_file(
// external_event_id: $events_loc.pres_mgmt.default__external_registration_id,
params: params,
try_cache: try_cache,
log_lvl: 0,
log_lvl: log_lvl,
})
.then(function (search_results) {
// Processing the results from the search.
@@ -152,6 +153,7 @@ async function handle_search__event_presenter(
api_cfg,
event_id,
agree = null,
biography = null,
ft_search_str = '',
lk_search_str = '',
search_delay = 0,
@@ -161,11 +163,12 @@ async function handle_search__event_presenter(
'qry__hidden': 'not_hidden',
'qry__limit': 200,},
try_cache=false,
log_lvl=1,
log_lvl=0,
}: {
api_cfg: any,
event_id: string,
agree?: null|boolean,
biography?: null|boolean,
ft_search_str?: string,
lk_search_str?: string,
search_delay?: number, // In milliseconds
@@ -183,6 +186,7 @@ async function handle_search__event_presenter(
api_cfg: $ae_api,
event_id: $events_slct.event_id,
agree: agree,
biography: biography,
fulltext_search_qry_str: ft_search_str,
ft_presenter_search_qry_str: null,
like_search_qry_str: lk_search_str,
@@ -191,7 +195,7 @@ async function handle_search__event_presenter(
// external_event_id: $events_loc.pres_mgmt.default__external_registration_id,
params: params,
try_cache: try_cache,
log_lvl: 0,
log_lvl: log_lvl,
})
.then(function (search_results) {
// Processing the results from the search.
@@ -354,11 +358,12 @@ async function handle_search__event_presenter(
params: {
'qry__enabled': 'enabled',
'qry__hidden': 'not_hidden',
'qry__limit': 35,},
'qry__limit': $events_sess.pres_mgmt.qry_max__presenters,},
try_cache: false,
log_lvl: 1,
log_lvl: log_lvl,
});
$events_sess.pres_mgmt.show_report__presenters_agree = !$events_sess.pres_mgmt.show_report__presenters_agree;
$events_sess.pres_mgmt.show_report__presenters_biography = false;
$events_sess.pres_mgmt.show_report__recent_files = false;
}}
class="btn btn-sm variant-ghost-success hover:variant-filled-success transition-all mx-1"
@@ -373,7 +378,38 @@ async function handle_search__event_presenter(
<button
type="button"
disabled={!$ae_loc.administrator_access}
disabled={!$ae_loc.trusted_access}
on:click={() => {
handle_search__event_presenter({
api_cfg: $ae_api,
event_id: $events_slct.event_id,
biography: true,
ft_search_str: '',
lk_search_str: '',
params: {
'qry__enabled': 'enabled',
'qry__hidden': 'not_hidden',
'qry__limit': $events_sess.pres_mgmt.qry_max__presenters,},
try_cache: false,
log_lvl: log_lvl,
});
$events_sess.pres_mgmt.show_report__presenters_biography = !$events_sess.pres_mgmt.show_report__presenters_biography;
$events_sess.pres_mgmt.show_report__presenters_agree = false;
$events_sess.pres_mgmt.show_report__recent_files = false;
}}
class="btn btn-sm variant-ghost-success hover:variant-filled-success transition-all mx-1"
title="NOT READY YET: Show presenters with bios."
>
{#if $events_sess.pres_mgmt.status_rpt__presenters_biography == 'loading'}
<span class="fas fa-spinner fa-spin"></span>
{/if}
<span class="fas fa-book mx-1"></span>
Presenter Bios
</button>
<button
type="button"
disabled={!$ae_loc.trusted_access}
on:click={() => {
handle_search__event_file({
api_cfg: $ae_api,
@@ -384,15 +420,16 @@ async function handle_search__event_presenter(
params: {
'qry__enabled': 'enabled',
'qry__hidden': 'not_hidden',
'qry__limit': 35,},
'qry__limit': $events_sess.pres_mgmt.qry_max__files,},
try_cache: false,
log_lvl: 1,
log_lvl: log_lvl,
});
$events_sess.pres_mgmt.show_report__presenters_agree = false;
$events_sess.pres_mgmt.show_report__presenters_biography = false;
$events_sess.pres_mgmt.show_report__recent_files = !$events_sess.pres_mgmt.show_report__recent_files;
}}
class="btn btn-sm variant-ghost-success hover:variant-filled-success transition-all mx-1"
title="NOT READY YET: Show recent file uploads."
title="Show recent file uploads."
>
{#if $events_sess.pres_mgmt.status_rpt__presenters_agree == 'loading'}
<span class="fas fa-spinner fa-spin"></span>
@@ -401,7 +438,6 @@ async function handle_search__event_presenter(
Recent File Uploads
</button>
</div>
@@ -421,21 +457,111 @@ async function handle_search__event_presenter(
{/if}
{/await} -->
<!-- Show presenters for this presentation -->
<!-- Show presenters that have agreed -->
{#if $events_sess.pres_mgmt.show_report__presenters_agree && event_presenter_id_random_li?.length > 0}
<!-- <div class="overflow-x-auto"> -->
<div class="">
<h3 class="h4 text-center">Presenters Agreed</h3>
<label
class="text-sm"
for="qry_max__presenters">Max results:
<input
type="number"
id="qry_max__presenters"
bind:value={$events_sess.pres_mgmt.qry_max__presenters}
on:change={() => {
handle_search__event_presenter({
api_cfg: $ae_api,
event_id: $events_slct.event_id,
agree: true,
biography: null,
ft_search_str: '',
lk_search_str: '',
params: {
'qry__enabled': 'enabled',
'qry__hidden': 'not_hidden',
'qry__limit': $events_sess.pres_mgmt.qry_max__presenters,},
try_cache: false,
log_lvl: log_lvl,
});
}}
class="input max-w-16 text-sm"
placeholder="Max number of presenters to show"
>
</label>
<Comp_event_presenter_obj_tbl
bind:event_presenter_id_random_li={event_presenter_id_random_li}
show_presentation_fields={true}
show_session_fields={true}
>
</Comp_event_presenter_obj_tbl>
</div>
{/if}
<!-- Show presenters with bios -->
{#if $events_sess.pres_mgmt.show_report__presenters_biography && event_presenter_id_random_li?.length > 0}
<h3 class="h4 text-center">Presenters with Bios</h3>
<label
class="text-sm"
for="qry_max__presenters">Max results:
<input
type="number"
bind:value={$events_sess.pres_mgmt.qry_max__presenters}
on:change={() => {
handle_search__event_presenter({
api_cfg: $ae_api,
event_id: $events_slct.event_id,
agree: null,
biography: true,
ft_search_str: '',
lk_search_str: '',
params: {
'qry__enabled': 'enabled',
'qry__hidden': 'not_hidden',
'qry__limit': $events_sess.pres_mgmt.qry_max__presenters,},
try_cache: false,
log_lvl: log_lvl,
});
}}
class="input max-w-16 text-sm"
placeholder="Max number of presenters to show"
>
</label>
<Comp_event_presenter_obj_tbl
bind:event_presenter_id_random_li={event_presenter_id_random_li}
show_presentation_fields={true}
show_session_fields={true}
>
</Comp_event_presenter_obj_tbl>
{/if}
<!-- Show recently uploaded files -->
{#if $events_sess.pres_mgmt.show_report__recent_files && event_file_id_random_li?.length > 0}
<h3 class="h4 text-center">Recent File Uploads</h3>
<label
class="text-sm"
for="qry_max__files">Max results:
<input
type="number"
id="qry_max__files"
bind:value={$events_sess.pres_mgmt.qry_max__files}
on:change={() => {
handle_search__event_file({
api_cfg: $ae_api,
event_id: $events_slct.event_id,
created_on: null,
ft_search_str: '',
lk_search_str: '',
params: {
'qry__enabled': 'enabled',
'qry__hidden': 'not_hidden',
'qry__limit': $events_sess.pres_mgmt.qry_max__files,},
try_cache: false,
log_lvl: log_lvl,
});
}}
class="input max-w-16 text-sm"
placeholder="Max number of files to show"
>
</label>
<Comp_event_file_obj_tbl
bind:event_file_id_random_li={event_file_id_random_li}
show_location_fields={true}