From 1c495bf31e2f193f3beaf0606075e82c4fb001b5 Mon Sep 17 00:00:00 2001 From: Martin Obersteiner Date: Wed, 10 Apr 2024 12:03:47 +0200 Subject: [PATCH] customization: instructions for changing menus --- .../look-and-feel/img/user-dashboard.png | Bin 0 -> 25311 bytes docs/customize/look-and-feel/menus.md | 109 ++++++++++++++++++ mkdocs.yml | 1 + 3 files changed, 110 insertions(+) create mode 100644 docs/customize/look-and-feel/img/user-dashboard.png create mode 100644 docs/customize/look-and-feel/menus.md diff --git a/docs/customize/look-and-feel/img/user-dashboard.png b/docs/customize/look-and-feel/img/user-dashboard.png new file mode 100644 index 0000000000000000000000000000000000000000..68a2902ad85c24741db5a73d710d094dbbf6a74e GIT binary patch literal 25311 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 +invenio-cli run +``` + +## Advanced Configuration + +You can add to the configuration any kwarg that +`flask_menu.menu:MenuNode.register` understands. + +### Configuring visibility + +`visible_when` can be any function that can be called with no arguments and +returns a boolean. + +```python +# invenio.cfg file + +from flask_menu import FLASK_MENU +from invenio_config_my_institution import current_user_may_upload + +FLASK_MENU["dashboard"]["uploads"]["visible_when"] = current_user_may_upload +``` + +## Currently Configurable Menus + +- `"dashboard"`: dashboard on users' personal page diff --git a/mkdocs.yml b/mkdocs.yml index 3fa4adff..7e363259 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -52,6 +52,7 @@ nav: - Change logo: "customize/look-and-feel/logo.md" - Change templates: "customize/look-and-feel/templates.md" - Change theme: "customize/look-and-feel/theme.md" + - Change menus: "customize/look-and-feel/menus.md" - Authentication: "customize/authentication.md" - Sending emails: "customize/emails.md" - Search: