Wrapping up for the night. Mostly good for demo tomorrow morning.
This commit is contained in:
@@ -76,3 +76,14 @@ body[data-theme]:has(#page.iframe) {
|
||||
background: none;
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
pre.pre_wrap {
|
||||
white-space: pre-wrap;
|
||||
word-break: normal;
|
||||
word-wrap: normal;
|
||||
|
||||
border: none;
|
||||
|
||||
max-width: 100%;
|
||||
overflow-x: auto;
|
||||
}
|
||||
@@ -88,10 +88,19 @@ export let ae_app_local_data_struct: key_val = {
|
||||
for_type: null,
|
||||
for_id: null,
|
||||
|
||||
level_guest_max_li: {
|
||||
0: 0,
|
||||
1: 4,
|
||||
2: 8,
|
||||
3: 8,
|
||||
4: 8,
|
||||
5: 16, // This is a guess for CHOW 2024!!!
|
||||
6: 16, // This is a guess for CHOW 2024!!!
|
||||
},
|
||||
|
||||
show_edit__sponsorship_obj: false,
|
||||
show_list__sponsorship_obj_li: true,
|
||||
show_view__sponsorship_obj: false,
|
||||
disable_submit__sponsorship_obj: false,
|
||||
|
||||
submit_status: null, // 'saving', 'created', 'updated'
|
||||
},
|
||||
@@ -109,11 +118,6 @@ export let ae_loc: Writable<key_val> = localStorageStore('ae_loc', ae_app_local_
|
||||
// console.log(`AE Stores - App Local Storage Data:`, get(ae_loc));
|
||||
|
||||
|
||||
// This does not work yet...? Don't use.
|
||||
// const ae_loc_store: Writable<string> = localStorageStore('ae_loc', ae_app_local_data_struct);
|
||||
// console.log(`store - $ae_loc:`, ae_loc_store);
|
||||
|
||||
|
||||
// *** BEGIN *** Temporary app data. This should be stored to session storage.
|
||||
export let ae_app_session_data_struct: key_val = {
|
||||
'ver': '2024-02-27_13',
|
||||
@@ -139,7 +143,12 @@ export let ae_app_session_data_struct: key_val = {
|
||||
},
|
||||
'journals': {},
|
||||
'posts': {},
|
||||
'sponsorships': {},
|
||||
'sponsorships': {
|
||||
disable_submit__sponsorship_obj: false,
|
||||
slct__level_num: 0,
|
||||
show_question__accommodations: false,
|
||||
submit_status: null, // 'saving', 'created', 'updated', 'saved'
|
||||
},
|
||||
'testing': {},
|
||||
},
|
||||
};
|
||||
|
||||
@@ -54,9 +54,8 @@ let ae_promises: key_val = {}; // Promise<any>;
|
||||
$ae_loc.mod.events.submit_status = null;
|
||||
$ae_loc.mod.events.disable_submit__event_presenter_obj = false;
|
||||
let placeholder_li: key_val = {
|
||||
file_logo_primary: '-- No File Selected --',
|
||||
file_logo_secondary: '-- No File Selected --',
|
||||
file_media_promo_video: '-- No File Selected --',
|
||||
image_headshot: '-- No File Selected --',
|
||||
image_example: '-- No File Selected --',
|
||||
};
|
||||
|
||||
if ($slct.event_presenter_id) {
|
||||
@@ -81,12 +80,12 @@ if ($slct.event_presenter_id) {
|
||||
|
||||
biography: null,
|
||||
|
||||
picture_path: null,
|
||||
// picture_path: null,
|
||||
|
||||
// logo_li_json: null,
|
||||
image_li_json: null,
|
||||
// media_li_json: null,
|
||||
|
||||
social_li_json: null,
|
||||
// social_li_json: null,
|
||||
|
||||
enable: null,
|
||||
};
|
||||
@@ -95,10 +94,11 @@ if ($slct.event_presenter_id) {
|
||||
|
||||
$: if ($slct.event_presenter_obj) {
|
||||
// Create HTML for showing pictures here?
|
||||
// if ($slct.event_presenter_obj.logo_li_json) {
|
||||
// if ($slct.event_presenter_obj.logo_li_json.primary.hosted_file_id_random) {
|
||||
// placeholder_li.file_logo_primary = `<img src="https://dev-demo.oneskyit.com/hosted_file/download/${$slct.event_presenter_obj.logo_li_json.primary.hosted_file_id_random}">${$slct.event_presenter_obj.logo_li_json.primary.filename}`;
|
||||
// }
|
||||
if ($slct.event_presenter_obj.image_li_json) {
|
||||
if ($slct.event_presenter_obj.image_li_json.headshot.hosted_file_id_random) {
|
||||
placeholder_li.image_headshot = `<img src="https://dev-demo.oneskyit.com/hosted_file/download/${$slct.event_presenter_obj.image_li_json.headshot.hosted_file_id_random}" class="max-w-64">${$slct.event_presenter_obj.image_li_json.headshot.filename}`;
|
||||
}
|
||||
}
|
||||
// if ($slct.event_presenter_obj.logo_li_json.secondary.hosted_file_id_random) {
|
||||
// placeholder_li.file_logo_secondary = `<img src="https://dev-demo.oneskyit.com/hosted_file/download/${$slct.event_presenter_obj.logo_li_json.secondary.hosted_file_id_random}">${$slct.event_presenter_obj.logo_li_json.secondary.filename}`;
|
||||
// }
|
||||
@@ -260,8 +260,11 @@ async function handle_submit_form_files(event) {
|
||||
|
||||
if (event.target.image_headshot.files.length > 0) {
|
||||
console.log('The headshot image file was found.');
|
||||
|
||||
hosted_file_results = await handle_input_upload_files(event.target.image_headshot.files);
|
||||
|
||||
event_presenter_do.image_li_json = {};
|
||||
|
||||
if (hosted_file_results) {
|
||||
event_presenter_do.image_li_json.headshot = hosted_file_results[0];
|
||||
console.log(event_presenter_do.image_li_json);
|
||||
@@ -658,7 +661,7 @@ async function handle_update__event_presenter({
|
||||
<label class="label ae_label event_presenter__biography">Speaker Biography
|
||||
<textarea name="biography" id="biography" class="textarea ae_value event_presenter__biography tinymce_editor editor_basic" rows="10" cols="70" bind:value={$slct.event_presenter_obj.biography} placeholder="A short biography the speaker"></textarea>
|
||||
</label>
|
||||
<!-- <p>Biography length: {($slct.event_presenter_obj.biography ? $slct.event_presenter_obj.biography.length : 0)} characters</p> -->
|
||||
<p>Biography length: {($slct.event_presenter_obj.biography ? $slct.event_presenter_obj.biography.length : 0)} characters</p>
|
||||
<p>1,375 is roughly 250 to 300 words</p>
|
||||
|
||||
<div class="flex flex-wrap gap-2 p-1">
|
||||
@@ -706,9 +709,9 @@ async function handle_update__event_presenter({
|
||||
console.log('*** FileDropzone change event ***', e);
|
||||
|
||||
if (e.target.files.length) {
|
||||
placeholder_li.file_logo_primary = `Ready to upload: ${e.target.files[0].name}`;
|
||||
placeholder_li.image_headshot = `Ready to upload: ${e.target.files[0].name}`;
|
||||
} else {
|
||||
placeholder_li.file_logo_primary = 'No files selected.';
|
||||
placeholder_li.image_headshot = 'No files selected.';
|
||||
}
|
||||
}}
|
||||
>
|
||||
@@ -716,7 +719,7 @@ async function handle_update__event_presenter({
|
||||
<svelte:fragment slot="message"><strong>Upload your file</strong> (drag and drop)</svelte:fragment>
|
||||
<svelte:fragment slot="meta">PNG, WEBP, JPG only image types</svelte:fragment>
|
||||
</FileDropzone>
|
||||
{@html placeholder_li.file_logo_primary}
|
||||
{@html placeholder_li.image_headshot}
|
||||
</label>
|
||||
|
||||
</section>
|
||||
|
||||
@@ -35,12 +35,14 @@ onMount(() => {
|
||||
{@html $slct.event_presenter_obj.full_name}
|
||||
</header>
|
||||
|
||||
<p>This quick view of a presenter's information is customizable or can be hidden completely.</p>
|
||||
|
||||
<div class="event_presenter__content">
|
||||
<div
|
||||
class="event_presenter_biography biography"
|
||||
>
|
||||
<div class="ae_label event_presenter__biography">Biography:</div>
|
||||
<pre class="ae_value event_presenter__biography">{@html $slct.event_presenter_obj.biography ? $slct.event_presenter_obj.biography : '-- No Bio Given --'}</pre>
|
||||
<pre class="ae_value event_presenter__biography pre_wrap">{@html $slct.event_presenter_obj.biography ? $slct.event_presenter_obj.biography : '-- No Bio Given --'}</pre>
|
||||
</div>
|
||||
|
||||
<div
|
||||
@@ -67,7 +69,6 @@ onMount(() => {
|
||||
|
||||
<div>
|
||||
<span class="ae_label">Approved:</span>
|
||||
$
|
||||
<span class="ae_value">
|
||||
{$slct.event_presenter_obj.approve ? 'Yes, marked as approved' : 'Not yet marked as approved'}
|
||||
</span>
|
||||
@@ -77,7 +78,7 @@ onMount(() => {
|
||||
<div class="ae_list event_presenter__guests">
|
||||
<h2>More Information</h2>
|
||||
|
||||
<div class="ae_warning">More info will go here</div>
|
||||
<div class="ae_warning">More info can go here</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
@@ -253,7 +253,7 @@ async function handle_load_ae_obj_id__sponsorship_cfg({sponsorship_cfg_id, try_c
|
||||
|
||||
let params = {};
|
||||
|
||||
// $ae_loc.hub.sponsorship_cfg_id_qry_status = 'loading';
|
||||
// $ae_loc.mod.sponsorships.qry_status = 'loading';
|
||||
ae_sponsorship_cfg_obj_get_promise = api.get_ae_obj_id_crud({
|
||||
api_cfg: $ae_api,
|
||||
obj_type: 'sponsorship_cfg',
|
||||
@@ -284,6 +284,30 @@ async function handle_load_ae_obj_id__sponsorship_cfg({sponsorship_cfg_id, try_c
|
||||
})
|
||||
.catch(function (error) {
|
||||
console.log('No results returned or failed.', error);
|
||||
})
|
||||
.finally(function () {
|
||||
$ae_loc.mod.sponsorships.level_guest_max_li = {
|
||||
0: 0,
|
||||
1: 4,
|
||||
2: 8,
|
||||
3: 8,
|
||||
4: 8,
|
||||
5: 16, // This is a guess for CHOW 2024!!!
|
||||
6: 16, // This is a guess for CHOW 2024!!!
|
||||
};
|
||||
// $ae_loc.mod.sponsorships.level_guest_max_li = {
|
||||
// '0': 0,
|
||||
// '1': 4,
|
||||
// '2': 8,
|
||||
// '3': 8,
|
||||
// '4': 8,
|
||||
// '5': 16, // This is a guess for CHOW 2024!!!
|
||||
// '6': 16, // This is a guess for CHOW 2024!!!
|
||||
// };
|
||||
// if ($slct.sponsorship_cfg_obj.info_about_levels) {
|
||||
// $slct.sponsorship_cfg_obj.info_about_levels = JSON.parse($slct.sponsorship_cfg_obj.info_about_levels);
|
||||
// }
|
||||
// $ae_loc.hub.sponsorship_cfg_id_qry_status = 'done';
|
||||
});
|
||||
|
||||
return ae_sponsorship_cfg_obj_get_promise;
|
||||
|
||||
@@ -35,6 +35,7 @@ import { ae_util } from '$lib/ae_utils';
|
||||
import { api } from '$lib/api';
|
||||
import { ae_loc, ae_sess, ae_api, slct, slct_trigger } from '$lib/ae_stores';
|
||||
import type { key_val } from '$lib/ae_stores';
|
||||
import ListSponsorshipObj from './10_list__sponsorship_obj.svelte';
|
||||
|
||||
|
||||
onMount(() => {
|
||||
@@ -79,8 +80,8 @@ const cForm = 'border border-surface-500 p-4 space-y-4 rounded-container-token';
|
||||
|
||||
let ae_promises: key_val = {}; // Promise<any>;
|
||||
|
||||
$ae_loc.mod.sponsorships.submit_status = null;
|
||||
$ae_loc.mod.sponsorships.disable_submit__sponsorship_obj = false;
|
||||
$ae_sess.mod.sponsorships.submit_status = null;
|
||||
$ae_sess.mod.sponsorships.disable_submit__sponsorship_obj = false;
|
||||
let placeholder_li: key_val = {
|
||||
file_logo_primary: '-- No File Selected --',
|
||||
file_logo_secondary: '-- No File Selected --',
|
||||
@@ -104,6 +105,8 @@ if ($slct.sponsorship_id) {
|
||||
logo_li_json: null,
|
||||
media_li_json: null,
|
||||
|
||||
questions_li_json: null,
|
||||
|
||||
social_li_json: null,
|
||||
|
||||
guest_li_json: null,
|
||||
@@ -121,16 +124,16 @@ $: if ($slct.sponsorship_obj) {
|
||||
// Logo related
|
||||
if ($slct.sponsorship_obj.logo_li_json) {
|
||||
if ($slct.sponsorship_obj.logo_li_json.primary.hosted_file_id_random) {
|
||||
placeholder_li.file_logo_primary = `<img src="https://dev-demo.oneskyit.com/hosted_file/download/${$slct.sponsorship_obj.logo_li_json.primary.hosted_file_id_random}">${$slct.sponsorship_obj.logo_li_json.primary.filename}`;
|
||||
placeholder_li.file_logo_primary = `<img src="https://dev-demo.oneskyit.com/hosted_file/download/${$slct.sponsorship_obj.logo_li_json.primary.hosted_file_id_random}" class="max-w-64">${$slct.sponsorship_obj.logo_li_json.primary.filename}`;
|
||||
}
|
||||
if ($slct.sponsorship_obj.logo_li_json.secondary.hosted_file_id_random) {
|
||||
placeholder_li.file_logo_secondary = `<img src="https://dev-demo.oneskyit.com/hosted_file/download/${$slct.sponsorship_obj.logo_li_json.secondary.hosted_file_id_random}">${$slct.sponsorship_obj.logo_li_json.secondary.filename}`;
|
||||
placeholder_li.file_logo_secondary = `<img src="https://dev-demo.oneskyit.com/hosted_file/download/${$slct.sponsorship_obj.logo_li_json.secondary.hosted_file_id_random}" class="max-w-64">${$slct.sponsorship_obj.logo_li_json.secondary.filename}`;
|
||||
}
|
||||
}
|
||||
// Other media files related
|
||||
if ($slct.sponsorship_obj.media_li_json) {
|
||||
if ($slct.sponsorship_obj.media_li_json.promo_video && $slct.sponsorship_obj.media_li_json.promo_video.hosted_file_id_random) {
|
||||
placeholder_li.file_media_promo_video = `<video src="https://dev-demo.oneskyit.com/hosted_file/download/${$slct.sponsorship_obj.media_li_json.promo_video.hosted_file_id_random}" controls></video>${$slct.sponsorship_obj.media_li_json.promo_video.filename}`;
|
||||
placeholder_li.file_media_promo_video = `<video src="https://dev-demo.oneskyit.com/hosted_file/download/${$slct.sponsorship_obj.media_li_json.promo_video.hosted_file_id_random}" controls class="max-w-64"></video>${$slct.sponsorship_obj.media_li_json.promo_video.filename}`;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -138,8 +141,8 @@ $: if ($slct.sponsorship_obj) {
|
||||
async function handle_submit_form(event) {
|
||||
console.log('*** handle_submit_form() ***');
|
||||
|
||||
$ae_loc.mod.sponsorships.disable_submit__sponsorship_obj = true;
|
||||
$ae_loc.mod.sponsorships.submit_status = 'saving';
|
||||
$ae_sess.mod.sponsorships.disable_submit__sponsorship_obj = true;
|
||||
$ae_sess.mod.sponsorships.submit_status = 'saving';
|
||||
|
||||
// Data in
|
||||
let form_data = new FormData(event.target);
|
||||
@@ -211,6 +214,41 @@ async function handle_submit_form(event) {
|
||||
sponsorship_do['amount'] = Number(sponsorship_di.amount)*100;
|
||||
}
|
||||
|
||||
let temp_questions = {};
|
||||
// q_accomodations
|
||||
if (typeof sponsorship_di.accommodations !== 'undefined') {
|
||||
|
||||
temp_questions['accommodations'] = sponsorship_di.accommodations_text;
|
||||
}
|
||||
|
||||
// Marketing for ocial media and email related questions
|
||||
// q_public_recognition - Friend level and above
|
||||
|
||||
// q_social_email - Champion level and above
|
||||
|
||||
// q_social_promos - Signature Partner level only
|
||||
|
||||
// Exibit booth related questions
|
||||
// q_table_exhibit - Supporter level and above
|
||||
if (typeof sponsorship_di.table_exhibit !== 'undefined') {
|
||||
temp_questions['table_exhibit'] = sponsorship_di.table_exhibit;
|
||||
}
|
||||
|
||||
// q_table_power - Supporter level and above
|
||||
if (typeof sponsorship_di.table_power !== 'undefined') {
|
||||
temp_questions['table_power'] = sponsorship_di.table_power;
|
||||
}
|
||||
|
||||
// Virtual sessions related questions
|
||||
// q_virtual_sessions - Champion level and above
|
||||
|
||||
// Plenary sessions related questions
|
||||
// q_plenary_sessions - Advocate level and above
|
||||
// q_plenary_opening - Advocate level and above
|
||||
|
||||
// q_promo_video - Presenting Partner level and above
|
||||
// This is taken care of below with the file uploads.
|
||||
|
||||
// Loop through possible guest list (up to 20) and add to the guest_li_json array.
|
||||
|
||||
let temp_guest_li = [];
|
||||
@@ -278,8 +316,8 @@ async function handle_submit_form(event) {
|
||||
// $ae_loc.mod.sponsorships.link = `${$ae_loc.href_url}/load?sponsorship_id=${$slct.sponsorship_id}`;
|
||||
$ae_loc.mod.sponsorships.link = `${$ae_loc.site_domain}/sponsorships/load?sponsorship_id=${$slct.sponsorship_id}`;
|
||||
console.log('Sponsorship link:', $ae_loc.mod.sponsorships.link);
|
||||
$ae_loc.mod.sponsorships.disable_submit__sponsorship_obj = false;
|
||||
$ae_loc.mod.sponsorships.submit_status = 'created';
|
||||
$ae_sess.mod.sponsorships.disable_submit__sponsorship_obj = false;
|
||||
$ae_sess.mod.sponsorships.submit_status = 'created';
|
||||
|
||||
} else {
|
||||
ae_promises.update__sponsorship_obj = await handle_update__sponsorship({
|
||||
@@ -287,16 +325,16 @@ async function handle_submit_form(event) {
|
||||
obj_id: $slct.sponsorship_id,
|
||||
data: sponsorship_do
|
||||
});
|
||||
$ae_loc.mod.sponsorships.disable_submit__sponsorship_obj = false;
|
||||
$ae_loc.mod.sponsorships.submit_status = 'updated';
|
||||
$ae_sess.mod.sponsorships.disable_submit__sponsorship_obj = false;
|
||||
$ae_sess.mod.sponsorships.submit_status = 'updated';
|
||||
}
|
||||
}
|
||||
|
||||
async function handle_submit_form_files(event) {
|
||||
console.log('*** handle_submit_form() ***');
|
||||
|
||||
$ae_loc.mod.sponsorships.disable_submit__sponsorship_obj = true;
|
||||
$ae_loc.mod.sponsorships.submit_status = 'saving';
|
||||
$ae_sess.mod.sponsorships.disable_submit__sponsorship_obj = true;
|
||||
$ae_sess.mod.sponsorships.submit_status = 'saving';
|
||||
|
||||
let sponsorship_do: key_val = {};
|
||||
|
||||
@@ -327,7 +365,7 @@ async function handle_submit_form_files(event) {
|
||||
if (hosted_file_results) {
|
||||
sponsorship_do.logo_li_json.primary = hosted_file_results[0];
|
||||
console.log(sponsorship_do.logo_li_json);
|
||||
placeholder_li.file_logo_primary = `<img src="/hosted_file/download/${sponsorship_do.logo_li_json.primary.hosted_file_id_random}">${sponsorship_do.logo_li_json.primary.filename}`;
|
||||
placeholder_li.file_logo_primary = `<img src="/hosted_file/download/${sponsorship_do.logo_li_json.primary.hosted_file_id_random}" class="max-w-64">${sponsorship_do.logo_li_json.primary.filename}`;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -359,7 +397,7 @@ async function handle_submit_form_files(event) {
|
||||
obj_id: $slct.sponsorship_id,
|
||||
data: sponsorship_do
|
||||
});
|
||||
$ae_loc.mod.sponsorships.submit_status = 'updated';
|
||||
$ae_sess.mod.sponsorships.submit_status = 'updated';
|
||||
|
||||
// let sponsorship_do: key_val = {
|
||||
// logo_li_json: {
|
||||
@@ -728,7 +766,7 @@ async function handle_update__sponsorship({
|
||||
<button
|
||||
type="submit"
|
||||
class="btn {parent.buttonPositive} btn-sm"
|
||||
disabled={($ae_loc.mod.sponsorships.disable_submit__sponsorship_obj)}
|
||||
disabled={($ae_sess.mod.sponsorships.disable_submit__sponsorship_obj)}
|
||||
on:click={() => {
|
||||
console.log('*** Save button clicked ***');
|
||||
}}
|
||||
@@ -835,17 +873,19 @@ async function handle_update__sponsorship({
|
||||
{#if $slct.sponsorship_cfg_obj && $slct.sponsorship_cfg_obj.level_li_json}
|
||||
<select
|
||||
name="level_num"
|
||||
bind:value={$slct.sponsorship_obj.level_num}
|
||||
class="select"
|
||||
readonly={$slct.sponsorship_obj.paid}
|
||||
>
|
||||
{#each Object.entries($slct.sponsorship_cfg_obj.level_li_json) as [key, value]}
|
||||
<option value={key} selected={($slct.sponsorship_obj.level_num == key ? 'selected' : '')}>{value.name} (${value.amount})</option>
|
||||
<option value={Number(key)}>{value.name} (${value.amount})</option>
|
||||
{/each}
|
||||
</select>
|
||||
{/if}
|
||||
{:else}
|
||||
Not found?
|
||||
{/if}
|
||||
<h3>Sponsorship Payment</h3>
|
||||
{#if $slct.sponsorship_obj.paid}
|
||||
<span class="fas fa-check-circle"></span>
|
||||
<span class="ae_value">Yes, marked as paid</span>
|
||||
@@ -890,6 +930,8 @@ async function handle_update__sponsorship({
|
||||
{$ae_loc.ds['sponsorships__agree_li'][1].code}
|
||||
{/if} -->
|
||||
|
||||
<h3 class="h4">Sponsor General Waiver</h3>
|
||||
<p>Proceeds from your sponsorship benefit the National Marine Sanctuary Foundation, a 501c3 nonprofit organization. Your contribution may be tax-deductible. For more information, please consult with a tax professional. All sales are final, and contributions, purchases, tickets, and sponsorships are non-refundable. As the host of CHOW, the Foundation is committed to the safety and well-being of all participants. If CHOW moves entirely to a virtual platform due to external circumstances, the Foundation will work with you to ensure that we meet your sponsor benefit needs. In the event of cancellation, your purchase becomes a tax-deductible gift.</p>
|
||||
<label for="waiver" class="label">
|
||||
<input
|
||||
type="checkbox"
|
||||
@@ -902,23 +944,41 @@ async function handle_update__sponsorship({
|
||||
Yes, I understand the "Sponsor General Waiver".
|
||||
</label>
|
||||
|
||||
<label for="accommodations" class="label">
|
||||
<h3 class="h4">Special Accomodations</h3>
|
||||
<p>If you require any special accommodations in order to enhance/enable your involvement with CHOW please provide details in the text box below. A member of the CHOW team will reach out to assist.</p>
|
||||
<label for="q_accommodations" class="label">
|
||||
<input
|
||||
type="checkbox"
|
||||
class="checkbox"
|
||||
id="accommodations"
|
||||
name="accommodations"
|
||||
value="1"
|
||||
checked={$slct.sponsorship_obj.accommodations}
|
||||
id="q_accommodations"
|
||||
name="q_accommodations"
|
||||
bind:group={$ae_loc.mod.sponsorships.show_question__accommodations}
|
||||
value="show"
|
||||
checked={($slct.sponsorship_obj.questions_li_json && $slct.sponsorship_obj.questions_li_json.accommodations)}
|
||||
>
|
||||
Yes, please have a member of the CHOW team reach out for special accommodations or assistance.
|
||||
</label>
|
||||
|
||||
{#if ($ae_loc.mod.sponsorships.show_question__accommodations == 'show')}
|
||||
<p>If you require any special accommodations in order to enhance/enable your involvement with CHOW please provide details in the text box below. A member of the CHOW team will reach out to assist.</p>
|
||||
<label for="accommodations_text" class="label">
|
||||
<textarea
|
||||
class="textarea"
|
||||
id="accommodations_text"
|
||||
name="accommodations_text"
|
||||
rows="5"
|
||||
cols="70"
|
||||
value={$slct.sponsorship_obj.questions_li_json && $slct.sponsorship_obj.questions_li_json.accommodations ? $slct.sponsorship_obj.questions_li_json.accommodations : ''}
|
||||
placeholder="Please provide details about any special accommodations or assistance"
|
||||
></textarea>
|
||||
</label>
|
||||
{/if}
|
||||
</fieldset>
|
||||
|
||||
<button
|
||||
type="submit"
|
||||
class="btn {parent.buttonPositive} m-2"
|
||||
disabled={($ae_loc.mod.sponsorships.disable_submit__sponsorship_obj)}
|
||||
disabled={($ae_sess.mod.sponsorships.disable_submit__sponsorship_obj)}
|
||||
on:click={() => {
|
||||
console.log('*** Save start button clicked ***');
|
||||
// if (!confirm('Are you sure you want to save this sponsorship?')) {return false;}
|
||||
@@ -942,10 +1002,19 @@ async function handle_update__sponsorship({
|
||||
>
|
||||
|
||||
<section>
|
||||
<h2>Logos</h2>
|
||||
<h2 class="h3">Logos</h2>
|
||||
<p>Add your logo here. This logo will be displayed at the gala.</p>
|
||||
<h3 class="h4">Color logo</h3>
|
||||
<label for="file_logo_primary">
|
||||
Upload logo (png, webp, jpg, svg)
|
||||
<div>
|
||||
Specs:
|
||||
<ul>
|
||||
<li>PNG File</li>
|
||||
<li>Max file size: 10 MB</li>
|
||||
</ul>
|
||||
|
||||
<p>Please note that these items are required if your company would like to take advantage of the logo recognition benefits associated with this sponsorship level. To prevent delayed benefits fulfillment, please make sure to include this item here.</p>
|
||||
</div>
|
||||
<FileDropzone
|
||||
id="file_logo_primary"
|
||||
name="file_logo_primary"
|
||||
@@ -968,6 +1037,7 @@ async function handle_update__sponsorship({
|
||||
{@html placeholder_li.file_logo_primary}
|
||||
</label>
|
||||
|
||||
<h3 class="h4">KO logo</h3>
|
||||
<label for="file_logo_secondary">
|
||||
Upload a version of your logo for use with dark backgrounds (png, webp, jpg, svg)
|
||||
<FileDropzone
|
||||
@@ -992,11 +1062,11 @@ async function handle_update__sponsorship({
|
||||
{@html placeholder_li.file_logo_secondary}
|
||||
</label>
|
||||
|
||||
|
||||
<!-- CHOW: 5 = Presenting Partner and above -->
|
||||
{#if $slct.sponsorship_obj.level_num >= 5}
|
||||
<hr class="border border-gray-500/20 my-4" />
|
||||
|
||||
|
||||
<h2>Promo video</h2>
|
||||
<h2 class="h3">Promo video</h2>
|
||||
<p>Add your promotional video here. This video will play at the end of the gala.</p>
|
||||
<label for="file_media_promo_video">
|
||||
Promotional video (mp4, mpv, webm, mkv)
|
||||
@@ -1021,13 +1091,14 @@ async function handle_update__sponsorship({
|
||||
</FileDropzone>
|
||||
{@html placeholder_li.file_media_promo_video}
|
||||
</label>
|
||||
{/if}
|
||||
|
||||
</section>
|
||||
|
||||
<button
|
||||
type="submit"
|
||||
class="btn {parent.buttonPositive}"
|
||||
disabled={($ae_loc.mod.sponsorships.disable_submit__sponsorship_obj)}
|
||||
disabled={($ae_sess.mod.sponsorships.disable_submit__sponsorship_obj)}
|
||||
on:click={() => {
|
||||
console.log('*** Save button clicked ***');
|
||||
}}
|
||||
@@ -1043,8 +1114,23 @@ async function handle_update__sponsorship({
|
||||
|
||||
|
||||
<section class="gala_guests">
|
||||
|
||||
<h2 class="h3">Gala Guests</h2>
|
||||
<p>These are the guests that will be attending the gala. The maxium number is based on your currently selected sponsorship level.</p>
|
||||
{#if $slct.sponsorship_obj.level_num == 0}
|
||||
<div class="variant-filled-warning">Please select a sponsorship level before adding guests.</div>
|
||||
{/if}
|
||||
|
||||
<div class="variant-filled-tertiary">Max guests: {$ae_loc.mod.sponsorships.level_guest_max_li[$slct.sponsorship_obj.level_num]}</div>
|
||||
|
||||
{#if $slct.sponsorship_obj.guest_li_json && $slct.sponsorship_obj.guest_li_json.length && $slct.sponsorship_obj.guest_li_json[0].full_name}
|
||||
|
||||
{#if $slct.sponsorship_obj.guest_li_json.length >= $ae_loc.mod.sponsorships.level_guest_max_li[$slct.sponsorship_obj.level_num]}
|
||||
<div class="variant-filled-warning">You have reached the maximum number of guests for your selected sponsorship level.</div>
|
||||
{:else}
|
||||
<!-- <div class="variant-filled-warning">Keep adding guests.</div> -->
|
||||
{/if}
|
||||
|
||||
<form
|
||||
class="modal-form {cForm}"
|
||||
on:submit|preventDefault={handle_submit_form}
|
||||
@@ -1087,7 +1173,7 @@ async function handle_update__sponsorship({
|
||||
<button
|
||||
type="submit"
|
||||
class="btn {parent.buttonPositive} btn-sm"
|
||||
disabled={($ae_loc.mod.sponsorships.disable_submit__sponsorship_obj)}
|
||||
disabled={($ae_sess.mod.sponsorships.disable_submit__sponsorship_obj)}
|
||||
on:click={() => {
|
||||
console.log('*** Save button clicked ***');
|
||||
// if (!confirm('Are you sure you want to save this sponsorship?')) {return false;}
|
||||
@@ -1123,9 +1209,14 @@ async function handle_update__sponsorship({
|
||||
</form>
|
||||
|
||||
{:else}
|
||||
<div class="ae_warning">No guest list found!</div>
|
||||
<!-- <div class="ae_warning">No guest list found!</div> -->
|
||||
{/if}
|
||||
|
||||
{#if $slct.sponsorship_obj.guest_li_json && $slct.sponsorship_obj.guest_li_json.length >= $ae_loc.mod.sponsorships.level_guest_max_li[$slct.sponsorship_obj.level_num]}
|
||||
<span class="fas fa-lock mx-1"></span>
|
||||
Max guests reached
|
||||
{:else}
|
||||
|
||||
<button
|
||||
class="btn btn-sm {parent.buttonPositive} m-2"
|
||||
on:click={() => {
|
||||
@@ -1154,6 +1245,7 @@ async function handle_update__sponsorship({
|
||||
<span class="fas fa-plus mx-1"></span>
|
||||
Add Guest
|
||||
</button>
|
||||
{/if}
|
||||
|
||||
</section>
|
||||
|
||||
@@ -1170,16 +1262,16 @@ async function handle_update__sponsorship({
|
||||
<legend class="legend">Social Media</legend>
|
||||
|
||||
<label for="social_media_twitter" class="label">Twitter
|
||||
<input type="url" id="social_media_twitter" name="social_media_twitter" class="input" placeholder="Twitter" value={$slct.sponsorship_obj.social_li_json.twitter ?? ''} autocomplete="url" />
|
||||
<input type="url" id="social_media_twitter" name="social_media_twitter" class="input" placeholder="Twitter" value={$slct.sponsorship_obj.social_li_json && $slct.sponsorship_obj.social_li_json.twitter ? $slct.sponsorship_obj.social_li_json.twitter : ''} autocomplete="url" />
|
||||
</label>
|
||||
<label for="social_media_facebook" class="label">Facebook
|
||||
<input type="url" id="social_media_facebook" name="social_media_facebook" class="input" placeholder="Facebook" value={$slct.sponsorship_obj.social_li_json.facebook ?? ''} autocomplete="url" />
|
||||
<input type="url" id="social_media_facebook" name="social_media_facebook" class="input" placeholder="Facebook" value={$slct.sponsorship_obj.social_li_json && $slct.sponsorship_obj.social_li_json.facebook ? $slct.sponsorship_obj.social_li_json.facebook : ''} autocomplete="url" />
|
||||
</label>
|
||||
<label for="social_media_instagram" class="label">Instagram
|
||||
<input type="url" id="social_media_instagram" name="social_media_instagram" class="input" placeholder="Instagram" value={$slct.sponsorship_obj.social_li_json.instagram ?? ''} autocomplete="url" />
|
||||
<input type="url" id="social_media_instagram" name="social_media_instagram" class="input" placeholder="Instagram" value={$slct.sponsorship_obj.social_li_json && $slct.sponsorship_obj.social_li_json.instagram ? $slct.sponsorship_obj.social_li_json.instagram : ''} autocomplete="url" />
|
||||
</label>
|
||||
<label for="social_media_linkedin" class="label">LinkedIn
|
||||
<input type="url" id="social_media_linkedin" name="social_media_linkedin" class="input" placeholder="LinkedIn" value={$slct.sponsorship_obj.social_li_json.linkedin ?? ''} autocomplete="url" />
|
||||
<input type="url" id="social_media_linkedin" name="social_media_linkedin" class="input" placeholder="LinkedIn" value={$slct.sponsorship_obj.social_li_json && $slct.sponsorship_obj.social_li_json.linkedin ? $slct.sponsorship_obj.social_li_json.linkedin : ''} autocomplete="url" />
|
||||
</label>
|
||||
</fieldset>
|
||||
|
||||
@@ -1210,7 +1302,7 @@ async function handle_update__sponsorship({
|
||||
<button
|
||||
type="submit"
|
||||
class="btn {parent.buttonPositive}"
|
||||
disabled={($ae_loc.mod.sponsorships.disable_submit__sponsorship_obj)}
|
||||
disabled={($ae_sess.mod.sponsorships.disable_submit__sponsorship_obj)}
|
||||
on:click={() => {
|
||||
console.log('*** Save more button clicked ***');
|
||||
// if (!confirm('Are you sure you want to save this sponsorship?')) {return false;}
|
||||
@@ -1250,9 +1342,9 @@ async function handle_update__sponsorship({
|
||||
<!-- {/if} -->
|
||||
{/if}
|
||||
|
||||
{#if $ae_loc.mod.sponsorships.submit_status == 'saving'}
|
||||
{#if $ae_sess.mod.sponsorships.submit_status == 'saving'}
|
||||
<div class="awaiting alert_msg_pulse" out:fade={{ duration: 2000 }}>Saving...</div>
|
||||
{:else if $ae_loc.mod.sponsorships.submit_status == 'saved'}
|
||||
{:else if $ae_sess.mod.sponsorships.submit_status == 'saved'}
|
||||
<div class="awaiting" out:fade={{ duration: 2000 }}>Finished saving</div>
|
||||
{:else}
|
||||
<!-- <div class="awaiting" out:fade={{ duration: 2000 }}>Nothing here yet</div> -->
|
||||
@@ -1289,7 +1381,7 @@ async function handle_update__sponsorship({
|
||||
<button
|
||||
type="submit"
|
||||
class="btn {parent.buttonPositive}"
|
||||
disabled={($ae_loc.mod.sponsorships.disable_submit__sponsorship_obj)}
|
||||
disabled={($ae_sess.mod.sponsorships.disable_submit__sponsorship_obj)}
|
||||
on:click={() => {
|
||||
console.log('*** Save button clicked ***');
|
||||
if (!confirm('Are you sure you want to save this sponsorship?')) {return false;}
|
||||
@@ -1303,7 +1395,7 @@ async function handle_update__sponsorship({
|
||||
<button
|
||||
type="submit"
|
||||
class="ae_btn btn_primary"
|
||||
disabled={($ae_loc.mod.sponsorships.disable_submit__sponsorship_obj)}
|
||||
disabled={($ae_sess.mod.sponsorships.disable_submit__sponsorship_obj)}
|
||||
on:click={() => {
|
||||
if (!confirm('Are you sure you want to create this sponsorship?')) {return false;}
|
||||
}}
|
||||
|
||||
@@ -48,7 +48,7 @@ onMount(() => {
|
||||
class="sponsorship_description description"
|
||||
>
|
||||
<div class="ae_label sponsorship__description">Description:</div>
|
||||
<pre class="ae_value sponsorship__description">{@html $slct.sponsorship_obj.description ? $slct.sponsorship_obj.description : '-- No Description Given --'}</pre>
|
||||
<pre class="ae_value sponsorship__description pre_wrap">{@html $slct.sponsorship_obj.description ? $slct.sponsorship_obj.description : '-- No Description Given --'}</pre>
|
||||
</div>
|
||||
|
||||
<div
|
||||
|
||||
Reference in New Issue
Block a user