Selaa lähdekoodia

restore switch connection and super admin alert bar

Olivier Massot 2 vuotta sitten
vanhempi
commit
2038c7466f
3 muutettua tiedostoa jossa 26 lisäystä ja 43 poistoa
  1. 4 4
      components/Layout/AlertBar/SuperAdmin.vue
  2. 3 1
      plugins/init.server.ts
  3. 19 38
      stores/accessProfile.ts

+ 4 - 4
components/Layout/AlertBar/SuperAdmin.vue

@@ -6,12 +6,12 @@ Barre d'alerte qui s'affiche lorsque l'utilisateur est un super admin en mode sw
 
 <template>
   <!-- TODO : fonctionnement à valider -->
-  <UiSystemBar v-if="show" text-color="danger">
+  <UiSystemBar v-if="show" class="theme-danger">
     <v-icon small>fas fa-exclamation-triangle</v-icon>
-    <span>{{ $t('super_admin_switch_account') }}</span>
+    <span>{{ $t('super_admin_switch_account') }} </span>
 
-    <a v-if="url" :href="url" class="text-neutral-strong text-decoration-none">
-      <strong>{{ $t('click_here') }}</strong>
+    <a v-if="url" :href="url" class="text-decoration-none on-danger">
+      &nbsp;<strong>{{ $t('click_here') }}</strong>
     </a>
   </UiSystemBar>
 </template>

+ 3 - 1
plugins/init.server.ts

@@ -8,6 +8,7 @@ export default defineNuxtPlugin(async () => {
 
     const bearer = useCookie('BEARER')
     let accessCookieId = useCookie('AccessId')
+    const switchId = useCookie('SwitchAccessId')
 
     if (accessCookieId.value === null || Number.isNaN(accessCookieId.value)) {
         redirectToLogout()
@@ -20,7 +21,8 @@ export default defineNuxtPlugin(async () => {
 
     accessProfile.$patch({
         bearer: bearer.value,
-        id: accessId
+        id: accessId,
+        switchId: switchId.value !== null ? parseInt(switchId.value) : null
     })
 
     const {em} = useEntityManager()

+ 19 - 38
stores/accessProfile.ts

@@ -120,51 +120,34 @@ export const useAccessProfileStore = defineStore('accessProfile', () => {
     isPayer.value = profile.isPayor
     roles.value = RoleUtils.filterFunctionRoles(profileRoles)
 
-    // Time to add the original Access (switch User case)
-    originalAccess.value = profile.originalAccess
+    // Add the original Access (switch User case)
+    if (profile.originalAccess !== null) {
+      originalAccess.value = {
+        id: profile.originalAccess.id,
+        name: profile.originalAccess.name,
+        givenName: profile.originalAccess.givenName,
+        gender: profile.originalAccess.gender,
+        isSuperAdminAccess: profile.originalAccess.isSuperAdminAccess,
+        avatarId: profile.originalAccess.avatarId,
+        organization: {
+          id: profile.originalAccess.organization.id,
+          name: profile.originalAccess.organization.name
+        } as BaseOrganizationProfile
+      } as OrignalAccessProfile
+    }
 
-    // Time to set Multi Accesses
+    // Set multi-accesses
     setMultiAccesses(profile.multiAccesses)
 
-    // Time to set Family Accesses
+    // Set family-accesses
     setFamilyAccesses(profile.familyAccesses)
 
-    // Time to set Organization Profile
+    // Set organization profile
+    // TODO: à voir si c'est bien d'appeler un autre store d'ici où s'il vaudrait mieux le faire dans la couche supérieure
     const organizationProfile = useOrganizationProfileStore()
     organizationProfile.setProfile(profile.organization)
   }
 
-  const refreshProfile = (profile: any) => {
-    name.value = profile.name
-    givenName.value = profile.givenName
-    gender.value = profile.gender
-    avatarId.value = profile.avatarId
-    activityYear.value = profile.activityYear
-
-    const organizationProfileStore = useOrganizationProfileStore()
-    organizationProfileStore.refreshProfile(profile.organization)
-  }
-
-  const setOriginalAccess = (access: any) => {
-    if (access) {
-      const organization: BaseOrganizationProfile = {
-        id: access.organization.id,
-        name: access.organization.name
-      }
-
-      const originalAccess: OrignalAccessProfile = {
-        id: access.id,
-        name: access.name,
-        givenName: access.givenName,
-        gender: access.gender,
-        isSuperAdminAccess: access.isSuperAdminAccess,
-        avatarId: access.avatarId,
-        organization: organization
-      }
-      setOriginalAccess(originalAccess)
-    }
-  }
-
   const setHistorical = (past: boolean, present: boolean, future: boolean) => {
     historical.value = <Historical> {
       past,
@@ -216,8 +199,6 @@ export const useAccessProfileStore = defineStore('accessProfile', () => {
     setMultiAccesses,
     setFamilyAccesses,
     setProfile,
-    refreshProfile,
-    setOriginalAccess,
     setHistorical,
     setHistoricalRange
   }