- // Admin is not registered so we have to inform the user
- if ((isFormSent()) && ((!isPostRequestParameterSet('login')) || (!isPostRequestParameterSet('pass1')) || (strlen(postRequestParameter('pass1')) < 4) || (!isPostRequestParameterSet('pass2')) || (strlen(postRequestParameter('pass2')) < 4) || (postRequestParameter('pass1') != postRequestParameter('pass2')))) {
- setPostRequestParameter('ok', '***');
- } // END - if
-
- // Clear error message
- $errorMessage = '';
-
- if ((isFormSent()) && (postRequestParameter('ok') != '***')) {
- // Hash the password with the old function because we are here in install mode
- $hashedPass = md5(postRequestParameter('pass1'));
-
- // Kill maybe existing session variables
- destroyAdminSession(false);
-
- // Do registration
- $ret = addAdminAccount(postRequestParameter('login'), $hashedPass, getConfig('WEBMASTER'));
-
- // Check if registration wents fine
- switch ($ret) {
- case 'done':
- $done = changeDataInInclude(getCachePath() . 'config-local.php', 'ADMIN-SETUP', "setConfigEntry('ADMIN_REGISTERED', '", "');", 'Y', 0);
- if ($done === true) {
- // Registering is done
- redirectToUrl('modules.php?module=admin&register=done');
- } else {
- // Registration incomplete
- $errorMessage = '{--ADMIN_CANNOT_COMPLETE--}';
-
- // Set this to have our error message displayed
- setPostRequestParameter('ok', '***');
- }
- break;
-
- case 'failed': // Registration has failed
- $errorMessage = '{--ADMIN_REGISTER_FAILED--}';
-
- // Set this to have our error message displayed
- setPostRequestParameter('ok', '***');
- break;
-
- case 'already': // Admin does already exists!
- $errorMessage = '{--ADMIN_LOGIN_ALREADY_REG--}';
-
- // Set this to have our error message displayed
- setPostRequestParameter('ok', '***');
- break;
-
- default:
- // Any other kind will be logged
- $errorMessage = sprintf("Unknown return code %s from ifAdminLoginDataIsValid().", $ret);
- logDebugMessage(__FILE__, __LINE__, $errorMessage);
-
- // Set this to have our error message displayed
- setPostRequestParameter('ok', '***');
- break;
- } // END - switch
- } // END - if
-
- // Whas that action okay?
- if ($ret != 'done') {
- // Init login name
- $content['login'] = '';
- if (isPostRequestParameterSet('login')) {
- $content['login'] = postRequestParameter('login');
- } // END - if
-
- // Init array elements
- $content['login_message'] = '';
- $content['pass1_message'] = '';
- $content['pass2_message'] = '';
-
- // Yet-another notice-fix
- if ((isFormSent()) && (postRequestParameter('ok') == '***')) {
- // Init variables
- $loginMessage = '';
- $pass1Message = '';
- $pass2Message = '';
-
- // No login entered?
- if (empty($content['login'])) $loginMessage = '{--ADMIN_NO_LOGIN--}';
-
- // An error comes back from registration?
- if ((!empty($ret)) && ($ret != 'init')) $loginMessage = $errorMessage;
-
- // No password 1 entered or to short?
- if (!isPostRequestParameterSet('pass1')) $pass1Message = '{--ADMIN_NO_PASS1--}';
- elseif (strlen(postRequestParameter('pass1')) < 4) $pass1Message = '{--ADMIN_SHORT_PASS1--}';
-
- // No password 2 entered or to short?
- if (!isPostRequestParameterSet('pass2')) $pass2Message = '{--ADMIN_NO_PASS2--}';
- elseif (strlen(postRequestParameter('pass2')) < 4) $pass2Message = '{--ADMIN_SHORT_PASS2--}';
-
- // Both didn't match?
- if (postRequestParameter('pass1') != postRequestParameter('pass2')) {
- // No match
- if (empty($pass1Message)) $pass1Message = '{--ADMIN_PASS1_MISMATCH--}';
- if (empty($pass2Message)) $pass2Message = '{--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, '{--ADMIN_ACCOUNT_NOT_REGISTERED_YET--}');
-
- // Load register template
- loadTemplate('admin_reg_form', false, $content);
- } // END - if
-} elseif (isGetRequestParameterSet('reset_pass')) {