Пример #1
0
 /**
  * Find and add menu items
  *
  * @param MauticEvents\MenuEvent $event
  */
 protected function buildMenu(MauticEvents\MenuEvent $event)
 {
     $name = $event->getType();
     $session = $this->factory->getSession();
     $allItems = $session->get('mautic.menu.items', array());
     if (empty($allItems[$name])) {
         $bundles = $this->factory->getMauticBundles(true);
         foreach ($bundles as $bundle) {
             if (!empty($bundle['config']['menu'][$name])) {
                 $menu = $bundle['config']['menu'][$name];
                 $menuItems[] = array('priority' => !isset($menu['priority']) ? 9999 : $menu['priority'], 'items' => !isset($menu['items']) ? $menu : $menu['items']);
             }
         }
         usort($menuItems, function ($a, $b) {
             $ap = $a['priority'];
             $bp = $b['priority'];
             if ($ap == $bp) {
                 return 0;
             }
             return $ap < $bp ? -1 : 1;
         });
         foreach ($menuItems as $items) {
             $event->addMenuItems($items['items']);
         }
         $allItems[$name] = $event->getMenuItems();
         unset($bundles, $menuItems);
     } else {
         $event->setMenuItems($allItems[$name]);
     }
 }
Пример #2
0
 /**
  * Find and add menu items
  *
  * @param MauticEvents\MenuEvent $event
  */
 protected function buildMenu(MauticEvents\MenuEvent $event)
 {
     $name = $event->getType();
     $session = $this->factory->getSession();
     $allItems = $session->get('mautic.menu.items', array());
     if (empty($allItems[$name])) {
         $bundles = $this->factory->getMauticBundles(true);
         foreach ($bundles as $bundle) {
             if (!empty($bundle['config']['menu'][$name])) {
                 $menu = $bundle['config']['menu'][$name];
                 $event->addMenuItems(array('priority' => !isset($menu['priority']) ? 9999 : $menu['priority'], 'items' => !isset($menu['items']) ? $menu : $menu['items']));
             }
         }
         $allItems[$name] = $event->getMenuItems();
         unset($bundles, $menuItems);
     } else {
         $event->setMenuItems($allItems[$name]);
     }
 }
Пример #3
0
 /**
  * @param MenuEvent $event
  */
 public function onBuildMenu(MenuEvent $event)
 {
     $name = $event->getType();
     $bundles = $this->bundleHelper->getMauticBundles(true);
     foreach ($bundles as $bundle) {
         if (!empty($bundle['config']['menu'][$name])) {
             $menu = $bundle['config']['menu'][$name];
             $event->addMenuItems(['priority' => !isset($menu['priority']) ? 9999 : $menu['priority'], 'items' => !isset($menu['items']) ? $menu : $menu['items']]);
         }
     }
 }
Пример #4
0
 /**
  * Find and add menu items
  *
  * @param MauticEvents\MenuEvent $event
  */
 protected function buildMenu(MauticEvents\MenuEvent $event)
 {
     $name = $event->getType();
     $bundles = $this->factory->getMauticBundles(true);
     foreach ($bundles as $bundle) {
         if (!empty($bundle['config']['menu'][$name])) {
             $menu = $bundle['config']['menu'][$name];
             $event->addMenuItems(array('priority' => !isset($menu['priority']) ? 9999 : $menu['priority'], 'items' => !isset($menu['items']) ? $menu : $menu['items']));
         }
     }
 }