/** * Manages the Module (Hook) Load Order * * @return string|bool */ public function loadorderSection() { $this->setTitle(t('Module load order')); $this->setOutputType(self::_OT_CONFIG); // Build form validation $form = new View_form('config/loadorder.html', 'module_manager'); $form->action($this->_router->makeUrl('module_manager', 'config', 'loadorder')); $form->addElement('module_manager/modules', null, t('Modules'), new Validator_Between(0, 1000)); if ($form->hasInput() && $form->isValid()) { foreach ($form->getValues('module_manager/modules') as $tmpModule => $order) { try { $module = new Module($tmpModule); $module->setLoadOrder($order); } catch (Module_NoExist $e) { } } $this->_event->success(t('Updated module load order')); return zula_redirect($this->_router->makeUrl('module_manager', 'config', 'loadorder')); } $this->_theme->addJsFile('jQuery/plugins/dnd.js'); $this->addAsset('js/dnd_order.js'); $form->assign(array('MODULES' => Hooks::getLoadedModules())); return $form->getOutput(); }