Adding new Jitsi meeting links and related.

This commit is contained in:
Scott Idem
2025-09-23 12:41:14 -04:00
parent 7490545ba7
commit 5bf231c468
3 changed files with 234 additions and 8 deletions

View File

@@ -396,6 +396,30 @@ async function handle_submit_form(event: any) {
}
};
console.log(event_do['attend_json']);
event_do['attend_url'] = zoom_url;
event_do['attend_url_text'] = `Join Zoom Meeting: ${zoom_meeting_id ? zoom_url : ''}`;
event_do['attend_url_passcode'] = zoom_passcode;
event_do['attend_url_code'] = zoom_meeting_id;
} else if ($idaa_sess.recovery_meetings?.attend_platform === 'Jitsi') {
let jitsi_full_url = event_meeting_fd.attend_url ? event_meeting_fd.attend_url.trim() : null;
let jitsi_name = event_meeting_fd.attend_url_code ? event_meeting_fd.attend_url_code.trim() : null;
let jitsi_passcode = event_meeting_fd.attend_url_passcode ? event_meeting_fd.attend_url_passcode.trim() : null;
event_do['attend_json'] = {
'jitsi':
{
full_url: jitsi_full_url,
name: jitsi_name,
passcode: jitsi_passcode,
}
};
console.log(event_do['attend_json']);
event_do['attend_url'] = jitsi_full_url;
event_do['attend_url_text'] = `Join Jitsi Meeting: ${jitsi_name ? jitsi_full_url : ''}`;
event_do['attend_url_passcode'] = jitsi_passcode;
event_do['attend_url_code'] = jitsi_name;
} else {
event_do['attend_json'] = {};
}
@@ -722,6 +746,8 @@ $effect(() => {
if (browser && $idaa_slct.event_obj?.attend_json) {
if ($idaa_slct.event_obj?.attend_json?.zoom) {
$idaa_sess.recovery_meetings.attend_platform = 'Zoom';
} else if ($idaa_slct.event_obj?.attend_json?.jitsi) {
$idaa_sess.recovery_meetings.attend_platform = 'Jitsi';
} else {
$idaa_sess.recovery_meetings.attend_platform = null;
}
@@ -1232,14 +1258,30 @@ $effect(() => {
novi_btn
btn btn-lg
preset-filled-tertiary-200-800
transition
transition-all
"
onclick={() => {
$idaa_sess.recovery_meetings.attend_platform = 'other'
}}
>
<span class="fas fa-minus"></span>
Not Zoom? Other Platform/Service
Not Zoom - Other Platform/Service
</button>
{:else if $idaa_sess.recovery_meetings?.attend_platform === 'Jitsi'}
<button
type="button"
class="
novi_btn
btn btn-lg
preset-filled-tertiary-200-800
transition-all
"
onclick={() => {
$idaa_sess.recovery_meetings.attend_platform = 'other'
}}
>
<span class="fas fa-minus"></span>
Not Jitsi - Other Platform/Service
</button>
{:else if !$idaa_sess.recovery_meetings?.attend_platform || $idaa_sess.recovery_meetings?.attend_platform === 'other'}
<button
@@ -1247,9 +1289,8 @@ $effect(() => {
class="
novi_btn
btn btn-lg
w-48
preset-filled-tertiary-200-800
transition
transition-all
"
onclick={() => {
if (!$idaa_slct.event_obj.attend_json || JSON.stringify($idaa_slct.event_obj.attend_json) === '{}') {
@@ -1262,14 +1303,56 @@ $effect(() => {
"full_url": "",
}
};
} else if ($idaa_slct.event_obj.attend_json && !$idaa_slct.event_obj.attend_json.zoom) {
$idaa_slct.event_obj.attend_json.zoom = {
"domain": "zoom.us",
"meeting_id": "",
"passcode": "",
"passcode_enc": "",
"full_url": "",
};
}
$idaa_sess.recovery_meetings.attend_platform = 'Zoom'
$idaa_trig = 'update_zoom_full_url';
}}
>
<!-- <span class="fas fa-plus"></span> -->
<span class="fas fa-video m-1"></span>
Zoom Meeting?
Zoom Meeting
</button>
<button
type="button"
class="
novi_btn
btn btn-lg
preset-filled-tertiary-200-800
transition-all
"
onclick={() => {
if (!$idaa_slct.event_obj.attend_json || JSON.stringify($idaa_slct.event_obj.attend_json) === '{}') {
$idaa_slct.event_obj.attend_json = {
"jitsi": {
"full_url": $lq__event_obj?.attend_url ?? '',
"name": $lq__event_obj?.attend_url_code ?? '',
"passcode": $lq__event_obj?.attend_url_passcode ?? '',
}
};
} else if ($idaa_slct.event_obj.attend_json && !$idaa_slct.event_obj.attend_json.jitsi) {
$idaa_slct.event_obj.attend_json.jitsi = {
"full_url": $lq__event_obj?.attend_url ?? '',
"name": $lq__event_obj?.attend_url_code ?? '',
"passcode": $lq__event_obj?.attend_url_passcode ?? '',
};
}
$idaa_sess.recovery_meetings.attend_platform = 'Jitsi'
// $idaa_trig = 'update_zoom_full_url';
}}
>
<!-- <span class="fas fa-plus"></span> -->
<span class="fas fa-video m-1"></span>
IDAA Jitsi Meeting
</button>
{/if}
<!-- <label for="attend_platform" class="form-group w-100 col-12">
@@ -1419,6 +1502,55 @@ $effect(() => {
<!-- {$idaa_slct.event_obj.attend_json.zoom.full_url} -->
{:else if $idaa_sess.recovery_meetings?.attend_platform === 'Jitsi'}
<div class="flex flex-row flex-wrap gap-2 items-center justify-start">
<label for="attend_url">
Jitsi Meeting Name (code)
<input
type="text"
id="attend_url_code" name="attend_url_code"
autocomplete="off"
bind:value={$idaa_slct.event_obj.attend_json.jitsi.name}
class="
form-control
input w-72 preset-tonal-surface hover:preset-filled-surface-100-900
"
placeholder="Jitsi Meeting Name"
>
</label>
<label for="attend_url_passcode">
Jitsi Passcode
<input
type="text"
id="attend_url_passcode" name="attend_url_passcode"
autocomplete="off"
bind:value={$idaa_slct.event_obj.attend_json.jitsi.passcode}
class="
form-control
input w-72 preset-tonal-surface hover:preset-filled-surface-100-900
"
placeholder="Jitsi Passcode"
>
</label>
</div>
<label for="jitsi_attend_url">
Jitsi Meeting URL
<input
type="url"
id="attend_url" name="attend_url"
autocomplete="url"
readonly={1==3}
bind:value={$idaa_slct.event_obj.attend_json.jitsi.full_url}
class="
input w-100 preset-tonal-surface hover:preset-filled-surface-100-900 form-control
"
placeholder="Jitsi Meeting URL"
>
<!-- Example: https://meet.jit.si/YourMeetingName -->
</label>
{:else if !$idaa_sess.recovery_meetings?.attend_platform || $idaa_sess.recovery_meetings?.attend_platform === 'other'}
<label for="attend_url">URL to access the virtual meeting
<input type="url" class="input w-72 preset-tonal-surface hover:preset-filled-surface-100-900 form-control" id="attend_url" name="attend_url" placeholder="URL to access the virtual meeting" value={$lq__event_obj?.attend_url ?? ''} autocomplete="url">

View File

@@ -141,6 +141,7 @@ if ($idaa_slct.event_id) {
class:hidden={!$lq__event_obj?.virtual}
>
{#if $lq__event_obj?.attend_json?.zoom}
<div
class="event__attend"
class:ae_d_none={!$lq__event_obj?.attend_json?.zoom?.full_url}
@@ -187,8 +188,55 @@ if ($idaa_slct.event_id) {
></MyClipboard>
</div>
{#if !$lq__event_obj?.attend_json?.zoom?.full_url || !$lq__event_obj?.attend_json?.zoom?.meeting_id}
<div class="meeting_attend_url"
{:else if $lq__event_obj?.attend_json?.jitsi}
<div
class="event__attend"
class:ae_d_none={!$lq__event_obj?.attend_json?.jitsi?.full_url}
>
<span class="ae_label">
<span class="fas fa-video m-1"></span>
Jitsi Meeting:
</span>
<span class="ae_value">
<!-- text-blue-800 hover:underline -->
<a
href="{$lq__event_obj?.attend_json?.jitsi?.full_url}"
target="_blank"
class="
novi_btn btn-default
btn btn-sm
preset-outlined-tertiary-800-200
preset-filled-tertiary-200-800
hover:preset-filled-tertiary-600-400
transition
"
>
<span class="fas fa-link m-1"></span>
<!-- {$lq__event_obj?.attend_json?.jitsi?.full_url} -->
Join: {$lq__event_obj?.attend_json?.jitsi?.name ?? 'Jitsi Meeting'}
{#if $lq__event_obj?.attend_json?.jitsi?.passcode}
| Passcode: {$lq__event_obj?.attend_json?.jitsi?.passcode}
{/if}
</a>
</span>
<MyClipboard
value={$lq__event_obj?.attend_json?.jitsi?.full_url}
btn_text="Copy Jitsi Link"
btn_title="Copy Jitsi link to clipboard"
btn_class="
novi_btn
btn btn-sm
preset-outlined-tertiary-800-200
preset-filled-tertiary-200-800
hover:preset-filled-tertiary-600-400
transition
"
></MyClipboard>
</div>
{:else}
<div class="meeting_attend_url"
class:hidden={!$lq__event_obj?.attend_url}
>
<span class="ae_label">

View File

@@ -255,7 +255,7 @@ function add_activity_log(
<!-- {idaa_event_obj?.attend_json?.zoom?.full_url} -->
Join: Zoom ID {idaa_event_obj?.attend_json?.zoom?.meeting_id}
{#if idaa_event_obj?.attend_json?.zoom?.passcode}
| Passcode: {idaa_event_obj?.attend_json?.zoom?.passcode}
Passcode: {idaa_event_obj?.attend_json?.zoom?.passcode}
{/if}
</a>
</span>
@@ -275,6 +275,52 @@ function add_activity_log(
></MyClipboard>
</div>
<div
class="event__attend"
class:ae_d_none={!idaa_event_obj?.attend_json?.jitsi?.full_url}
>
<span class="ae_label">
<span class="fas fa-video m-1"></span>
Jitsi Meeting:
</span>
<span class="ae_value">
<!-- text-blue-800 hover:underline -->
<a
href="{idaa_event_obj?.attend_json?.jitsi?.full_url}"
target="_blank"
class="
novi_btn btn-default
btn btn-sm
preset-outlined-tertiary-800-200
preset-filled-tertiary-200-800
hover:preset-filled-tertiary-600-400
transition
"
>
<span class="fas fa-link m-1"></span>
<!-- {idaa_event_obj?.attend_json?.jitsi?.full_url} -->
Join: {idaa_event_obj?.attend_json?.jitsi?.name ?? 'Jitsi Meeting'}
{#if idaa_event_obj?.attend_json?.jitsi?.passcode}
Passcode: {idaa_event_obj?.attend_json?.jitsi?.passcode}
{/if}
</a>
</span>
<MyClipboard
value={idaa_event_obj?.attend_json?.jitsi?.full_url}
btn_text="Copy Jitsi Link"
btn_title="Copy Jitsi link to clipboard"
btn_class="
novi_btn
btn btn-sm
preset-outlined-tertiary-800-200
preset-filled-tertiary-200-800
hover:preset-filled-tertiary-600-400
transition
"
></MyClipboard>
</div>
<div
class="ae_group event__timezone event__recurring_start_time"
>