]> git.mxchange.org Git - mailer.git/blobdiff - inc/mysql-manager.php
Caching again rewritten, admin functions fixed:
[mailer.git] / inc / mysql-manager.php
index 7c4d4a8960442429842e99e838d0b08ca2914b45..a1e6936b581d54e24673ce44f1e4a209720ba02e 100644 (file)
@@ -253,7 +253,7 @@ function checkModulePermissions ($mod = '') {
 
                        // Destroy cache here
                        // @TODO Rewrite this to a filter
-                       if (getOutputMode() == '0') rebuildCacheFile('modreg', 'modreg');
+                       if (getOutputMode() == '0') rebuildCacheFile('modules', 'modules');
 
                        // And reload data
                        unset($GLOBALS['module_status'][$mod]);
@@ -264,7 +264,7 @@ function checkModulePermissions ($mod = '') {
                }
        } elseif (($ret == 'cache_miss') && (getOutputMode() == 0)) {
                // Rebuild the cache files
-               rebuildCacheFile('modreg', 'modreg');
+               rebuildCacheFile('modules', 'modules');
        } elseif ($found === false) {
                // Problem with module detected
                logDebugMessage(__FUNCTION__, __LINE__, sprintf("Problem in module %s detected. ret=%s, locked=%s, hidden=%s, mem=%s, admin=%s, output_mode=%s",
@@ -648,23 +648,23 @@ function isAdmin ($admin = '') {
                // Get admin login and password from session/cookies
                $admin = getSession('admin_login');
                $passCookie = getSession('admin_md5');
-       }
+       } // END - if
        //* DEBUG: */ outputHtml(__LINE__."ADMIN:".$admin.'/'.$passCookie."<br />");
 
        // Search in array for entry
        if (isset($GLOBALS['admin_hash'])) {
                // Use cached string
                $valPass = $GLOBALS['admin_hash'];
-       } elseif ((!empty($passCookie)) && (isset($GLOBALS['cache_array']['admins']['password'][$admin])) && (!empty($admin))) {
+       } elseif ((!empty($passCookie)) && (isAdminHashSet($admin) === true) && (!empty($admin))) {
                // Login data is valid or not?
-               $valPass = generatePassString($GLOBALS['cache_array']['admins']['password'][$admin]);
+               $valPass = generatePassString(getAdminHash($admin));
 
                // Cache it away
                $GLOBALS['admin_hash'] = $valPass;
 
                // Count cache hits
                incrementStatsEntry('cache_hits');
-       } elseif ((!empty($admin)) && ((!isExtensionActive('cache'))) || (!isset($GLOBALS['cache_array']['admins']['password'][$admin]))) {
+       } elseif ((!empty($admin)) && ((!isExtensionActive('cache'))) || (isAdminHashSet($admin) === false)) {
                // Search for admin
                $result = SQL_QUERY_ESC("SELECT HIGH_PRIORITY `password` FROM `{?_MYSQL_PREFIX?}_admins` WHERE `login`='%s' LIMIT 1",
                        array($admin), __FUNCTION__, __LINE__);
@@ -676,7 +676,7 @@ function isAdmin ($admin = '') {
                        list($passDB) = SQL_FETCHROW($result);
 
                        // Temporary cache it
-                       $GLOBALS['cache_array']['admins']['password'][$admin] = $passDB;
+                       setAdminHash($admin, $passDB);
 
                        // Generate password hash
                        $valPass = generatePassString($passDB);
@@ -688,8 +688,8 @@ function isAdmin ($admin = '') {
 
        if (!empty($valPass)) {
                // Check if password is valid
-               //* DEBUG: */ outputHtml(__FUNCTION__."*".$valPass.'/'.$passCookie."*<br />");
-               $ret = (($valPass == $passCookie) || ((strlen($valPass) == 32) && ($valPass == md5($passCookie))) || (($valPass == "*FAILED*") && (!isExtensionActive('cache'))));
+               //* DEBUG: */ print(__FUNCTION__ . ':' . $valPass . '/' . $passCookie . '<br />');
+               $ret = (($valPass == $passCookie) || ((strlen($valPass) == 32) && ($valPass == md5($passCookie))) || (($valPass == '*FAILED*') && (!isExtensionActive('cache'))));
        } // END - if
 
        // Return result of comparision
@@ -1171,19 +1171,19 @@ function getReferalLevelPercents ($level) {
        $per = 0;
 
        // Do we have cache?
-       if ((isset($GLOBALS['cache_array']['ref_depths']['level'])) && (isExtensionActive('cache'))) {
+       if ((isset($GLOBALS['cache_array']['refdepths']['level'])) && (isExtensionActive('cache'))) {
                // First look for level
-               $key = array_search($level, $GLOBALS['cache_array']['ref_depths']['level']);
+               $key = array_search($level, $GLOBALS['cache_array']['refdepths']['level']);
                if ($key !== false) {
                        // Entry found!
-                       $per = $GLOBALS['cache_array']['ref_depths']['percents'][$key];
+                       $per = $GLOBALS['cache_array']['refdepths']['percents'][$key];
 
                        // Count cache hit
                        incrementStatsEntry('cache_hits');
-               }
+               } // END - if
        } elseif (!isExtensionActive('cache')) {
                // Get referal data
-               $result_level = SQL_QUERY_ESC("SELECT percents FROM `{?_MYSQL_PREFIX?}_refdepths` WHERE level='%s' LIMIT 1",
+               $result_level = SQL_QUERY_ESC("SELECT `percents` FROM `{?_MYSQL_PREFIX?}_refdepths` WHERE `level`='%s' LIMIT 1",
                        array(bigintval($level)), __FUNCTION__, __LINE__);
 
                // Entry found?
@@ -1412,9 +1412,9 @@ function getAdminId ($login) {
        $ret = '-1';
 
        // Check cache
-       if (isset($GLOBALS['cache_array']['admins']['admin_id'][$login])) {
+       if (isset($GLOBALS['cache_array']['admin']['admin_id'][$login])) {
                // Use it if found to save SQL queries
-               $ret = $GLOBALS['cache_array']['admins']['admin_id'][$login];
+               $ret = $GLOBALS['cache_array']['admin']['admin_id'][$login];
 
                // Update cache hits
                incrementStatsEntry('cache_hits');
@@ -1451,26 +1451,26 @@ function getCurrentAdminId () {
 }
 
 // Get password hash from administrator's login name
-function getAdminHash ($adminId) {
+function getAdminHash ($admin) {
        // By default an invalid hash is returned
        $ret = '-1';
 
-       if (isset($GLOBALS['cache_array']['admins']['password'][$adminId])) {
+       if (isAdminHashSet($admin)) {
                // Check cache
-               $ret = $GLOBALS['cache_array']['admins']['password'][$adminId];
+               $ret = $GLOBALS['cache_array']['admin']['password'][$admin];
 
                // Update cache hits
                incrementStatsEntry('cache_hits');
        } elseif (!isExtensionActive('cache')) {
                // Load from database
                $result = SQL_QUERY_ESC("SELECT password FROM `{?_MYSQL_PREFIX?}_admins` WHERE `id`=%s LIMIT 1",
-               array($adminId), __FUNCTION__, __LINE__);
+                       array($admin), __FUNCTION__, __LINE__);
                if (SQL_NUMROWS($result) == 1) {
                        // Fetch data
                        list($ret) = SQL_FETCHROW($result);
 
                        // Set cache
-                       $GLOBALS['cache_array']['admins']['password'][$adminId] = $ret;
+                       setAdminHash($admin, $ret);
                } // END - if
 
                // Free result
@@ -1484,9 +1484,9 @@ function getAdminLogin ($adminId) {
        // By default a non-existent login is returned (other functions react on this!)
        $ret = '***';
 
-       if (isset($GLOBALS['cache_array']['admins']['login'][$adminId])) {
+       if (isset($GLOBALS['cache_array']['admin']['login'][$adminId])) {
                // Get cache
-               $ret = $GLOBALS['cache_array']['admins']['login'][$adminId];
+               $ret = $GLOBALS['cache_array']['admin']['login'][$adminId];
 
                // Update cache hits
                incrementStatsEntry('cache_hits');
@@ -1499,7 +1499,7 @@ function getAdminLogin ($adminId) {
                        list($ret) = SQL_FETCHROW($result);
 
                        // Set cache
-                       $GLOBALS['cache_array']['admins']['login'][$adminId] = $ret;
+                       $GLOBALS['cache_array']['admin']['login'][$adminId] = $ret;
                } // END - if
 
                // Free memory
@@ -1513,9 +1513,9 @@ function getAdminEmail ($adminId) {
        // By default an invalid emails is returned
        $ret = '***';
 
-       if (isset($GLOBALS['cache_array']['admins']['email'][$adminId])) {
+       if (isset($GLOBALS['cache_array']['admin']['email'][$adminId])) {
                // Get cache
-               $ret = $GLOBALS['cache_array']['admins']['email'][$adminId];
+               $ret = $GLOBALS['cache_array']['admin']['email'][$adminId];
 
                // Update cache hits
                incrementStatsEntry('cache_hits');
@@ -1528,7 +1528,7 @@ function getAdminEmail ($adminId) {
                        list($ret) = SQL_FETCHROW($result_admin_id);
 
                        // Set cache
-                       $GLOBALS['cache_array']['admins']['email'][$adminId] = $ret;
+                       $GLOBALS['cache_array']['admin']['email'][$adminId] = $ret;
                } // END - if
 
                // Free result
@@ -1548,9 +1548,9 @@ function getAdminDefaultAcl ($adminId) {
        if (!isExtensionActive('sql_patches')) {
                // Not found, which is bad, so we need to allow all
                $ret =  'allow';
-       } elseif (isset($GLOBALS['cache_array']['admins']['def_acl'][$adminId])) {
+       } elseif (isset($GLOBALS['cache_array']['admin']['def_acl'][$adminId])) {
                // Use cache
-               $ret = $GLOBALS['cache_array']['admins']['def_acl'][$adminId];
+               $ret = $GLOBALS['cache_array']['admin']['def_acl'][$adminId];
 
                // Update cache hits
                incrementStatsEntry('cache_hits');
@@ -1563,7 +1563,7 @@ function getAdminDefaultAcl ($adminId) {
                        list($ret) = SQL_FETCHROW($result_admin_id);
 
                        // Set cache
-                       $GLOBALS['cache_array']['admins']['def_acl'][$adminId] = $ret;
+                       $GLOBALS['cache_array']['admin']['def_acl'][$adminId] = $ret;
                }
 
                // Free result
@@ -1642,7 +1642,7 @@ function FILTER_ACTIVATE_EXCHANGE () {
                updateConfiguration('activate_xchange' ,0);
 
                // Rebuild cache
-               rebuildCacheFile('modreg', 'modreg');
+               rebuildCacheFile('modules', 'modules');
        } // END - if
 }