templates/bundles/SyliusAdminBundle/Layout/_menu.html.twig line 1

Open in your IDE?
  1. {# templates/bundles/SyliusAdminBundle/Layout/_menu.html.twig #}
  2. {% extends '@!SyliusAdmin/Layout/_menu.html.twig' %}
  3. {% block sylius_admin_sidebar_menu %}
  4.   {{ knp_menu_render('sylius.admin.main', {
  5.     template: '@SyliusUi/Menu/sidebar.html.twig',
  6.     depth: 3,
  7.     currentClass: 'active',
  8.     ancestorClass: 'active',
  9.     allow_safe_labels: true
  10.   }) }}
  11.   <script>
  12.     (function () {
  13.       const root = document.querySelector('.sylius-admin-menu .menu') || document;
  14.       const parents = root.querySelectorAll('.item.has-children');
  15.       parents.forEach(function (p) {
  16.         const key = p.getAttribute('data-key') || ('group-' + Math.random().toString(36).slice(2));
  17.         if (localStorage.getItem('sb:' + key) === 'open') p.classList.add('is-open');
  18.         const trigger = p.querySelector(':scope > a.item, :scope > .title') || p;
  19.         trigger.addEventListener('click', function (e) {
  20.           e.preventDefault();
  21.           p.classList.toggle('is-open');
  22.           localStorage.setItem('sb:' + key, p.classList.contains('is-open') ? 'open' : 'closed');
  23.         });
  24.       });
  25.     })();
  26.   </script>
  27. {% endblock %}