/**
  * Setup navigation.
  *
  * @return void
  */
 protected function _setupNavigation()
 {
     $path = explode('/', $this->request->get('_url'));
     $activeItem = '';
     $limit = count($path) > 3 ? 1 : 0;
     for ($i = 1, $count = count($path); $i < $count - $limit && $i < 3; $i++) {
         $activeItem .= $path[$i] . '/';
     }
     $activeItem = substr($activeItem, 0, -1);
     $menuItems = ['admin' => ['href' => 'admin', 'title' => 'Dashboard', 'prepend' => '<i class="glyphicon glyphicon-home"></i>'], 'users' => ['title' => 'Manage', 'items' => ['admin/users' => ['title' => 'Users and Roles', 'href' => 'admin/users', 'prepend' => '<i class="glyphicon glyphicon-user"></i>'], 'admin/pages' => ['title' => 'Pages', 'href' => 'admin/pages', 'prepend' => '<i class="glyphicon glyphicon-list-alt"></i>'], 'admin/menus' => ['title' => 'Menus', 'href' => 'admin/menus', 'prepend' => '<i class="glyphicon glyphicon-th-list"></i>'], 'admin/languages' => ['title' => 'Languages', 'href' => 'admin/languages', 'prepend' => '<i class="glyphicon glyphicon-globe"></i>'], 'admin/files' => ['title' => 'Files', 'href' => 'admin/files', 'prepend' => '<i class="glyphicon glyphicon-file"></i>'], 'admin/packages' => ['title' => 'Packages', 'href' => 'admin/packages', 'prepend' => '<i class="glyphicon glyphicon-th"></i>']]], 'settings' => ['title' => 'Settings', 'items' => ['admin/settings' => ['title' => 'System', 'href' => 'admin/settings', 'prepend' => '<i class="glyphicon glyphicon-cog"></i>'], 'admin/settings/performance' => ['title' => 'Performance', 'href' => 'admin/performance', 'prepend' => '<i class="glyphicon glyphicon-signal"></i>'], 'admin/access' => ['title' => 'Access Rights', 'href' => 'admin/access', 'prepend' => '<i class="glyphicon glyphicon-lock"></i>']]]];
     $modules = Package::findByType(Manager::PACKAGE_TYPE_MODULE, 1);
     if ($modules->count()) {
         $modulesMenuItems = [];
         foreach ($modules as $module) {
             if ($module->is_system) {
                 continue;
             }
             $href = 'admin/module/' . $module->name;
             $modulesMenuItems[$href] = ['title' => $module->title, 'href' => $href, 'prepend' => '<i class="glyphicon glyphicon-th-large"></i>'];
         }
         if (!empty($modulesMenuItems)) {
             $menuItems['modules'] = ['title' => 'Modules', 'items' => $modulesMenuItems];
         }
     }
     $navigation = new Navigation();
     $navigation->setItems($menuItems)->setActiveItem($activeItem)->setListClass('nav nav-categories')->setDropDownItemClass('nav-category')->setDropDownItemMenuClass('nav')->setDropDownIcon('')->setEnabledDropDownHighlight(false);
     $this->view->headerNavigation = $navigation;
 }
Beispiel #2
0
 /**
  * Initialize form.
  *
  * @return void
  */
 public function initialize()
 {
     $this->setLegend('Widget information');
     $modules = Package::findByType(Manager::PACKAGE_TYPE_MODULE, true);
     $widgetModules = [null => 'No'];
     foreach ($modules as $module) {
         $widgetModules[$module->name] = $module->title;
     }
     $this->addSelect('module', 'Is related to module?', null, $widgetModules)->addCheckbox('is_paginated', 'Is Paginated?', 'If this enabled - widget will has additional control
                 enabled for allowed per page items count selection in admin form', 1, false, 0)->addCheckbox('is_acl_controlled', 'Is ACL controlled?', 'If this enabled - widget will has additional control
                 enabled for allowed roles selection in admin form', 1, false, 0)->addSelect('admin_form', 'Admin form', 'Does this widget have some controlling form?', [null => 'No', 'action' => 'Action', 'form_class' => 'Form class'])->addText('form_class', 'Form class', 'Enter existing form class')->addCheckbox('enabled', 'Enabled?', null, 1, false, 0);
     $this->setCondition('form_class', 'admin_form', 'form_class');
 }
 /**
  * Get packages by type.
  *
  * @param string $type Packages type.
  *
  * @return Package[]
  */
 protected function _getPackages($type)
 {
     return Package::findByType($type, null, 'enabled DESC');
 }