diff --git a/src/bundle/Resources/public/img/ibexa-icons.svg b/src/bundle/Resources/public/img/ibexa-icons.svg index 8f37ea5032..a6c1a53c6a 100644 --- a/src/bundle/Resources/public/img/ibexa-icons.svg +++ b/src/bundle/Resources/public/img/ibexa-icons.svg @@ -219,6 +219,9 @@ + + + diff --git a/src/bundle/Resources/public/img/icons/circle-minus.svg b/src/bundle/Resources/public/img/icons/circle-minus.svg new file mode 100755 index 0000000000..a492a9b5d7 --- /dev/null +++ b/src/bundle/Resources/public/img/icons/circle-minus.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/bundle/Resources/public/js/scripts/core/multilevel.popup.menu.js b/src/bundle/Resources/public/js/scripts/core/multilevel.popup.menu.js index bb1830d920..a11dd76c49 100644 --- a/src/bundle/Resources/public/js/scripts/core/multilevel.popup.menu.js +++ b/src/bundle/Resources/public/js/scripts/core/multilevel.popup.menu.js @@ -101,6 +101,9 @@ if (isTopBranch) { triggerElement.addEventListener('click', this.handleItemWithSubitemsClick, false); + processBranchAfter(branchElement); + branchItems.forEach((itemElement) => processBranchItemAfter(itemElement)); + return; } diff --git a/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu.html.twig b/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu.html.twig index bc25898ab6..40d57b953b 100644 --- a/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu.html.twig +++ b/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu.html.twig @@ -1,5 +1,9 @@ {%- import '@ibexadesign/ui/component/macros.html.twig' as html -%} +{%- set branch_template_path = branch_template_path|default('@ibexadesign/ui/component/multilevel_popup_menu/multilevel_popup_menu_branch.html.twig') -%} +{%- set group_template_path = group_template_path|default('@ibexadesign/ui/component/multilevel_popup_menu/multilevel_popup_menu_group.html.twig') -%} +{%- set item_template_path = item_template_path|default('@ibexadesign/ui/component/multilevel_popup_menu/multilevel_popup_menu_item.html.twig') -%} + {%- set is_template = is_template|default(false) -%} {%- set branch_template_params = branch_template_params|default({})|merge({ @@ -26,28 +30,28 @@ ~ attr.class|default(''))|trim, 'data-branch-template': items_container_attr['data-branch-template']|default( include( - '@ibexadesign/ui/component/multilevel_popup_menu/multilevel_popup_menu_branch.html.twig', + branch_template_path, branch_template_params, with_context = false ) ), 'data-group-template': items_container_attr['data-group-template']|default( include( - '@ibexadesign/ui/component/multilevel_popup_menu/multilevel_popup_menu_group.html.twig', + group_template_path, group_template_params, with_context = false ) ), 'data-item-template-btn': items_container_attr['data-item-template-btn']|default( include( - '@ibexadesign/ui/component/multilevel_popup_menu/multilevel_popup_menu_item.html.twig', + item_template_path, item_template_params, with_context = false ) ), 'data-item-template-link': items_container_attr['data-item-template-link']|default( include( - '@ibexadesign/ui/component/multilevel_popup_menu/multilevel_popup_menu_item.html.twig', + item_template_path, item_template_params|merge({ is_button: false }), with_context = false ) @@ -58,7 +62,7 @@
{%- block branch -%} {%- if groups is defined and groups is not null -%} - {%- include '@ibexadesign/ui/component/multilevel_popup_menu/multilevel_popup_menu_branch.html.twig' with { + {%- include branch_template_path with { groups, } -%} {%- endif -%} diff --git a/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu_branch.html.twig b/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu_branch.html.twig index a20ee14c6c..0f6d230cef 100644 --- a/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu_branch.html.twig +++ b/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu_branch.html.twig @@ -1,5 +1,7 @@ {%- import '@ibexadesign/ui/component/macros.html.twig' as html -%} +{%- set group_template_path = group_template_path|default('@ibexadesign/ui/component/multilevel_popup_menu/multilevel_popup_menu_group.html.twig') -%} + {%- set is_template = is_template|default(false) -%} {%- set branch_attr = branch_attr|default({})|merge({ @@ -17,11 +19,17 @@
{%- block branch_groups -%} @@ -32,10 +40,12 @@ group_attr: group.group_attr|default({}), }) -%} - {%- include '@ibexadesign/ui/component/multilevel_popup_menu/multilevel_popup_menu_group.html.twig' - with group_params -%} + {%- include group_template_path with group_params -%} {%- endfor -%}
{%- endblock -%} + + {% block footer %} + {% endblock %}
{%- endblock -%} diff --git a/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu_group.html.twig b/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu_group.html.twig index 87bc1c554e..cf6ebfd8d1 100644 --- a/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu_group.html.twig +++ b/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu_group.html.twig @@ -1,5 +1,7 @@ {%- import '@ibexadesign/ui/component/macros.html.twig' as html -%} +{%- set item_template_path = item_template_path|default('@ibexadesign/ui/component/multilevel_popup_menu/multilevel_popup_menu_item.html.twig') -%} + {%- set is_template = is_template|default(false) -%} {%- set group_attr = group_attr|default({})|merge({ @@ -20,8 +22,7 @@ action_attr: item.action_attr|default({}), }) -%} - {%- include '@ibexadesign/ui/component/multilevel_popup_menu/multilevel_popup_menu_item.html.twig' - with item_params -%} + {%- include item_template_path with item_params -%} {%- endfor -%} {%- endblock %} diff --git a/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu_item.html.twig b/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu_item.html.twig index 2abad5f78b..3da8429554 100644 --- a/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu_item.html.twig +++ b/src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu_item.html.twig @@ -1,5 +1,7 @@ {%- import '@ibexadesign/ui/component/macros.html.twig' as html -%} +{%- set branch_template_path = branch_template_path|default('@ibexadesign/ui/component/multilevel_popup_menu/multilevel_popup_menu_branch.html.twig') -%} + {%- set is_template = is_template|default(false) -%} {%- set item_attr = item_attr|default({})|merge({ @@ -62,8 +64,7 @@ branch_attr: subitems.branch_attr|default({}), }) -%} - {%- include '@ibexadesign/ui/component/multilevel_popup_menu/multilevel_popup_menu_branch.html.twig' - with branch_params -%} + {%- include branch_template_path with branch_params -%} {%- endif -%} {%- endblock -%} {%- endblock -%}