From cd96a3d31f736d32d0501d584b60bb40316e8eb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sabrina=20W=C3=BCst?= <119059706+Sabr1n4W@users.noreply.github.com> Date: Wed, 17 Jun 2026 08:20:33 +0200 Subject: [PATCH 01/35] Move guest name to access code overlay --- lang/en/app.php | 1 + lang/en/auth.php | 1 + lang/en/rooms.php | 1 + .../js/components/RoomAccessCodeOverlay.vue | 206 ++++++++++++++++++ .../js/components/RoomGuestWelcomeCard.vue | 98 +++++++++ resources/js/components/RoomJoinButton.vue | 34 +-- resources/js/views/RoomsView.vue | 112 +++------- 7 files changed, 342 insertions(+), 111 deletions(-) create mode 100644 resources/js/components/RoomAccessCodeOverlay.vue create mode 100644 resources/js/components/RoomGuestWelcomeCard.vue diff --git a/lang/en/app.php b/lang/en/app.php index 721d9b0a6a..055427f402 100644 --- a/lang/en/app.php +++ b/lang/en/app.php @@ -118,6 +118,7 @@ 'next_page' => 'Next page', 'no' => 'No', 'not_found' => '404 | The requested address was not found', + 'or' => 'or', 'overwrite' => 'Overwrite', 'previous_page' => 'Previous page', 'profile' => 'Profile', diff --git a/lang/en/auth.php b/lang/en/auth.php index 9ba62f17a8..9e64df11a6 100644 --- a/lang/en/auth.php +++ b/lang/en/auth.php @@ -42,6 +42,7 @@ 'logout_success' => 'Successfully logged out', 'new_password' => 'New password', 'new_password_confirmation' => 'New password confirmation', + 'offer_login' => "Login with your user account", 'oidc' => [ 'logout_incomplete' => 'You are still logged in at the OpenID Connect provider.', 'redirect' => 'Log in', diff --git a/lang/en/rooms.php b/lang/en/rooms.php index e7cb23dd65..88763c7607 100644 --- a/lang/en/rooms.php +++ b/lang/en/rooms.php @@ -24,6 +24,7 @@ 'detached' => 'Connection to ongoing video conference lost, recovery failed.', 'reconnecting' => 'Connection to ongoing video conference lost, trying to reconnect.', ], + 'continue_as_guest' => 'Continue as guest', 'create' => [ 'ok' => 'Create', 'title' => 'Create room', diff --git a/resources/js/components/RoomAccessCodeOverlay.vue b/resources/js/components/RoomAccessCodeOverlay.vue new file mode 100644 index 0000000000..7ad10f9f00 --- /dev/null +++ b/resources/js/components/RoomAccessCodeOverlay.vue @@ -0,0 +1,206 @@ + + + diff --git a/resources/js/components/RoomGuestWelcomeCard.vue b/resources/js/components/RoomGuestWelcomeCard.vue new file mode 100644 index 0000000000..117cacce52 --- /dev/null +++ b/resources/js/components/RoomGuestWelcomeCard.vue @@ -0,0 +1,98 @@ + + diff --git a/resources/js/components/RoomJoinButton.vue b/resources/js/components/RoomJoinButton.vue index 501602cbd7..b2409451c9 100644 --- a/resources/js/components/RoomJoinButton.vue +++ b/resources/js/components/RoomJoinButton.vue @@ -56,19 +56,6 @@ v-if="!isLoadingAction && !loadingError" class="flex flex-col gap-2" > - -
- - - -
-
diff --git a/resources/js/components/RoomShareButton.vue b/resources/js/components/RoomShareButton.vue index 483329acc2..f7d59e385d 100644 --- a/resources/js/components/RoomShareButton.vue +++ b/resources/js/components/RoomShareButton.vue @@ -150,6 +150,9 @@ const roomUrl = computed(() => { router.resolve({ name: "rooms.view", params: { id: props.room.id }, + hash: props.room.access_code + ? "#accessCode=" + props.room.access_code + : "", }).href ); }); diff --git a/resources/js/components/RoomTabPersonalizedLinksCopyButton.vue b/resources/js/components/RoomTabPersonalizedLinksCopyButton.vue index ade731f8b9..97d57ffe34 100644 --- a/resources/js/components/RoomTabPersonalizedLinksCopyButton.vue +++ b/resources/js/components/RoomTabPersonalizedLinksCopyButton.vue @@ -52,7 +52,8 @@ function copyLink() { settingsStore.getSetting("general.base_url") + router.resolve({ name: "rooms.view", - params: { id: props.roomId, token: props.token }, + params: { id: props.roomId }, + hash: "#personalizedLink=" + props.token, }).href; navigator.clipboard.writeText(link); toast.info( diff --git a/resources/js/router.js b/resources/js/router.js index 2f56c15fb0..2fe652c01f 100644 --- a/resources/js/router.js +++ b/resources/js/router.js @@ -143,14 +143,13 @@ export const routes = [ }, }, { - path: "/rooms/:id/:token?", + path: "/rooms/:id", name: "rooms.view", component: RoomView, meta: { redirectBackAfterLogin: true }, props: (route) => { return { id: route.params.id, - token: route.params.token, bbbReason: route.query.reason, bbbErrors: route.query.errors, }; diff --git a/resources/js/views/RoomsView.vue b/resources/js/views/RoomsView.vue index 14adbe0b3f..55f96b8863 100644 --- a/resources/js/views/RoomsView.vue +++ b/resources/js/views/RoomsView.vue @@ -77,7 +77,7 @@
-
+
-
+