diff options
| author | Jan-Hendrik Willms <tleilax+studip@gmail.com> | 2023-11-28 09:07:03 +0000 |
|---|---|---|
| committer | Jan-Hendrik Willms <tleilax+studip@gmail.com> | 2023-11-28 09:07:03 +0000 |
| commit | a6f88903ee3d2b0e86a6aeecd2274587d2f264b9 (patch) | |
| tree | 6f5809a2340382384a4a6526ae8d6ca5f2c8fd9e /lib/classes/ActionMenu.php | |
| parent | 2e9b92b710ea046c3930c4d7980cbdd96db42bb7 (diff) | |
prevent tabbing to disabled action menu links and in institute basic data, fixes #3010, fixes #3007
Closes #3010 and #3007
Merge request studip/studip!2039
Diffstat (limited to 'lib/classes/ActionMenu.php')
| -rw-r--r-- | lib/classes/ActionMenu.php | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/classes/ActionMenu.php b/lib/classes/ActionMenu.php index 613bea5..0822f72 100644 --- a/lib/classes/ActionMenu.php +++ b/lib/classes/ActionMenu.php @@ -143,6 +143,7 @@ class ActionMenu 'attributes' => $attributes, ]; } + $index = $index ?: md5($action['link'] . json_encode($action['attributes'])); $action['index'] = $index; //now insert it possibly at the desired position: @@ -326,10 +327,10 @@ class ActionMenu : self::TEMPLATE_FILE_MULTIPLE; ; $template = $GLOBALS['template_factory']->open($template_file); - $template->actions = array_map(function ($action) { - $disabled = isset($action['attributes']['disabled']) + $template->actions = array_map(function ($action): array { + $action['disabled'] = isset($action['attributes']['disabled']) && $action['attributes']['disabled'] !== false; - if ($disabled && $action['icon']) { + if ($action['disabled'] && $action['icon']) { $action['icon'] = $action['icon']->copyWithRole(Icon::ROLE_INACTIVE); } return $action; |
