Open Monograph Press  3.3.0
SettingsForm.inc.php
1 <?php
2 
16 import('lib.pkp.classes.form.Form');
17 
18 class SettingsForm extends Form {
19 
21  private $_contextId;
22 
24  private $_plugin;
25 
31  public function __construct($plugin, $contextId) {
32  $this->_contextId = $contextId;
33  $this->_plugin = $plugin;
34 
35  parent::__construct($plugin->getTemplateResource('settingsForm.tpl'));
36  $this->addCheck(new FormValidatorPost($this));
37  $this->addCheck(new FormValidatorCSRF($this));
38  }
39 
43  public function initData() {
44  $contextId = $this->_contextId;
45  $plugin = $this->_plugin;
46 
47  $this->setData('displayPage', $plugin->getSetting($contextId, 'displayPage'));
48  $this->setData('recentItems', $plugin->getSetting($contextId, 'recentItems'));
49  }
50 
54  public function readInputData() {
55  $this->readUserVars(array('displayPage', 'recentItems'));
56 
57  // check that recent items value is a positive integer
58  if ((int) $this->getData('recentItems') <= 0) $this->setData('recentItems', '');
59 
60  $this->addCheck(new FormValidator($this, 'recentItems', 'required', 'plugins.generic.webfeed.settings.recentItemsRequired'));
61 
62  }
63 
68  public function fetch($request, $template = null, $display = false) {
69  $templateMgr = TemplateManager::getManager($request);
70  $templateMgr->assign('pluginName', $this->_plugin->getName());
71  return parent::fetch($request, $template, $display);
72  }
73 
77  public function execute(...$functionArgs) {
78  $plugin = $this->_plugin;
79  $contextId = $this->_contextId;
80 
81  $plugin->updateSetting($contextId, 'displayPage', $this->getData('displayPage'));
82  $plugin->updateSetting($contextId, 'recentItems', $this->getData('recentItems'));
83 
84  parent::execute(...$functionArgs);
85  }
86 }
87 
88 
SettingsForm\fetch
fetch($request, $template=null, $display=false)
Definition: SettingsForm.inc.php:74
SettingsForm
Form for managers to modify web feeds plugin settings.
Definition: SettingsForm.inc.php:18
SettingsForm\__construct
__construct($plugin, $contextId)
Definition: SettingsForm.inc.php:37
Form\setData
setData($key, $value=null)
Definition: Form.inc.php:229
Form\readUserVars
readUserVars($vars)
Definition: Form.inc.php:378
Form\getData
getData($key)
Definition: Form.inc.php:220
FormValidatorPost
Form validation check to make sure the form is POSTed.
Definition: FormValidatorPost.inc.php:18
SettingsForm\initData
initData()
Definition: SettingsForm.inc.php:49
PKPTemplateManager\getManager
static & getManager($request=null)
Definition: PKPTemplateManager.inc.php:1239
FormValidator
Class to represent a form validation check.
Definition: FormValidator.inc.php:23
SettingsForm\execute
execute(... $functionArgs)
Definition: SettingsForm.inc.php:83
Form\addCheck
addCheck($formValidator)
Definition: Form.inc.php:395
SettingsForm\readInputData
readInputData()
Definition: SettingsForm.inc.php:60
FormValidatorCSRF
Form validation check to make sure the CSRF token is correct.
Definition: FormValidatorCSRF.inc.php:18
Form
Class defining basic operations for handling HTML forms.
Definition: Form.inc.php:47