New reports for large files. Better file query as well.
This commit is contained in:
@@ -275,12 +275,108 @@ export async function update_ae_obj__event_file(
|
||||
}
|
||||
|
||||
|
||||
// This new function is using CRUD v2. This should allow for more flexibility in the queries.
|
||||
// Updated 2024-10-15
|
||||
export async function qry__event_file(
|
||||
{
|
||||
api_cfg,
|
||||
event_id,
|
||||
qry_created_on = null, // Example greater than: '2024-10-24'
|
||||
qry_min_file_size = null,
|
||||
enabled = 'enabled',
|
||||
hidden = 'not_hidden',
|
||||
limit = 50,
|
||||
offset = 0,
|
||||
order_by_li = {'priority': 'DESC', 'sort': 'DESC', 'created_on': 'DESC', 'updated_on': 'DESC', 'filename': 'ASC', 'extension': 'ASC', 'hosted_file_size': 'ASC'},
|
||||
params = {},
|
||||
try_cache = true,
|
||||
log_lvl = 0
|
||||
}: {
|
||||
api_cfg: any,
|
||||
event_id: any,
|
||||
qry_created_on?: null|string,
|
||||
qry_min_file_size?: null|number,
|
||||
enabled?: string,
|
||||
hidden?: string,
|
||||
limit?: number,
|
||||
offset?: number,
|
||||
order_by_li?: key_val,
|
||||
params?: any,
|
||||
try_cache?: boolean,
|
||||
log_lvl?: number
|
||||
}
|
||||
) {
|
||||
if (log_lvl) {
|
||||
console.log(`*** qry__event_file() *** event_id=${event_id}`);
|
||||
}
|
||||
|
||||
let params_json: key_val = {};
|
||||
|
||||
params_json['qry'] = [];
|
||||
|
||||
if (qry_created_on) {
|
||||
let qry_param =
|
||||
{
|
||||
type: "AND",
|
||||
field: "created_on",
|
||||
operator: ">",
|
||||
value: qry_created_on
|
||||
};
|
||||
params_json['qry'].push(qry_param);
|
||||
}
|
||||
|
||||
if (qry_min_file_size) {
|
||||
console.log('qry_min_file_size:', qry_min_file_size);
|
||||
let qry_param =
|
||||
{
|
||||
type: "AND",
|
||||
field: "hosted_file_size",
|
||||
operator: ">",
|
||||
value: qry_min_file_size
|
||||
};
|
||||
params_json['qry'].push(qry_param);
|
||||
}
|
||||
|
||||
ae_promises.load__event_file_obj_li = await api.get_ae_obj_li_for_obj_id_crud_v2({
|
||||
api_cfg: api_cfg,
|
||||
obj_type: 'event_file',
|
||||
for_obj_type: 'event',
|
||||
for_obj_id: event_id,
|
||||
use_alt_tbl: true, // NOTE: We want to use the alt table for file searching?
|
||||
use_alt_mdl: false,
|
||||
use_alt_exp: false,
|
||||
enabled: enabled,
|
||||
hidden: hidden,
|
||||
order_by_li: order_by_li,
|
||||
limit: limit,
|
||||
offset: offset,
|
||||
params_json: params_json,
|
||||
params: params,
|
||||
log_lvl: log_lvl
|
||||
})
|
||||
.then(function (event_file_obj_li_get_result) {
|
||||
if (event_file_obj_li_get_result) {
|
||||
db_save_ae_obj_li__event_file({obj_type: 'event_file', obj_li: event_file_obj_li_get_result});
|
||||
return event_file_obj_li_get_result;
|
||||
} else {
|
||||
return [];
|
||||
}
|
||||
});
|
||||
|
||||
if (log_lvl) {
|
||||
console.log('ae_promises.load__event_file_obj_li:', ae_promises.load__event_file_obj_li);
|
||||
}
|
||||
return ae_promises.load__event_file_obj_li;
|
||||
}
|
||||
|
||||
|
||||
// Updated 2024-07-12
|
||||
export async function search__event_file(
|
||||
{
|
||||
api_cfg,
|
||||
event_id,
|
||||
created_on = null,
|
||||
min_file_size = null,
|
||||
fulltext_search_qry_str,
|
||||
ft_file_search_qry_str,
|
||||
like_search_qry_str = null,
|
||||
@@ -294,6 +390,7 @@ export async function search__event_file(
|
||||
api_cfg: any,
|
||||
event_id: any,
|
||||
created_on?: null|string,
|
||||
min_file_size?: null|number,
|
||||
fulltext_search_qry_str?: null|string,
|
||||
ft_file_search_qry_str?: null|string,
|
||||
like_search_qry_str?: null|string,
|
||||
@@ -363,6 +460,10 @@ export async function search__event_file(
|
||||
// params_json['and_qry']['created_on'] = created_on;
|
||||
// }
|
||||
|
||||
if (min_file_size) {
|
||||
params_json['and_qry'] = {'hosted_file_size': {'>': min_file_size}};
|
||||
}
|
||||
|
||||
ae_promises.load__event_file_obj_li = await api.get_ae_obj_li_for_obj_id_crud({
|
||||
api_cfg: api_cfg,
|
||||
obj_type: 'event_file',
|
||||
|
||||
@@ -9,6 +9,7 @@ import {
|
||||
delete_ae_obj_id__event_file,
|
||||
create_event_file_obj_from_hosted_file_async,
|
||||
update_ae_obj__event_file,
|
||||
qry__event_file,
|
||||
search__event_file,
|
||||
db_save_ae_obj_li__event_file,
|
||||
} from "$lib/ae_events__event_file";
|
||||
@@ -83,6 +84,7 @@ let export_obj = {
|
||||
load_ae_obj_li__event_file: load_ae_obj_li__event_file,
|
||||
delete_ae_obj_id__event_file: delete_ae_obj_id__event_file,
|
||||
update_ae_obj__event_file: update_ae_obj__event_file,
|
||||
qry__event_file: qry__event_file,
|
||||
search__event_file: search__event_file,
|
||||
db_save_ae_obj_li__event_file: db_save_ae_obj_li__event_file,
|
||||
|
||||
|
||||
@@ -63,20 +63,22 @@ onMount(() => {
|
||||
async function handle_search__event_file(
|
||||
{
|
||||
created_on = null,
|
||||
min_file_size = null, // in bytes
|
||||
ft_search_str = '',
|
||||
lk_search_str = '',
|
||||
params = {
|
||||
'qry__enabled': $events_loc.pres_mgmt.qry_enabled ?? 'enabled',
|
||||
'qry__hidden': $events_loc.pres_mgmt.qry_hidden ?? 'not_hidden',
|
||||
'qry__limit': $events_loc.pres_mgmt.qry_limit__files ?? 50,
|
||||
},
|
||||
try_cache=true,
|
||||
log_lvl=0,
|
||||
// params = {
|
||||
// 'qry__enabled': $events_loc.pres_mgmt.qry_enabled ?? 'enabled',
|
||||
// 'qry__hidden': $events_loc.pres_mgmt.qry_hidden ?? 'not_hidden',
|
||||
// 'qry__limit': $events_loc.pres_mgmt.qry_limit__files ?? 35,
|
||||
// },
|
||||
try_cache = true,
|
||||
log_lvl = 0,
|
||||
}: {
|
||||
created_on?: null|string,
|
||||
min_file_size?: null|number,
|
||||
ft_search_str?: string,
|
||||
lk_search_str?: string,
|
||||
params?: key_val,
|
||||
// params?: key_val,
|
||||
try_cache?: boolean,
|
||||
log_lvl?: number,
|
||||
}
|
||||
@@ -86,14 +88,18 @@ async function handle_search__event_file(
|
||||
$events_sess.pres_mgmt.status_qry__search = 'loading';
|
||||
$events_sess.pres_mgmt.status_rpt[$events_sess.pres_mgmt.show_report] = 'loading';
|
||||
|
||||
ae_promises.search__event_file = events_func.search__event_file({
|
||||
ae_promises.search__event_file = events_func.qry__event_file({
|
||||
api_cfg: $ae_api,
|
||||
event_id: $events_slct.event_id,
|
||||
created_on: created_on,
|
||||
fulltext_search_qry_str: ft_search_str,
|
||||
like_search_qry_str: lk_search_str,
|
||||
qry_created_on: created_on,
|
||||
qry_min_file_size: min_file_size,
|
||||
// fulltext_search_qry_str: ft_search_str,
|
||||
// like_search_qry_str: lk_search_str,
|
||||
// external_event_id: $events_loc.pres_mgmt.default__external_registration_id,
|
||||
params: params,
|
||||
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,
|
||||
// params: params,
|
||||
try_cache: try_cache,
|
||||
log_lvl: log_lvl,
|
||||
})
|
||||
@@ -449,6 +455,7 @@ async function handle_qry__event_session(
|
||||
<div class="variant-ghost-success my-2 p-2 rounded-md flex flex-row flex-wrap gap-1 items-center justify-center">
|
||||
|
||||
<span class="border border-gray-200 rounded-md p-1">
|
||||
|
||||
<button
|
||||
type="button"
|
||||
disabled={!$ae_loc.trusted_access}
|
||||
@@ -483,50 +490,52 @@ async function handle_qry__event_session(
|
||||
Not Agreed
|
||||
{/if}
|
||||
</button>
|
||||
|
||||
<!-- Sessions without POC bios -->
|
||||
<button
|
||||
type="button"
|
||||
disabled={!$ae_loc.trusted_access}
|
||||
on:click={() => {
|
||||
$events_loc.pres_mgmt.rpt__session_poc_agree = !$events_loc.pres_mgmt.rpt__session_poc_agree;
|
||||
|
||||
ae_promises.handle_qry__event_session = handle_qry__event_session({
|
||||
qry_poc_agree: $events_loc.pres_mgmt.rpt__session_poc_agree ?? false,
|
||||
})
|
||||
$events_sess.pres_mgmt.show_report = 'sessions_poc_agree';
|
||||
handle_qry__event_session({
|
||||
qry_poc_kv_json: true,
|
||||
qry_poc_bios: true,
|
||||
});
|
||||
$events_sess.pres_mgmt.show_report = 'session_no_bio';
|
||||
}}
|
||||
class="btn btn-sm variant-glass-warning hover:variant-ghost-warning transition-all m-1"
|
||||
class="btn btn-sm variant-ghost-success hover:variant-filled-success transition-all m-1"
|
||||
title="Show sessions without POC bios."
|
||||
>
|
||||
{#if $events_loc.pres_mgmt.rpt__session_poc_agree}
|
||||
<span class="fas fa-toggle-on m-1"></span>
|
||||
Agreed
|
||||
{:else}
|
||||
<span class="fas fa-toggle-off m-1"></span>
|
||||
Not Agreed
|
||||
{#if $events_sess.pres_mgmt?.show_report == 'session_no_bio' && $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-book m-1"></span>
|
||||
Session {$events_loc.pres_mgmt?.label__session_poc_name} Bios
|
||||
</button>
|
||||
|
||||
<!-- Sessions without files uploaded -->
|
||||
<button
|
||||
type="button"
|
||||
disabled={!$ae_loc.trusted_access}
|
||||
on:click={() => {
|
||||
handle_qry__event_session({
|
||||
qry_files: false,
|
||||
});
|
||||
$events_sess.pres_mgmt.show_report = 'session_no_files';
|
||||
}}
|
||||
class="btn btn-sm variant-ghost-success hover:variant-filled-success transition-all m-1"
|
||||
title="Show sessions without files uploaded."
|
||||
>
|
||||
{#if $events_sess.pres_mgmt?.show_report == 'session_no_files' && $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-clipboard-list m-1"></span>
|
||||
Sessions without Files
|
||||
</button>
|
||||
|
||||
</span>
|
||||
|
||||
<!-- Sessions without POC bios -->
|
||||
<button
|
||||
type="button"
|
||||
disabled={!$ae_loc.trusted_access}
|
||||
on:click={() => {
|
||||
handle_qry__event_session({
|
||||
qry_poc_kv_json: true,
|
||||
qry_poc_bios: true,
|
||||
});
|
||||
$events_sess.pres_mgmt.show_report = 'session_no_bio';
|
||||
}}
|
||||
class="btn btn-sm variant-ghost-success hover:variant-filled-success transition-all m-1"
|
||||
title="Show sessions without POC bios."
|
||||
>
|
||||
{#if $events_sess.pres_mgmt?.show_report == 'session_no_bio' && $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-book m-1"></span>
|
||||
Session {$events_loc.pres_mgmt?.label__session_poc_name} Bios
|
||||
</button>
|
||||
|
||||
<span class="border border-gray-200 rounded-md p-1">
|
||||
|
||||
<button
|
||||
type="button"
|
||||
disabled={!$ae_loc.trusted_access}
|
||||
@@ -562,94 +571,87 @@ async function handle_qry__event_session(
|
||||
Not Agreed
|
||||
{/if}
|
||||
</button>
|
||||
|
||||
<button
|
||||
type="button"
|
||||
disabled={!$ae_loc.trusted_access}
|
||||
on:click={() => {
|
||||
$events_loc.pres_mgmt.rpt__presenter_agree = !$events_loc.pres_mgmt.rpt__presenter_agree;
|
||||
handle_search__event_presenter({
|
||||
biography: true,
|
||||
ft_search_str: '',
|
||||
lk_search_str: '',
|
||||
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_biography;
|
||||
// $events_sess.pres_mgmt.show_report__presenters_agree = false;
|
||||
// $events_sess.pres_mgmt.show_report__recent_files = false;
|
||||
}}
|
||||
class="btn btn-sm variant-glass-warning hover:variant-ghost-warning transition-all m-1"
|
||||
class="btn btn-sm variant-ghost-success hover:variant-filled-success transition-all m-1"
|
||||
title="NOT READY YET: Show presenters with bios."
|
||||
>
|
||||
{#if $events_loc.pres_mgmt.rpt__presenter_agree}
|
||||
<!-- <span class="fas fa-check m-1"></span> -->
|
||||
<span class="fas fa-toggle-on m-1"></span>
|
||||
Agreed
|
||||
{:else}
|
||||
<!-- <span class="fas fa-times m-1"></span> -->
|
||||
<span class="fas fa-toggle-off m-1"></span>
|
||||
Not Agreed
|
||||
{#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>
|
||||
{/if}
|
||||
<span class="fas fa-book m-1"></span>
|
||||
Presenter Bios
|
||||
</button>
|
||||
|
||||
</span>
|
||||
|
||||
<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_sess.pres_mgmt.show_report = 'presenters_biography';
|
||||
// $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 m-1"
|
||||
title="NOT READY YET: 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>
|
||||
{/if}
|
||||
<span class="fas fa-book m-1"></span>
|
||||
Presenter Bios
|
||||
</button>
|
||||
<span class="border border-gray-200 rounded-md p-1">
|
||||
|
||||
<button
|
||||
type="button"
|
||||
disabled={!$ae_loc.trusted_access}
|
||||
on:click={() => {
|
||||
handle_search__event_file({
|
||||
created_on: null,
|
||||
ft_search_str: '',
|
||||
lk_search_str: '',
|
||||
log_lvl: log_lvl,
|
||||
});
|
||||
$events_sess.pres_mgmt.show_report = 'recent_files';
|
||||
// $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 m-1"
|
||||
title="Show recent file uploads."
|
||||
>
|
||||
{#if $events_sess.pres_mgmt?.show_report == 'recent_files' && $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-file m-1"></span>
|
||||
Recent File Uploads
|
||||
</button>
|
||||
<button
|
||||
type="button"
|
||||
disabled={!$ae_loc.trusted_access}
|
||||
on:click={() => {
|
||||
handle_search__event_file({
|
||||
created_on: null,
|
||||
// ft_search_str: '',
|
||||
// lk_search_str: '',
|
||||
log_lvl: log_lvl,
|
||||
});
|
||||
$events_sess.pres_mgmt.show_report = 'recent_files';
|
||||
// $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 m-1"
|
||||
title="Show recent file uploads."
|
||||
>
|
||||
{#if $events_sess.pres_mgmt?.show_report == 'recent_files' && $events_sess.pres_mgmt.status_rpt[$events_sess.pres_mgmt?.show_report] == 'loading'}
|
||||
<span class="fas fa-spinner fa-spin m-1"></span>
|
||||
{:else}
|
||||
<span class="fas fa-file m-1"></span>
|
||||
{/if}
|
||||
Recent File Uploads
|
||||
</button>
|
||||
|
||||
<button
|
||||
type="button"
|
||||
disabled={!$ae_loc.trusted_access}
|
||||
on:click={() => {
|
||||
handle_search__event_file({
|
||||
created_on: null,
|
||||
min_file_size: $events_loc.pres_mgmt.qry__files_min_size ?? 100000000, // in bytes
|
||||
// ft_search_str: '',
|
||||
// lk_search_str: '',
|
||||
log_lvl: log_lvl,
|
||||
});
|
||||
$events_sess.pres_mgmt.show_report = 'large_files';
|
||||
}}
|
||||
class="btn btn-sm variant-ghost-success hover:variant-filled-success transition-all m-1"
|
||||
title="Show large file uploads."
|
||||
>
|
||||
{#if $events_sess.pres_mgmt?.show_report == 'large_files' && $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-file m-1"></span>
|
||||
Large File Uploads
|
||||
</button>
|
||||
|
||||
</span>
|
||||
|
||||
<!-- Sessions without files uploaded -->
|
||||
<button
|
||||
type="button"
|
||||
disabled={!$ae_loc.trusted_access}
|
||||
on:click={() => {
|
||||
handle_qry__event_session({
|
||||
qry_files: false,
|
||||
});
|
||||
$events_sess.pres_mgmt.show_report = 'session_no_files';
|
||||
}}
|
||||
class="btn btn-sm variant-ghost-success hover:variant-filled-success transition-all m-1"
|
||||
title="Show sessions without files uploaded."
|
||||
>
|
||||
{#if $events_sess.pres_mgmt?.show_report == 'session_no_files' && $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-clipboard-list m-1"></span>
|
||||
Sessions without Files
|
||||
</button>
|
||||
|
||||
|
||||
</div>
|
||||
@@ -673,7 +675,29 @@ async function handle_qry__event_session(
|
||||
|
||||
<!-- Show session POC that have agreed -->
|
||||
{#if $events_sess.pres_mgmt.show_report == 'sessions_poc_agree' && event_session_id_random_li}
|
||||
<h3 class="h4 text-center">Sessions POC {#if $events_loc.pres_mgmt.rpt__session_poc_agree}Agreed{:else}Not Agreed{/if}</h3>
|
||||
<h3 class="h4 text-center">
|
||||
Sessions POC {#if $events_loc.pres_mgmt.rpt__session_poc_agree}Agreed{:else}Not Agreed{/if}
|
||||
<button
|
||||
type="button"
|
||||
on:click={() => {
|
||||
$events_loc.pres_mgmt.rpt__session_poc_agree = !$events_loc.pres_mgmt.rpt__session_poc_agree;
|
||||
|
||||
ae_promises.handle_qry__event_session = handle_qry__event_session({
|
||||
qry_poc_agree: $events_loc.pres_mgmt.rpt__session_poc_agree ?? false,
|
||||
})
|
||||
$events_sess.pres_mgmt.show_report = 'sessions_poc_agree';
|
||||
}}
|
||||
class="btn btn-sm variant-glass-warning hover:variant-ghost-warning transition-all m-1"
|
||||
>
|
||||
{#if $events_loc.pres_mgmt.rpt__session_poc_agree}
|
||||
<span class="fas fa-toggle-on m-1"></span>
|
||||
Agreed
|
||||
{:else}
|
||||
<span class="fas fa-toggle-off m-1"></span>
|
||||
Not Agreed
|
||||
{/if}
|
||||
</button>
|
||||
</h3>
|
||||
{#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}
|
||||
@@ -699,10 +723,43 @@ async function handle_qry__event_session(
|
||||
</Comp_event_session_obj_tbl>
|
||||
{/if}
|
||||
|
||||
<!-- Show sessions without files -->
|
||||
{#if $events_sess.pres_mgmt.show_report == 'session_no_files' && event_session_id_random_li}
|
||||
<h3 class="h4 text-center">Sessions without Files</h3>
|
||||
|
||||
<Comp_event_session_obj_tbl
|
||||
link_to_type="event"
|
||||
link_to_id={$events_slct.event_id}
|
||||
bind:event_session_id_random_li={event_session_id_random_li}
|
||||
log_lvl={1}
|
||||
>
|
||||
</Comp_event_session_obj_tbl>
|
||||
{/if}
|
||||
|
||||
|
||||
<!-- Show presenters that have agreed -->
|
||||
{#if $events_sess.pres_mgmt.show_report == 'presenters_agree' && event_presenter_id_random_li}
|
||||
<!-- <div class="overflow-x-auto"> -->
|
||||
<h3 class="h4 text-center">Presenters {#if $events_loc.pres_mgmt.rpt__presenter_agree}Agreed{:else}Not Agreed{/if}</h3>
|
||||
<h3 class="h4 text-center">
|
||||
Presenters {#if $events_loc.pres_mgmt.rpt__presenter_agree}Agreed{:else}Not Agreed{/if}
|
||||
<button
|
||||
type="button"
|
||||
on:click={() => {
|
||||
$events_loc.pres_mgmt.rpt__presenter_agree = !$events_loc.pres_mgmt.rpt__presenter_agree;
|
||||
}}
|
||||
class="btn btn-sm variant-glass-warning hover:variant-ghost-warning transition-all m-1"
|
||||
>
|
||||
{#if $events_loc.pres_mgmt.rpt__presenter_agree}
|
||||
<!-- <span class="fas fa-check m-1"></span> -->
|
||||
<span class="fas fa-toggle-on m-1"></span>
|
||||
Agreed
|
||||
{:else}
|
||||
<!-- <span class="fas fa-times m-1"></span> -->
|
||||
<span class="fas fa-toggle-off m-1"></span>
|
||||
Not Agreed
|
||||
{/if}
|
||||
</button>
|
||||
</h3>
|
||||
{#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}
|
||||
@@ -729,6 +786,7 @@ async function handle_qry__event_session(
|
||||
</Comp_event_presenter_obj_tbl>
|
||||
{/if}
|
||||
|
||||
|
||||
<!-- Show recently uploaded files -->
|
||||
{#if $events_sess.pres_mgmt.show_report == 'recent_files' && event_file_id_random_li}
|
||||
<h3 class="h4 text-center">Recent File Uploads</h3>
|
||||
@@ -744,19 +802,48 @@ async function handle_qry__event_session(
|
||||
{/if}
|
||||
|
||||
|
||||
<!-- Show sessions without files -->
|
||||
{#if $events_sess.pres_mgmt.show_report == 'session_no_files' && event_session_id_random_li}
|
||||
<h3 class="h4 text-center">Sessions without Files</h3>
|
||||
<!-- Show large files -->
|
||||
{#if $events_sess.pres_mgmt.show_report == 'large_files' && event_file_id_random_li}
|
||||
<h3 class="h4 text-center">
|
||||
Large File Uploads
|
||||
<select
|
||||
class="select text-sm w-28 variant-glass-warning hover:variant-ghost-warning transition-all m-1"
|
||||
bind:value={$events_loc.pres_mgmt.qry__files_min_size}
|
||||
on:change={
|
||||
() => {
|
||||
handle_search__event_file({
|
||||
created_on: null,
|
||||
min_file_size: $events_loc.pres_mgmt.qry__files_min_size ?? 100000000, // in bytes
|
||||
log_lvl: log_lvl,
|
||||
});
|
||||
$events_sess.pres_mgmt.show_report = 'large_files';
|
||||
}
|
||||
}
|
||||
>
|
||||
<option value="10000000">10 MB</option>
|
||||
<option value="25000000">25 MB</option>
|
||||
<option value="50000000">50 MB</option>
|
||||
<option value="75000000">75 MB</option>
|
||||
<option value="100000000">100 MB</option>
|
||||
<option value="150000000">150 MB</option>
|
||||
<option value="250000000">250 MB</option>
|
||||
<option value="500000000">500 MB</option>
|
||||
<option value="1000000000">1 GB</option>
|
||||
<!-- <option value="5000000000">5 GB</option> -->
|
||||
</select>
|
||||
</h3>
|
||||
|
||||
<Comp_event_session_obj_tbl
|
||||
link_to_type="event"
|
||||
link_to_id={$events_slct.event_id}
|
||||
bind:event_session_id_random_li={event_session_id_random_li}
|
||||
log_lvl={1}
|
||||
<Comp_event_file_obj_tbl
|
||||
bind:event_file_id_random_li={event_file_id_random_li}
|
||||
show_location_fields={true}
|
||||
show_presenter_fields={true}
|
||||
show_presentation_fields={true}
|
||||
show_session_fields={true}
|
||||
>
|
||||
</Comp_event_session_obj_tbl>
|
||||
</Comp_event_file_obj_tbl>
|
||||
{/if}
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user