/** * @see Plugin::manage() */ function manage($args, $request) { switch ($request->getUserVar('verb')) { case 'settings': $context = $request->getContext(); AppLocale::requireComponents(LOCALE_COMPONENT_APP_COMMON, LOCALE_COMPONENT_PKP_MANAGER); $templateMgr = TemplateManager::getManager($request); $templateMgr->register_function('plugin_url', array($this, 'smartyPluginUrl')); $this->import('SettingsForm'); $form = new SettingsForm($this, $context->getId()); if ($request->getUserVar('save')) { $form->readInputData(); if ($form->validate()) { $form->execute(); return new JSONMessage(true); } } else { $form->initData(); } return new JSONMessage(true, $form->fetch($request)); } return parent::manage($args, $request); }
/** * @see GenericPlugin::manage() */ function manage($verb, $args, &$message, &$messageParams, &$pluginModalContent = null) { if (!parent::manage($verb, $args, $message, $messageParams, $pluginModalContent)) { return false; } $request = $this->getRequest(); $router = $request->getRouter(); $context = $router->getContext($request); $this->import('SettingsForm'); $form = new SettingsForm($this, $context->getId()); $templateMgr =& TemplateManager::getManager(); $templateMgr->register_function('plugin_url', array(&$this, 'smartyPluginUrl')); switch ($verb) { case 'settings': $form->initData(); $pluginModalContent = $form->fetch($request); return true; case 'save': $form->readInputData(); if ($form->validate()) { $form->execute(); $message = NOTIFICATION_TYPE_SUCCESS; $messageParams = array('contents' => __('plugins.generic.alm.settings.saved')); return false; } else { $pluginModalContent = $form->fetch($request); } default: // Unknown management verb assert(false); } return false; }