From 20551fee63e85266f4ce01bb30f0ffee933e40e7 Mon Sep 17 00:00:00 2001 From: sajjadtalkhabi <97734061+sajjadtalkhabi@users.noreply.github.com> Date: Mon, 17 Aug 2026 16:59:24 +0330 Subject: [PATCH] fix: bugs --- src/components/HeaderBlock.vue | 10 +++++++++- src/enums/index.js | 5 ++++- src/features/auth/composables/useRedirectAfterLogin.js | 9 ++++++++- src/layouts/sidebars/AdminSidebar.vue | 5 ++++- src/layouts/sidebars/CounselorSidebar.vue | 5 ++++- src/layouts/sidebars/StudentSidebar.vue | 5 ++++- src/router/guards.js | 7 ++++++- 7 files changed, 39 insertions(+), 7 deletions(-) diff --git a/src/components/HeaderBlock.vue b/src/components/HeaderBlock.vue index 1a070af..52081e5 100644 --- a/src/components/HeaderBlock.vue +++ b/src/components/HeaderBlock.vue @@ -7,7 +7,9 @@
@@ -52,6 +54,7 @@ import { computed, ref } from 'vue' import { useRouter } from 'vue-router' import { useUIStore } from '@/store/ui' +import { MAIN_SITE_URL } from '@/enums' import { gallery } from '@/utils/gallery' import useAuth from '@/composables/useAuth' import SvgIcon from '@/components/icons/SvgIcon.vue' @@ -149,7 +152,12 @@ const iconList = [ display: none; } + a { + display: block; + } + img { + display: block; margin: 0 auto; height: 3.5rem; object-fit: contain; diff --git a/src/enums/index.js b/src/enums/index.js index b71dc3f..798e2bd 100644 --- a/src/enums/index.js +++ b/src/enums/index.js @@ -212,8 +212,11 @@ export const MISSIONARY_REQUEST_STATUS = Object.freeze({ rejected: 'رد شده', }) +export const MAIN_SITE_URL = 'https://madresebanoo.ir/' + // Landing route per role after login / when a logged-in user hits a guest -// page. Roles not listed here fall back to the student dashboard. +// page. Roles not listed here fall back to the student dashboard. Approved +// users of every role except admin bypass this and land on MAIN_SITE_URL. export const ROLE_HOME_ROUTES = Object.freeze({ admin: 'admin-dashboard', counselor: 'counselor-dashboard', diff --git a/src/features/auth/composables/useRedirectAfterLogin.js b/src/features/auth/composables/useRedirectAfterLogin.js index 5d21c23..78e3d08 100644 --- a/src/features/auth/composables/useRedirectAfterLogin.js +++ b/src/features/auth/composables/useRedirectAfterLogin.js @@ -1,6 +1,9 @@ -import { ROLE_HOME_ROUTES } from '@/enums' import { useAuthStore } from '@/store/auth' import { useRoute, useRouter } from 'vue-router' +import { MAIN_SITE_URL, ROLE_HOME_ROUTES } from '@/enums' + +export const shouldLandOnMainSite = (auth) => + auth.role !== 'admin' && auth.user?.status === 'approved' export const useRedirectAfterLogin = () => { const router = useRouter() @@ -13,6 +16,10 @@ export const useRedirectAfterLogin = () => { router.push(redirect).catch(() => router.push('/')) return } + if (shouldLandOnMainSite(auth)) { + window.location.href = MAIN_SITE_URL + return + } const target = { name: ROLE_HOME_ROUTES[auth.role] || 'student-dashboard' } router.push(target).catch(() => router.push('/')) } diff --git a/src/layouts/sidebars/AdminSidebar.vue b/src/layouts/sidebars/AdminSidebar.vue index 90ebc24..63d8438 100644 --- a/src/layouts/sidebars/AdminSidebar.vue +++ b/src/layouts/sidebars/AdminSidebar.vue @@ -1,7 +1,9 @@