diff --git a/app/(admin)/admin/booking/[id]/page.tsx b/app/(admin)/admin/booking/[id]/page.tsx index c101ee4..17bdc38 100644 --- a/app/(admin)/admin/booking/[id]/page.tsx +++ b/app/(admin)/admin/booking/[id]/page.tsx @@ -494,7 +494,7 @@ export default function AppointmentDetailPage() { )} {/* Meeting Information */} - {appointment.jitsi_meet_url && ( + {appointment.moderator_join_url && (

@@ -513,10 +513,10 @@ export default function AppointmentDetailPage() { {appointment.jitsi_room_id}

@@ -525,21 +525,21 @@ export default function AppointmentDetailPage() { )}

- Meeting Link + Moderator Meeting Link

- {appointment.can_join_meeting ? ( + {appointment.can_join_as_moderator ? ( <> - {appointment.jitsi_meet_url} + {appointment.moderator_join_url}
- {appointment.jitsi_meet_url} + {appointment.moderator_join_url}
- {appointment.can_join_meeting !== undefined && ( -
-
-

- {appointment.can_join_meeting ? "Meeting is active - You can join now" : "Meeting is not available yet"} + {appointment.can_join_as_moderator !== undefined && ( +

+
+

+ {appointment.can_join_as_moderator ? "Meeting is active - You can join as moderator" : "Meeting is not available yet"}

)} @@ -636,18 +636,18 @@ export default function AppointmentDetailPage() { )} {/* Join Meeting Button (if scheduled) */} - {appointment.status === "scheduled" && appointment.jitsi_meet_url && ( + {appointment.status === "scheduled" && appointment.moderator_join_url && (
- {appointment.can_join_meeting ? ( + {appointment.can_join_as_moderator ? ( ) : ( @@ -467,18 +467,18 @@ export default function UserAppointmentDetailPage() { Meeting Link

- {appointment.can_join_meeting !== undefined && ( -
-
-

- {appointment.can_join_meeting ? "Meeting is active - You can join now" : "Meeting is not available yet"} + {appointment.can_join_as_participant !== undefined && ( +

+
+

+ {appointment.can_join_as_participant ? "Meeting is active - You can join now" : "Meeting is not available yet"}

)} @@ -552,12 +552,12 @@ export default function UserAppointmentDetailPage() {
{/* Join Meeting Button */} - {appointment.status === "scheduled" && appointment.jitsi_meet_url && ( + {appointment.status === "scheduled" && appointment.participant_join_url && (
- {appointment.can_join_meeting ? ( + {appointment.can_join_as_participant ? ( diff --git a/lib/models/appointments.ts b/lib/models/appointments.ts index 14d68e2..2a8b1bf 100644 --- a/lib/models/appointments.ts +++ b/lib/models/appointments.ts @@ -18,8 +18,17 @@ export interface Appointment { rejection_reason?: string; jitsi_meet_url?: string; jitsi_room_id?: string; + jitsi_meeting_created?: boolean; + meeting_started_at?: string; + meeting_ended_at?: string; + meeting_duration_actual?: number; + meeting_info?: any; has_jitsi_meeting?: boolean | string; can_join_meeting?: boolean | string; + can_join_as_moderator?: boolean | string; + can_join_as_participant?: boolean | string; + moderator_join_url?: string; + participant_join_url?: string; meeting_status?: string; matching_availability?: MatchingAvailability | Array<{ date: string; @@ -39,6 +48,7 @@ export interface Appointment { export interface SelectedSlot { day: number; // 0-6 (Monday-Sunday) + date?: string; // YYYY-MM-DD format time_slot: "morning" | "afternoon" | "evening"; }