X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fmodules%2Fadmin.php;h=1c58a7b53eadfbce3112962e32662bf2016feb8b;hb=22a33b87f9894a94efb71de7630f12129e34f83b;hp=515c745ee9fb0e8ffc28c647ac18bc9e0b2e8f2a;hpb=7f104f6fe558bb56b4205241435a2357c2feece1;p=mailer.git diff --git a/inc/modules/admin.php b/inc/modules/admin.php index 515c745ee9..1c58a7b53e 100644 --- a/inc/modules/admin.php +++ b/inc/modules/admin.php @@ -41,7 +41,7 @@ if (!defined('__SECURITY')) { if ((empty($GLOBALS['action'])) && ($check == "admin_only")) { // Redirect to right URL LOAD_URL("modules.php?module=admin&action=login"); -} +} // END - if // Load include file require_once(PATH."inc/modules/admin/admin-inc.php"); @@ -57,10 +57,7 @@ if (!isBooleanConstantAndTrue('admin_registered')) { $hashedPass = md5($_POST['pass']); // Kill maybe existing session variables - set_session('admin_login' , ""); - set_session('admin_md5' , ""); - set_session('admin_last' , ""); - set_session('admin_to' , ""); + DESTROY_ADMIN_SESSION(false); // Do registration $ret = REGISTER_ADMIN($_POST['login'], $hashedPass); @@ -90,14 +87,14 @@ if (!isBooleanConstantAndTrue('admin_registered')) { $ret = "done"; } + // Admin still not registered? if (!isBooleanConstantAndTrue('admin_registered')) { // Write to config that registration is done admin_WriteData(PATH."inc/config.php", "ADMIN-SETUP", "define('admin_registered', ", ");", "true", 0); // Load URL for login - $URL = URL."/modules.php?module=admin&action=login"; - LOAD_URL($URL); - } + LOAD_URL(URL."/modules.php?module=admin&action=login"); + } // END - if break; } } @@ -189,9 +186,9 @@ if (!isBooleanConstantAndTrue('admin_registered')) { // At leat one administrator account was created if ((isSessionVariableSet('admin_login')) && (isSessionVariableSet('admin_md5')) && (isSessionVariableSet('admin_last')) && (isSessionVariableSet('admin_to'))) { // Timeout for last login, we have to logout first! - $URL = URL."/modules.php?module=admin&action=login&logout=1"; - LOAD_URL($URL); - } + LOAD_URL(URL."/modules.php?module=admin&action=login&logout=1"); + } // END - if + if (!empty($_GET['register'])) { // Registration of first admin is done if ($_GET['register'] == "done") OUTPUT_HTML("".ADMIN_REGISTER_DONE.""); @@ -214,7 +211,7 @@ if (!isBooleanConstantAndTrue('admin_registered')) { // Rewrite overview module if ($GLOBALS['what'] == "overview") { $GLOBALS['action'] = GET_ACTION($GLOBALS['module'], $GLOBALS['what']); - } + } // END - if // Add data to URL if (!empty($GLOBALS['what'])) $URL .= "what=".$GLOBALS['what']; @@ -228,14 +225,18 @@ if (!isBooleanConstantAndTrue('admin_registered')) { case "404": // Administrator login not found $_POST['ok'] = $ret; $ret = ADMIN_NOT_FOUND; + DESTROY_ADMIN_SESSION(); break; case "pass": // Wrong password $_POST['ok'] = $ret; $ret = WRONG_PASS." [".ADMIN_RESET_PASS."]\n"; + DESTROY_ADMIN_SESSION(); break; - } - } + } // END - switch + } // END - if + + // Error detected? if ($ret != "done") { if (!empty($_POST['login'])) { define('__LOGIN_VALUE', $_POST['login']); @@ -245,8 +246,8 @@ if (!isBooleanConstantAndTrue('admin_registered')) { if (isset($_POST['ok'])) { // Set messages to zero - $MSG1 = ""; $MSG2 = ""; + // No login entered? if (empty($_POST['login'])) $MSG1 = ADMIN_NO_LOGIN; @@ -296,19 +297,10 @@ if (!isBooleanConstantAndTrue('admin_registered')) { // Load login form template LOAD_TEMPLATE("admin_login_form", false, $content); - } + } // END - if } elseif (isset($_GET['logout'])) { // Only try to remove cookies - if (set_session("admin_login", "") && set_session("admin_md5", "") && set_session("admin_last", "") && set_session("admin_to", "")) { - // Also remove array elements - set_session('admin_login', ""); - set_session('admin_md5' , ""); - set_session('admin_last' , ""); - set_session('admin_to' , ""); - - // Destroy session - @session_destroy(); - + if (DESTROY_ADMIN_SESSION()) { // Load logout template if (isset($_GET['register'])) { // Secure input @@ -342,23 +334,11 @@ if (!isBooleanConstantAndTrue('admin_registered')) { // Cookie-Data accepted if ((set_session("admin_md5", get_session('admin_md5'))) && (set_session("admin_login", get_session('admin_login'))) && (set_session("admin_last", time())) && (set_session("admin_to", bigintval(get_session('admin_to'))))) { // Ok, Cookie-Update done - if ((EXT_IS_ACTIVE("admins")) && (GET_EXT_VERSION("admins") > "0.2")) { - // Check if action GET variable was set - $act = SQL_ESCAPE($GLOBALS['action']); - if (!empty($GLOBALS['what'])) { - // Get action value by what-value - $act = GET_ACTION("admin", $GLOBALS['what']); - } - - // Check for access control line of current menu entry - define('__ACL_ALLOW', ADMINS_CHECK_ACL($act, $GLOBALS['what'])); - } else { - // Extension not installed so it's always allowed to access everywhere! - define('__ACL_ALLOW', true); - } + // Check for access control line of current menu entry + define('__ACL_ALLOW', RUN_FILTER('check_admin_acl')); // When type of admin menu is not set fallback to old menu system - if (empty($_CONFIG['admin_menu'])) $_CONFIG['admin_menu'] = "OLD"; + if (getConfig('admin_menu') == null) $_CONFIG['admin_menu'] = "OLD"; // Check for version and switch between old menu system and new "intelligent menu system" if ((ADMIN_CHECK_MENU_MODE() == "NEW") && (FILE_READABLE(PATH."inc/modules/admin/lasys-inc.php"))) { @@ -387,11 +367,13 @@ if (!isBooleanConstantAndTrue('admin_registered')) { case "404": // Administrator login not found $_POST['ok'] = $ret; + DESTROY_ADMIN_SESSION(); ADD_FATAL(ADMIN_NOT_FOUND); break; case "pass": // Wrong password $_POST['ok'] = $ret; + DESTROY_ADMIN_SESSION(); ADD_FATAL(WRONG_PASS); break; }