From f30d00ff500e2af97df41947ef0f7619f5befc0f Mon Sep 17 00:00:00 2001
From: Hangzhi Yu <hangzhi@protonmail.com>
Date: Tue, 10 Sep 2024 17:36:10 +0200
Subject: [PATCH] Add rule for viewing parent menu entry

---
 aleksis/apps/alsijil/frontend/index.js | 2 +-
 aleksis/apps/alsijil/rules.py          | 9 +++++++++
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/aleksis/apps/alsijil/frontend/index.js b/aleksis/apps/alsijil/frontend/index.js
index 64073a7ba..bc75b7d66 100644
--- a/aleksis/apps/alsijil/frontend/index.js
+++ b/aleksis/apps/alsijil/frontend/index.js
@@ -7,7 +7,7 @@ export default {
     titleKey: "alsijil.menu_title",
     icon: "mdi-account-group-outline",
     iconActive: "mdi-account-group",
-    validators: [hasPersonValidator],
+    permission: "alsijil.view_parent_menu_rule",
   },
   props: {
     byTheGreatnessOfTheAlmightyAleksolotlISwearIAmWorthyOfUsingTheLegacyBaseTemplate: true,
diff --git a/aleksis/apps/alsijil/rules.py b/aleksis/apps/alsijil/rules.py
index 171a07657..3bb3b08f4 100644
--- a/aleksis/apps/alsijil/rules.py
+++ b/aleksis/apps/alsijil/rules.py
@@ -466,3 +466,12 @@ add_perm(
     "alsijil.edit_personal_note_rule",
     edit_personal_note_predicate,
 )
+
+# View parent menu entry
+view_parent_menu_predicate = has_person & (
+    view_documentations_menu_predicate | view_extramarks_predicate
+)
+add_perm(
+    "alsijil.view_parent_menu_rule",
+    view_parent_menu_predicate,
+)
-- 
GitLab