mirror of
https://github.com/Monadical-SAS/reflector.git
synced 2025-12-20 20:29:06 +00:00
Redirect to past meeting authenticated users
This commit is contained in:
@@ -1,8 +1,10 @@
|
|||||||
"use client";
|
"use client";
|
||||||
|
|
||||||
import "@whereby.com/browser-sdk/embed";
|
import "@whereby.com/browser-sdk/embed";
|
||||||
import { useRef } from "react";
|
import { useCallback, useEffect, useRef } from "react";
|
||||||
import useRoomMeeting from "./useRoomMeeting";
|
import useRoomMeeting from "./useRoomMeeting";
|
||||||
|
import { useRouter } from "next/navigation";
|
||||||
|
import { useFiefIsAuthenticated } from "@fief/fief/build/esm/nextjs/react";
|
||||||
|
|
||||||
export type RoomDetails = {
|
export type RoomDetails = {
|
||||||
params: {
|
params: {
|
||||||
@@ -14,11 +16,27 @@ export default function Room(details: RoomDetails) {
|
|||||||
const wherebyRef = useRef<HTMLElement>(null);
|
const wherebyRef = useRef<HTMLElement>(null);
|
||||||
const roomName = details.params.roomName;
|
const roomName = details.params.roomName;
|
||||||
const meeting = useRoomMeeting(roomName);
|
const meeting = useRoomMeeting(roomName);
|
||||||
|
const router = useRouter();
|
||||||
|
const isAuthenticated = useFiefIsAuthenticated();
|
||||||
|
|
||||||
const roomUrl = meeting?.response?.host_room_url
|
const roomUrl = meeting?.response?.host_room_url
|
||||||
? meeting?.response?.host_room_url
|
? meeting?.response?.host_room_url
|
||||||
: meeting?.response?.room_url;
|
: meeting?.response?.room_url;
|
||||||
|
|
||||||
|
const handleLeave = useCallback((e) => {
|
||||||
|
router.push("/browse");
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (!isAuthenticated || !roomUrl) return;
|
||||||
|
|
||||||
|
wherebyRef.current?.addEventListener("leave", handleLeave);
|
||||||
|
|
||||||
|
return () => {
|
||||||
|
wherebyRef.current?.removeEventListener("leave", handleLeave);
|
||||||
|
};
|
||||||
|
}, [handleLeave, roomUrl]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
{roomUrl && (
|
{roomUrl && (
|
||||||
|
|||||||
Reference in New Issue
Block a user