- // Admin is not registered so we have to inform the user
- if ((isFormSent()) && ((!isPostRequestElementSet('login')) || (!isPostRequestElementSet('pass')) || (strlen(postRequestElement('pass')) < 4))) {
- setRequestPostElement('ok', '***');
- } // END - if
-
- if ((isFormSent()) && (postRequestElement('ok') != '***')) {
- // Hash the password with the old function because we are here in install mode
- $hashedPass = md5(postRequestElement('pass'));
-
- // Kill maybe existing session variables
- destroyAdminSession(false);
-
- // Do registration
- $ret = addAdminAccount(postRequestElement('login'), $hashedPass, getConfig('WEBMASTER'));
-
- // Check if registration wents fine
- switch ($ret) {
- case 'done':
- $done = changeDataInFile(getConfig('CACHE_PATH') . 'config-local.php', 'ADMIN-SETUP', "setConfigEntry('ADMIN_REGISTERED', '", "');", 'Y', 0);
- if ($done === true) {
- // Registering is done
- redirectToUrl('modules.php?module=admin&register=done');
- } else {
- $ret = getMessage('ADMIN_CANNOT_COMPLETE');
- }
- break;
-
- case 'failed':
- $ret = getMessage('ADMIN_REGISTER_FAILED');
- break;
-
- case 'already':
- default:
- if ($ret == 'already') {
- // Admin does already exists!
- $ret = getMessage('ADMIN_LOGIN_ALREADY_REG');
- } else {
- // Any other kind will be logged and interpreted as 'done'
- logDebugMessage(__FILE__, __LINE__, sprintf("Unknown return code %s from ifAdminLoginDataIsValid() and interpreted as 'done'!", $ret));
- // @TODO Why is this set to 'done'?
- $ret = 'done';
- }
-
- // Admin still not registered?
- if (!isAdminRegistered()) {
- // Write to config that registration is done
- changeDataInFile(getConfig('CACHE_PATH') . 'config-local.php', 'ADMIN-SETUP', "setConfigEntry('ADMIN_REGISTERED', '", "');", 'Y', 0);
-
- // Load URL for login
- redirectToUrl('modules.php?module=admin');
- } // END - if
- break;
- } // END - switch
- }
-
- // Whas that action okay?
- if ($ret != 'done') {
- // Fixes another notice
- $content['login'] = '';
- if (isPostRequestElementSet('login')) {
- $content['login'] = postRequestElement('login');
- } // END - if
-
- // Init array elements
- $content['login_message'] = '';
- $content['pass_message'] = '';
-
- // Yet-another notice-fix
- if ((isFormSent()) && (postRequestElement('ok') == '***')) {
- // No login entered?
- if (!isPostRequestElementSet('login')) $loginMessage = getMessage('ADMIN_NO_LOGIN');
-
- // An error comes back from registration?
- if (!empty($ret)) $loginMessage = $ret;
-
- // No password entered?
- if (!isPostRequestElementSet('pass')) $passwdMessage = getMessage('ADMIN_NO_PASS');
-
- // Or password too short?
- if (strlen(postRequestElement('pass')) < 4) $passwdMessage = getMessage('ADMIN_SHORT_PASS');
-
- // Output error messages
- $content['login_message'] = loadTemplate('admin_login_msg', true, $loginMessage);
- $content['pass_message'] = loadTemplate('admin_login_msg', true, $passwdMessage);
-
- // Reset variables
- $loginMessage = ''; $passwdMessage = '';
- } // END - if
-
- // Output message in seperate template
- loadTemplate('admin_settings_saved', false, getMessage('ADMIN_NOT_REGISTERED'));
-
- // Load register template
- loadTemplate('admin_reg_form', false, $content);
- }