auth->check_module_permissions('admin'); // Loading classes $app->uses('tpl,tform,tform_actions'); $app->load('tform_actions'); class page_action extends tform_actions { function onShowEdit() { global $app, $conf; if($_SESSION["s"]["user"]["typ"] != 'admin') die('This function needs admin priveliges'); if($app->tform->errorMessage == '') { $app->uses('ini_parser,getconf'); $section = $this->active_tab; $server_id = $this->id; $this->dataRecord = $app->getconf->get_global_config($section); if ($section == 'domains'){ if (isset($this->dataRecord['use_domain_module'])){ $_SESSION['use_domain_module_old_value'] = $this->dataRecord['use_domain_module']; } } } $record = $app->tform->getHTML($this->dataRecord, $this->active_tab,'EDIT'); $record['warning'] = $app->tform->lng('warning'); $record['id'] = $this->id; $app->tpl->setVar($record); } function onUpdateSave($sql) { global $app; if($_SESSION["s"]["user"]["typ"] != 'admin') die('This function needs admin priveliges'); $app->uses('ini_parser,getconf'); $section = $app->tform->getCurrentTab(); $server_config_array = $app->getconf->get_global_config(); $server_config_array[$section] = $app->tform->encode($this->dataRecord,$section); $server_config_str = $app->ini_parser->get_ini_string($server_config_array); $sql = "UPDATE sys_ini SET config = '".$app->db->quote($server_config_str)."' WHERE sysini_id = 1"; $app->db->query($sql); /* * If we should use the domain-module, we have to insert all existing domains into the table * (only the first time!) */ if (($section == 'domains') && ($_SESSION['use_domain_module_old_value'] == '') && ($server_config_array['domains']['use_domain_module'] == 'y')){ $sql = "REPLACE INTO domain (sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other, domain ) " . "SELECT sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other, domain " . "FROM mail_domain"; $app->db->query($sql); $sql = "REPLACE INTO domain (sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other, domain ) " . "SELECT sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other, domain " . "FROM web_domain"; $app->db->query($sql); } } } $app->tform_actions = new page_action; $app->tform_actions->onLoad(); ?>