public function __construct() { global $osC_Language, $osC_MessageStack; parent::__construct(); if (isset($_GET['aID']) && is_numeric($_GET['aID'])) { $this->_page_contents = 'edit.php'; } else { $this->_page_contents = 'new.php'; } if (isset($_POST['subaction']) && $_POST['subaction'] == 'confirm') { $data = array('username' => $_POST['user_name'], 'password' => $_POST['user_password']); switch (osC_Administrators_Admin::save(isset($_GET['aID']) && is_numeric($_GET['aID']) ? $_GET['aID'] : null, $data, isset($_POST['modules']) ? $_POST['modules'] : null)) { case 1: if (isset($_GET['aID']) && is_numeric($_GET['aID']) && $_GET['aID'] == $_SESSION['admin']['id']) { $_SESSION['admin']['access'] = osC_Access::getUserLevels($_GET['aID']); } $osC_MessageStack->add($this->_module, $osC_Language->get('ms_success_action_performed'), 'success'); osc_redirect_admin(osc_href_link_admin(FILENAME_DEFAULT, $this->_module)); break; case -1: $osC_MessageStack->add($this->_module, $osC_Language->get('ms_error_action_not_performed'), 'error'); osc_redirect_admin(osc_href_link_admin(FILENAME_DEFAULT, $this->_module)); break; case -2: $osC_MessageStack->add($this->_module, $osC_Language->get('ms_error_username_already_exists'), 'error'); break; } } }
function saveAdministrator() { global $toC_Json, $osC_Language; $data = array('username' => $_REQUEST['user_name'], 'password' => $_REQUEST['user_password'], 'email_address' => $_REQUEST['email_address']); $modules = null; if (isset($_REQUEST['modules']) && !empty($_REQUEST['modules'])) { $modules = explode(",", $_REQUEST['modules']); } if (isset($_REQUEST['access_globaladmin']) && $_REQUEST['access_globaladmin'] == 'on') { $modules = array('*'); } switch (osC_Administrators_Admin::save(isset($_REQUEST['aID']) && is_numeric($_REQUEST['aID']) ? $_REQUEST['aID'] : null, $data, $modules)) { case 1: if (isset($_REQUEST['aID']) && is_numeric($_REQUEST['aID']) && $_REQUEST['aID'] == $_SESSION['admin']['id']) { $_SESSION['admin']['access'] = osC_Access::getUserLevels($_REQUEST['aID']); } $response = array('success' => true, 'feedback' => $osC_Language->get('ms_success_action_performed')); break; case -1: $response = array('success' => false, 'feedback' => $osC_Language->get('ms_error_action_not_performed')); break; case -2: $response = array('success' => false, 'feedback' => $osC_Language->get('ms_error_username_already_exists')); break; case -3: $response = array('success' => false, 'feedback' => $osC_Language->get('ms_error_email_format')); break; case -4: $response = array('success' => false, 'feedback' => $osC_Language->get('ms_error_email_already_exists')); break; } echo $toC_Json->encode($response); }