public static function activeFilter(YMenuItem $item) { // init vars $id = ''; $app = Zoo::getApplication(); $controller = YRequest::getWord('controller'); $task = YRequest::getWord('task'); $classes = array(); // application context if (!empty($app)) { $id = $app->id . '-' . $controller; } // application configuration if ($controller == 'configuration' && $task) { if (in_array($task, array('importfrom', 'import', 'importcsv', 'importexport'))) { $id .= '-importexport'; } else { $id .= '-' . $task; } } // new application if ($controller == 'new') { $id = 'new'; } // application manager if ($controller == 'manager') { $id = 'manager'; if (in_array($task, array('types', 'addtype', 'edittype', 'editelements', 'assignelements', 'assignsubmission'))) { $id .= '-types'; } elseif ($task) { $id .= '-' . $task; } } // save current class attribute $class = $item->getAttribute('class'); if (!empty($class)) { $classes[] = $class; } // set active class if ($item->getId() == $id || $item->hasChild($id, true)) { $classes[] = 'active'; } // replace the old class attribute $item->setAttribute('class', implode(' ', $classes)); }
public function addElement() { // get request vars $element = YRequest::getWord('element', 'text'); $count = YRequest::getVar('count', 0); // load element $this->element = ElementHelper::loadElement($element, $this->application->getPath() . '/elements'); $this->var = 'new_elements[' . $count . ']'; // display view $this->getView()->setLayout('addElement')->display(); }
public function addMenuItems($menu) { // get current controller $controller = YRequest::getWord('controller'); $controller = in_array($controller, array('new', 'manager')) ? 'item' : $controller; // create application tab $tab = new YMenuItem($this->id, $this->name, 'index.php?option=com_zoo&controller=' . $controller . '&changeapp=' . $this->id); $menu->addChild($tab); // menu items $items = array('item' => JText::_('Items'), 'category' => JText::_('Categories'), 'frontpage' => JText::_('Frontpage'), 'comment' => JText::_('Comments'), 'tag' => JText::_('Tags'), 'submission' => JText::_('Submissions')); // add menu items foreach ($items as $controller => $name) { $tab->addChild(new YMenuItem($this->id . '-' . $controller, $name, 'index.php?option=com_zoo&controller=' . $controller . '&changeapp=' . $this->id)); } // add config menu item $id = $this->id . '-configuration'; $link = 'index.php?option=com_zoo&controller=configuration&changeapp=' . $this->id; $config = new YMenuItem($id, JText::_('Config'), $link); $config->addChild(new YMenuItem($id, JText::_('Application'), $link)); $config->addChild(new YMenuItem($id . '-importexport', JText::_('Import / Export'), $link . '&task=importexport')); $tab->addChild($config); }
defined('_JEXEC') or die('Restricted access'); // load config require_once dirname(__FILE__) . '/config.php'; // add css, js JHTML::script('jquery-ui-1.8.6.custom.min.js', ZOO_ADMIN_URI . 'libraries/jquery/'); JHTML::stylesheet('jquery-ui-1.8.6.custom.css', ZOO_ADMIN_URI . 'libraries/jquery/'); JHTML::script('accordionmenu.js', ZOO_ADMIN_URI . 'assets/js/'); JHTML::script('placeholder.js', ZOO_ADMIN_URI . 'assets/js/'); JHTML::script('jquery.pnotify.js', ZOO_ADMIN_URI . 'libraries/jquery/plugins/notifier/'); JHTML::stylesheet('jquery.pnotify.default.css', ZOO_ADMIN_URI . 'libraries/jquery/plugins/notifier/'); JHTML::script('default.js', ZOO_ADMIN_URI . 'assets/js/'); JHTML::stylesheet('ui.css', ZOO_ADMIN_URI . 'assets/css/'); JHTMLBehavior::modal(); // init vars $controller = YRequest::getWord('controller'); $task = YRequest::getWord('task'); $group = YRequest::getString('group'); // change application if ($id = YRequest::getInt('changeapp')) { JFactory::getApplication()->setUserState('com_zooapplication', $id); } // load application $application = Zoo::getApplication(); // set default controller if (!$controller) { $controller = $application ? 'item' : 'new'; YRequest::setVar('controller', $controller); } // set toolbar button include path $toolbar = JToolBar::getInstance('toolbar'); $toolbar->addButtonPath(ZOO_ADMIN_PATH . '/joomla/button');