16 import(
'lib.pkp.classes.form.Form');
54 $this->_contextId = $contextId;
55 $this->_plugin = $plugin;
57 parent::__construct($plugin->getTemplateResource(
'settingsForm.tpl'));
61 if (isset($pubIdPlugins[
'doipubidplugin'])) {
65 import(
'lib.pkp.classes.linkAction.request.AjaxModal');
69 $dispatcher->url($request, ROUTE_COMPONENT,
null,
'grid.settings.plugins.SettingsPluginGridHandler',
'manage',
null, array(
'plugin' =>
'doipubidplugin',
'category' =>
'pubIds')),
70 __(
'plugins.importexport.common.settings.DOIPluginSettings')
72 __(
'plugins.importexport.common.settings.DOIPluginSettings'),
75 $this->
setData(
'doiPluginSettingsLinkAction', $doiPluginSettingsLinkAction);
80 $this->
addCheck(
new FormValidatorRegExp($this,
'username', FORM_VALIDATOR_OPTIONAL_VALUE,
'plugins.importexport.datacite.settings.form.usernameRequired',
'/^[^:]+$/'));
95 $this->
setData($fieldName, $plugin->getSetting($contextId, $fieldName));
109 function execute(...$functionArgs) {
112 parent::execute(...$functionArgs);
113 foreach($this->
getFormFields() as $fieldName => $fieldType) {
114 $plugin->updateSetting($contextId, $fieldName, $this->
getData($fieldName), $fieldType);
128 'username' =>
'string',
129 'password' =>
'string',
130 'automaticRegistration' =>
'bool',
141 return in_array($settingName, array(
'username',
'password',
'automaticRegistration',
'testMode'));