* @author Andreas Gohr */ class admin_plugin_farmer_config extends AdminPlugin { /** @var helper_plugin_farmer */ protected $helper; /** @inheritdoc */ public function showInMenu() { return false; } /** * admin_plugin_farmer_config constructor. */ public function __construct() { $this->helper = plugin_load('helper', 'farmer'); } /** @inheritdoc */ public function handle() { global $INPUT; global $ID; if (!$INPUT->has('farmconf')) return; if (!checkSecurityToken()) return; $farmconf = $this->helper->getConfig(); $farmdir = $farmconf['base']['farmdir']; $farmconf = array_merge($farmconf, $INPUT->arr('farmconf')); $farmconf['base']['farmdir'] = $farmdir; $farmconf['base']['basedomain'] = trim(trim($farmconf['base']['basedomain'], '.')); $ini = DOKU_INC . 'conf/farm.ini'; $data = "; Farm config created by the farmer plugin\n"; $data .= $this->createIni($farmconf); io_saveFile($ini, $data); $self = wl($ID, ['do' => 'admin', 'page' => 'farmer', 'sub' => 'config'], true, '&'); send_redirect($self); } /** @inheritdoc */ public function html() { $farmconf = $this->helper->getConfig(); $form = new Form(['method' => 'post']); $form->addFieldsetOpen($this->getLang('base')); $form->addHTML('