- // Admin is not registered so we have to inform the user
- if ((isFormSent()) && ((!isPostRequestElementSet('login')) || (!isPostRequestElementSet('pass1')) || (strlen(postRequestElement('pass1')) < 4) || (!isPostRequestElementSet('pass2')) || (strlen(postRequestElement('pass2')) < 4) || (postRequestElement('pass1') != postRequestElement('pass2')))) {
- 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('pass1'));
-
- // 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': // Registration has failed
- $ret = getMessage('ADMIN_REGISTER_FAILED');
- break;
-
- case 'already': // Admin does already exists!
- $ret = getMessage('ADMIN_LOGIN_ALREADY_REG');
- break;
-
- default:
- // Any other kind will be logged
- logDebugMessage(__FILE__, __LINE__, sprintf("Unknown return code %s from ifAdminLoginDataIsValid().", $ret));
- break;
- } // END - switch
- } // END - if
-
- // Whas that action okay?
- if ($ret != 'done') {
- // Init login name
- $content['login'] = '';
- if (isPostRequestElementSet('login')) {
- $content['login'] = postRequestElement('login');
- } // END - if
-
- // Init array elements
- $content['login_message'] = '';
- $content['pass1_message'] = '';
- $content['pass2_message'] = '';
-
- // Yet-another notice-fix
- if ((isFormSent()) && (postRequestElement('ok') == '***')) {
- // Init variables
- $loginMessage = '';
- $pass1Message = '';
- $pass2Message = '';
-
- // No login entered?
- if (empty($content['login'])) $loginMessage = getMessage('ADMIN_NO_LOGIN');
-
- // An error comes back from registration?
- if ((!empty($ret)) && ($ret != 'init')) $loginMessage = $ret;
-
- // No password 1 entered or to short?
- if (!isPostRequestElementSet('pass1')) $pass1Message = getMessage('ADMIN_NO_PASS1');
- elseif (strlen(postRequestElement('pass1')) < 4) $pass1Message = getMessage('ADMIN_SHORT_PASS1');
-
- // No password 2 entered or to short?
- if (!isPostRequestElementSet('pass2')) $pass2Message = getMessage('ADMIN_NO_PASS2');
- elseif (strlen(postRequestElement('pass2')) < 4) $pass2Message = getMessage('ADMIN_SHORT_PASS2');
-
- // Both didn't match?
- if (postRequestElement('pass1') != postRequestElement('pass2')) {
- // No match
- if (empty($pass1Message)) $pass1Message = getMessage('ADMIN_PASS1_MISMATCH');
- if (empty($pass2Message)) $pass2Message = getMessage('ADMIN_PASS2_MISMATCH');
- } // END - if
-
- // Output error messages
- $content['login_message'] = loadTemplate('admin_login_msg', true, $loginMessage);
- $content['pass1_message'] = loadTemplate('admin_login_msg', true, $pass1Message);
- $content['pass2_message'] = loadTemplate('admin_login_msg', true, $pass2Message);
- } // 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);
- }