Speakers form is now working pretty well. Including delete.
This commit is contained in:
@@ -172,15 +172,15 @@ if ($ae_loc.mod.events.event_id) {
|
||||
// $slct_trigger = 'load__event_presenter_obj_li';
|
||||
// }
|
||||
|
||||
// $: if ($slct_trigger == 'load__event_presenter_obj_li' && $slct.event_id) {
|
||||
// console.log(`load__event_presenter_obj_li event_id: ${$slct.event_id}`);
|
||||
$: if ($slct_trigger == 'load__event_presenter_obj_li' && $slct.event_id) {
|
||||
console.log(`load__event_presenter_obj_li event_id: ${$slct.event_id}`);
|
||||
|
||||
// $slct_trigger = null;
|
||||
$slct_trigger = null;
|
||||
|
||||
// // $slct.event_id = $ae_loc.event_id;
|
||||
// // handle_load_ae_obj_id__event({event_id: $slct.event_id, try_cache: false});
|
||||
// handle_load_ae_obj_li__event_presenter({event_id: $slct.event_id, try_cache: false});
|
||||
// }
|
||||
// $slct.event_id = $ae_loc.event_id;
|
||||
// handle_load_ae_obj_id__event({event_id: $slct.event_id, try_cache: false});
|
||||
handle_load_ae_obj_li__event_presenter({event_id: $slct.event_id, try_cache: false});
|
||||
}
|
||||
|
||||
async function handle_load_ae_obj_li__event_presenter({event_id, try_cache=true}) {
|
||||
console.log('*** handle_load_ae_obj_li__event_presenter() ***');
|
||||
@@ -281,6 +281,69 @@ async function handle_load_ae_obj_id__event_presenter({event_presenter_id, try_c
|
||||
return ae_event_presenter_obj_get_promise;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// // let delete_event_presenter_obj_promise: Promise<any>;
|
||||
// let delete_event_presenter_obj_promise;
|
||||
// async function handle_delete_event_presenter_obj({event_presenter_id, hosted_file_id=null, method='delete'}) {
|
||||
// console.log('*** handle_delete_event_presenter_obj() ***');
|
||||
|
||||
// // if (hosted_file_id) {
|
||||
// // let delete_hosted_file_obj_promise = api.delete_hosted_file({
|
||||
// // api_cfg: $ae_api,
|
||||
// // hosted_file_id: hosted_file_id,
|
||||
// // link_to_type: 'event_presenter',
|
||||
// // link_to_id: event_presenter_id,
|
||||
// // rm_orphan: true,
|
||||
// // // params: params,
|
||||
// // key: $ae_api.api_crud_super_key,
|
||||
// // log_lvl: 2
|
||||
// // })
|
||||
// // .then(function (hosted_file_obj_delete_result) {
|
||||
// // if (hosted_file_obj_delete_result) {
|
||||
// // // console.log(`Result:`, hosted_file_obj_delete_result);
|
||||
|
||||
// // dispatch(
|
||||
// // 'deleted__hosted_file_obj',
|
||||
// // {
|
||||
// // hosted_file_id: hosted_file_id,
|
||||
// // }
|
||||
// // );
|
||||
// // }
|
||||
// // })
|
||||
// // .catch(function (error) {
|
||||
// // console.log('The result was null or false when trying to delete.', error);
|
||||
// // });
|
||||
// // }
|
||||
|
||||
// delete_event_presenter_obj_promise = api.delete_ae_obj_id_crud({
|
||||
// api_cfg: $ae_api,
|
||||
// obj_type: 'event_presenter',
|
||||
// obj_id: event_presenter_id,
|
||||
// method: method,
|
||||
// // params: params,
|
||||
// key: $ae_api.api_crud_super_key,
|
||||
// log_lvl: 0
|
||||
// })
|
||||
// .then(function (event_presenter_obj_delete_result) {
|
||||
// if (event_presenter_obj_delete_result) {
|
||||
// // console.log(`Result:`, event_presenter_obj_delete_result);
|
||||
|
||||
// }
|
||||
// })
|
||||
// .catch(function (error) {
|
||||
// console.log('The result was null or false when trying to delete.', error);
|
||||
// });
|
||||
|
||||
// return delete_event_presenter_obj_promise;
|
||||
// }
|
||||
|
||||
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
@@ -237,23 +237,43 @@ async function handle_submit_form(event) {
|
||||
data: event_presenter_do
|
||||
});
|
||||
console.log(ae_promises.create__event_presenter);
|
||||
$ae_loc.mod.events.presenter_link = `${$ae_loc.site_domain}/events_speakers/load?event_presenter_id=${$slct.event_presenter_id}`;
|
||||
console.log('Speaker link:', $ae_loc.mod.events.presenter_link);
|
||||
if (ae_promises.create__event_presenter.event_presenter_id_random) {
|
||||
$slct.event_presenter_id = ae_promises.create__event_presenter.event_presenter_id_random;
|
||||
$slct.event_presenter_obj = ae_promises.create__event_presenter;
|
||||
|
||||
$ae_loc.mod.events.presenter_link = `${$ae_loc.site_domain}/events_speakers/load?event_presenter_id=${$slct.event_presenter_id}`;
|
||||
console.log('Speaker link:', $ae_loc.mod.events.presenter_link);
|
||||
|
||||
// This should no longer be needed! Will add a check later to trigger this or a second create if something does not look correct.
|
||||
// $slct_trigger = 'load__event_presenter_obj';
|
||||
|
||||
$ae_sess.mod.events.submit_status = 'created';
|
||||
} else {
|
||||
console.log('No event_presenter_id_random was found. Something may have gone wrong.');
|
||||
$ae_sess.mod.events.submit_status = 'created_unknown';
|
||||
}
|
||||
$ae_loc.mod.events.disable_submit__event_presenter_obj = false;
|
||||
$ae_sess.mod.events.submit_status = 'created';
|
||||
|
||||
$slct_trigger = 'load__event_presenter_obj';
|
||||
} else {
|
||||
ae_promises.update__event_presenter_obj = await handle_update__event_presenter({
|
||||
obj_type: 'event_presenter',
|
||||
obj_id: $slct.event_presenter_id,
|
||||
data: event_presenter_do
|
||||
});
|
||||
$ae_loc.mod.events.disable_submit__event_presenter_obj = false;
|
||||
$ae_sess.mod.events.submit_status = 'updated';
|
||||
console.log(ae_promises.update__event_presenter_obj);
|
||||
if (ae_promises.update__event_presenter_obj.event_presenter_id_random) {
|
||||
$slct.event_presenter_obj = ae_promises.update__event_presenter_obj;
|
||||
|
||||
$slct_trigger = 'load__event_presenter_obj';
|
||||
// $slct_trigger = 'load__event_presenter_obj';
|
||||
$ae_sess.mod.events.submit_status = 'updated';
|
||||
} else {
|
||||
console.log('No event_presenter_id_random was found. Something may have gone wrong.');
|
||||
$ae_sess.mod.events.submit_status = 'updated_unknown';
|
||||
|
||||
console.log('Trigger a reload of the object.');
|
||||
$slct_trigger = 'load__event_presenter_obj';
|
||||
}
|
||||
$ae_loc.mod.events.disable_submit__event_presenter_obj = false;
|
||||
}
|
||||
|
||||
if ($slct.event_presenter_id) {
|
||||
@@ -266,6 +286,8 @@ async function handle_submit_form(event) {
|
||||
} else if ($store_current_tab == 'files' && $slct.event_presenter_id) {
|
||||
$store_current_tab = 'summary';
|
||||
}
|
||||
|
||||
$slct_trigger = 'load__event_presenter_obj_li';
|
||||
} else {
|
||||
console.log('No obj ID found!');
|
||||
}
|
||||
@@ -318,8 +340,20 @@ async function handle_submit_form_files(event) {
|
||||
obj_id: $slct.event_presenter_id,
|
||||
data: event_presenter_do
|
||||
});
|
||||
console.log(ae_promises.update__event_presenter_obj);
|
||||
if (ae_promises.update__event_presenter_obj.event_presenter_id_random) {
|
||||
$slct.event_presenter_obj = ae_promises.update__event_presenter_obj;
|
||||
|
||||
// $slct_trigger = 'load__event_presenter_obj';
|
||||
$ae_sess.mod.events.submit_status = 'updated';
|
||||
} else {
|
||||
console.log('No event_presenter_id_random was found. Something may have gone wrong.');
|
||||
$ae_sess.mod.events.submit_status = 'updated_unknown';
|
||||
|
||||
console.log('Trigger a reload of the object.');
|
||||
$slct_trigger = 'load__event_presenter_obj';
|
||||
}
|
||||
$ae_sess.mod.events.disable_submit__event_presenter_obj = false;
|
||||
$ae_sess.mod.events.submit_status = 'updated';
|
||||
|
||||
if ($store_current_tab == 'files' && $slct.event_presenter_id) {
|
||||
$store_current_tab = 'summary';
|
||||
@@ -370,6 +404,7 @@ async function handle_create__event_presenter({
|
||||
obj_type: obj_type,
|
||||
fields: data,
|
||||
key: $ae_api.api_crud_super_key,
|
||||
return_obj: true,
|
||||
log_lvl: 2
|
||||
})
|
||||
.then(async function (create__obj_result) {
|
||||
@@ -402,6 +437,7 @@ async function handle_update__event_presenter({
|
||||
obj_id: obj_id,
|
||||
fields: data,
|
||||
key: $ae_api.api_crud_super_key,
|
||||
return_obj: true,
|
||||
log_lvl: 2
|
||||
})
|
||||
.then(async function (update__obj_result) {
|
||||
@@ -449,6 +485,66 @@ function send_summary_email() {
|
||||
body_html: body_html,
|
||||
});
|
||||
}
|
||||
|
||||
// let delete_event_presenter_obj_promise: Promise<any>;
|
||||
let delete_event_presenter_obj_promise;
|
||||
async function handle_delete_event_presenter_obj({event_presenter_id, hosted_file_id=null, method='delete'}) {
|
||||
console.log('*** handle_delete_event_presenter_obj() ***');
|
||||
|
||||
if (hosted_file_id) {
|
||||
// let delete_hosted_file_obj_promise = api.delete_hosted_file({
|
||||
// api_cfg: $ae_api,
|
||||
// hosted_file_id: hosted_file_id,
|
||||
// link_to_type: 'event_presenter',
|
||||
// link_to_id: event_presenter_id,
|
||||
// rm_orphan: true,
|
||||
// // params: params,
|
||||
// key: $ae_api.api_crud_super_key,
|
||||
// log_lvl: 2
|
||||
// })
|
||||
// .then(function (hosted_file_obj_delete_result) {
|
||||
// if (hosted_file_obj_delete_result) {
|
||||
// // console.log(`Result:`, hosted_file_obj_delete_result);
|
||||
|
||||
// dispatch(
|
||||
// 'deleted__hosted_file_obj',
|
||||
// {
|
||||
// hosted_file_id: hosted_file_id,
|
||||
// }
|
||||
// );
|
||||
// }
|
||||
// })
|
||||
// .catch(function (error) {
|
||||
// console.log('The result was null or false when trying to delete.', error);
|
||||
// });
|
||||
}
|
||||
|
||||
delete_event_presenter_obj_promise = await api.delete_ae_obj_id_crud({
|
||||
api_cfg: $ae_api,
|
||||
obj_type: 'event_presenter',
|
||||
obj_id: event_presenter_id,
|
||||
method: method,
|
||||
// params: params,
|
||||
key: $ae_api.api_crud_super_key,
|
||||
log_lvl: 2
|
||||
})
|
||||
.then(function (event_presenter_obj_delete_result) {
|
||||
if (event_presenter_obj_delete_result) {
|
||||
// console.log(`Result:`, event_presenter_obj_delete_result);
|
||||
|
||||
}
|
||||
})
|
||||
.catch(function (error) {
|
||||
console.log('The result was null or false when trying to delete.', error);
|
||||
});
|
||||
|
||||
console.log('Trigger a reload of the object list.');
|
||||
$slct_trigger = 'load__event_presenter_obj_li';
|
||||
|
||||
parent.onClose();
|
||||
|
||||
return delete_event_presenter_obj_promise;
|
||||
}
|
||||
</script>
|
||||
|
||||
<!-- @component This is the Event Presenters modal edit form. -->
|
||||
@@ -675,7 +771,7 @@ function send_summary_email() {
|
||||
ds_code="events_speakers__form__waiver_html"
|
||||
ds_type="html"
|
||||
for_type="devent"
|
||||
for_id={$slct.event_id}
|
||||
for_id={$slct.event_presenter_id}
|
||||
ds_name="Default: Events Speaker Form - Waiver HTML"
|
||||
display="block"
|
||||
class_li=""
|
||||
@@ -935,20 +1031,52 @@ function send_summary_email() {
|
||||
{#if $slct.event_presenter_id}
|
||||
<!-- {#if $ae_loc.trusted_access} -->
|
||||
<span class="ae_actions">
|
||||
|
||||
{#if $slct.event_presenter_id}
|
||||
{#if $ae_loc.administrator_access}
|
||||
<button
|
||||
on:click={() => {
|
||||
if (!confirm('CURRENTLY DISABLED: Are you sure you want to delete this presenter?')) {return false;}
|
||||
// handle_delete_event_presenter_obj({event_presenter_id: $slct.event_presenter_id, method: 'delete'});
|
||||
if (!confirm('Are you sure you want to delete this speaker?')) {return false;}
|
||||
handle_delete_event_presenter_obj({event_presenter_id: $slct.event_presenter_id, method: 'delete'});
|
||||
|
||||
// $slct.event_presenter_id = null;
|
||||
// $slct.event_presenter_obj = {};
|
||||
$slct.event_presenter_id = null;
|
||||
$slct.event_presenter_obj = {};
|
||||
}}
|
||||
class="btn variant-glass-warning mx-1"
|
||||
class:hidden={!$ae_loc.administrator_access}
|
||||
title="CURRENTLY DISABLED: Delete record permanently"
|
||||
class="btn variant-glass-warning mx-1 text-xs" type="button"
|
||||
title="Delete record permanently"
|
||||
>
|
||||
<span class="fas fa-minus mx-1"></span> Delete
|
||||
</button>
|
||||
{:else if $ae_loc.trusted_access}
|
||||
<button
|
||||
on:click={() => {
|
||||
if (!confirm('Are you sure you want to disable this speaker?')) {return false;}
|
||||
handle_delete_event_presenter_obj({event_presenter_id: $slct.event_presenter_id, method: 'disable'});
|
||||
|
||||
$slct.event_presenter_id = null;
|
||||
$slct.event_presenter_obj = {};
|
||||
}}
|
||||
class="btn variant-glass-warning mx-1 text-xs" type="button"
|
||||
title="Disable record to delete"
|
||||
>
|
||||
<span class="fas fa-minus mx-1"></span> Delete
|
||||
</button>
|
||||
{:else}
|
||||
<button
|
||||
on:click={() => {
|
||||
if (!confirm('Are you sure you want to hide this speaker?')) {return false;}
|
||||
handle_delete_event_presenter_obj({event_presenter_id: $slct.event_presenter_id, method: 'hide'});
|
||||
|
||||
$slct.event_presenter_id = null;
|
||||
$slct.event_presenter_obj = {};
|
||||
}}
|
||||
class="btn variant-glass-warning mx-1 text-xs" type="button"
|
||||
title="Hide record to delete"
|
||||
>
|
||||
<span class="fas fa-comment-slash mx-1"></span> Delete
|
||||
</button>
|
||||
{/if}
|
||||
{/if}
|
||||
|
||||
<button
|
||||
class="btn variant-soft-secondary"
|
||||
|
||||
Reference in New Issue
Block a user