Browse Source

Menu dons

Vincent GUFFON 5 years ago
parent
commit
3d110c4d15

+ 7 - 0
config/abilities/pages/donor.yaml

@@ -0,0 +1,7 @@
+  donors_page:
+    action: 'display'
+    services:
+      access:
+        - {function: hasAbility, parameters: [{action: 'read', subject: 'donors'}]}
+      organization:
+        - {function: hasModule, parameters: ['Donors']}

+ 1 - 1
config/abilities/pages/equipment.yaml

@@ -2,6 +2,6 @@
     action: 'display'
     services:
       access:
-        - {function: hasAbility, parameters: [{action: 'read', subject: 'equipment'}]}
+        - {function: hasAbility, parameters: [{action: 'read', subject: 'equipments'}]}
       organization:
         - {function: hasModule, parameters: ['Equipments']}

+ 1 - 0
lang/layout/fr-FR.js

@@ -31,5 +31,6 @@ export default (context, locale) => {
     message_send: 'Éléments envoyés',
     message_templates: 'Modèles',
     communication: 'Communication',
+    donors: 'Partenariats et cons',
   })
 }

+ 18 - 1
use/template/menu.ts

@@ -51,6 +51,9 @@ class Menu{
     const communicationMenu = this.communicationMenu()
     if(communicationMenu) menu.push(communicationMenu)
 
+    const donorsMenu = this.donorsMenu()
+    if(donorsMenu) menu.push(donorsMenu)
+
     return ref(menu)
   }
 
@@ -116,7 +119,10 @@ class Menu{
    * @return {ItemMenu | null}
    */
   equipmentMenu():ItemMenu | null {
-    return this.constructMenu('fa-cube', 'equipment', '/equipment/list', true)
+    if (this.$ability().can('display', 'equipment_page')) {
+      return this.constructMenu('fa-cube', 'equipment', '/equipment/list', true)
+    }
+    return null;
   }
 
   /**
@@ -226,6 +232,17 @@ class Menu{
     return children.length > 0 ? this.constructMenu('fa-comments', 'communication', undefined, undefined, children) : null;
   }
 
+  /**
+   * Construit le menu Partenariat et Dons ou null si aucune page accessible
+   * @return {ItemMenu | null}
+   */
+  donorsMenu():ItemMenu | null {
+    if (this.$ability().can('display', 'donors_page')) {
+      return this.constructMenu('far fa-handshake', 'donors', '/donors/list/', true)
+    }
+    return null;
+  }
+
 
   /**
    * Construit un ItemMenu