Просмотр исходного кода

Merge branch 'hotfix/hide_websites_menu_when_no_website'

Olivier Massot 4 месяцев назад
Родитель
Сommit
ed5664ca1d
3 измененных файлов с 27 добавлено и 4 удалено
  1. 1 1
      .gitlab-ci.yml
  2. 22 2
      components/Layout/Header.vue
  3. 4 1
      plugins/init.server.ts

+ 1 - 1
.gitlab-ci.yml

@@ -28,7 +28,7 @@ build_image:
   before_script:
     - echo "" > ./env/local.app.opentalent.fr.crt
     - echo "" > ./env/local.app.opentalent.fr.key
-    - yarn install --network-timeout 10000
+    - yarn install --frozen-lockfile --network-timeout 10000
     - HOSTNAME=ci yarn prepare
 
 unit:

+ 22 - 2
components/Layout/Header.vue

@@ -29,7 +29,22 @@ Contient entre autres le nom de l'organisation, l'accès à l'aide et aux préf
 
     <LayoutHeaderHomeBtn v-if="smAndUp" />
 
-    <LayoutHeaderMenu name="WebsiteList" :translate-label="false" />
+    <LayoutHeaderMenu
+      v-if="isWebsitesMenuNotEmpty"
+      name="WebsiteList"
+      :translate-label="false"
+    />
+
+    <v-btn
+      v-else
+      icon
+      size="small"
+      class="ml-2"
+      href="https://opentalent.fr"
+      target="_blank"
+    >
+      <v-icon icon="fas fa-globe-americas" class="on-primary" />
+    </v-btn>
 
     <LayoutHeaderMenu name="MyAccesses" />
 
@@ -73,7 +88,7 @@ const title: ComputedRef<string> = computed(
   () => organizationProfile.name ?? 'Opentalent',
 )
 
-const { hasMenu, isMenuOpened, toggleMenu } = useMenu()
+const { hasMenu, isMenuOpened, toggleMenu, getMenu } = useMenu()
 
 const { smAndUp } = useDisplay()
 
@@ -113,6 +128,11 @@ const showUniversalButton =
   ability.can('manage', 'equipments')
 
 const layoutStore = useLayoutStore()
+
+const websitesMenu = getMenu('WebsiteList')
+const isWebsitesMenuNotEmpty = computed(
+  () => websitesMenu?.children?.length > 0,
+)
 </script>
 
 <style scoped>

+ 4 - 1
plugins/init.server.ts

@@ -46,7 +46,10 @@ export default defineNuxtPlugin(async () => {
   try {
     await initiateProfile(accessId, bearer.value ?? '', switchId)
   } catch (error) {
-    if (error instanceof UnauthorizedError) {
+    if (
+      error instanceof UnauthorizedError &&
+      runtimeConfig.public.env === 'production'
+    ) {
       redirectToLogout()
     } else {
       throw error