public function special() { require_once _base_ . '/lib/lib.preference.php'; $preference = new AdminPreference(); $idst = Get::req('idst', DOTY_INT, 0); $output = array(); if (Get::req('confirm', DOTY_INT, 0) == 1) { $rules = $preference->getRules(); $new_rules = array(); foreach ($rules as $path => $info) { switch ($info['type']) { case 'enum': $new_rules[$path] = Get::req(str_replace('.', '_', $path), DOTY_MIXED, 'off'); break; case 'integer': $new_rules[$path] = Get::req(str_replace('.', '_', $path), DOTY_INT, 0); break; } } $output['success'] = $preference->saveSpecialAdminRules($idst, $new_rules); echo $this->json->encode($output); } else { $body = Form::openForm('add_rules_form', 'ajax.adm_server.php?r=adm/adminrules/special&confirm=1') . Form::openElementSpace() . $preference->getSpecialModifyMask($idst, 'adminrules') . Form::closeElementSpace() . Form::closeForm(); $output['success'] = true; $output['header'] = Lang::t('_MOD', 'adminrules') . ' '; $output['body'] = $body; echo $this->json->encode($output); } }