Rewrote 'we' word a little, rewrote mail order to use SQL_INSERTID() instead of anoth...
[mailer.git] / inc / loader / load-admins.php
index f769d6b98cfa4cd42a03e121d53393d36cb9d2d1..c34f9585bed3616ce8d942263334b8de87321a47 100644 (file)
@@ -16,8 +16,8 @@
  * $Author::                                                          $ *
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
- * Copyright (c) 2009 - 2011 by Mailer Developer Team                   *
- * For more information visit: http://www.mxchange.org                  *
+ * Copyright (c) 2009 - 2012 by Mailer Developer Team                   *
+ * For more information visit: http://mxchange.org                      *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
  * it under the terms of the GNU General Public License as published by *
@@ -57,7 +57,7 @@ if (($GLOBALS['cache_instance']->loadCacheFile('admin')) && ($GLOBALS['cache_ins
                        foreach ($GLOBALS['cache_array']['admin']['login'] as $idx => $admin) {
                                // Rewrite all entries
                                foreach ($GLOBALS['cache_array']['admin'] as $key => $entry) {
-                                       // Do we have login or regular entries?
+                                       // Is there login or regular entries?
                                        if ($key == 'admin_id') {
                                                // Admin id, so use login
                                                $admins[$key][$GLOBALS['cache_array']['admin']['login'][$idx]] = $entry[$idx];
@@ -90,14 +90,18 @@ if (($GLOBALS['cache_instance']->loadCacheFile('admin')) && ($GLOBALS['cache_ins
 
        // Query the database about this
        $result = SQL_QUERY('SELECT
-       `id` AS admin_id, `login`, `password`, `email`' . $add . '
+       `id` AS `admin_id`,
+       `login`,
+       `password`,
+       `email`
+       ' . $add . '
 FROM
        `{?_MYSQL_PREFIX?}_admins`
 ORDER BY
        `login` ASC', __FILE__, __LINE__);
-       while ($dummy = SQL_FETCHARRAY($result)) {
+       while ($row = SQL_FETCHARRAY($result)) {
                // Save row
-               $GLOBALS['cache_instance']->addRow($dummy);
+               $GLOBALS['cache_instance']->addRow($row);
        } // END - while
 
        // Free memory
@@ -112,7 +116,7 @@ ORDER BY
 if (isExtensionInstalledAndNewer('admins', '0.3')) {
        // Check for cache file
        if (($GLOBALS['cache_instance']->loadCacheFile('admin_acls')) && ($GLOBALS['cache_instance']->extensionVersionMatches('admins'))) {
-               // Load referal system from cache
+               // Load admin ACLs from cache
                $GLOBALS['cache_array']['admin_acls'] = $GLOBALS['cache_instance']->getArrayFromCache();
 
                // Check if valid
@@ -124,10 +128,10 @@ if (isExtensionInstalledAndNewer('admins', '0.3')) {
                                foreach ($GLOBALS['cache_array']['admin_acls']['admin_id'] as $idx => $admin) {
                                        // Rewrite all entries
                                        foreach ($GLOBALS['cache_array']['admin_acls'] as $key => $entry) {
-                                               // Do we have 'admin_id' or regular entries?
+                                               // Is there 'admin_id' or regular entries?
                                                if ($key != 'admin_id') {
                                                        // Regular entry so use id
-                                                       $admins[$key][$GLOBALS['cache_array']['admin_acls']['admin_id'][$idx]][] = $entry[$idx];
+                                                       array_push($admins[$key][$GLOBALS['cache_array']['admin_acls']['admin_id'][$idx]], $entry[$idx]);
                                                } // END - if
                                        } // END - foreach
                                } // END - foreach
@@ -140,17 +144,20 @@ if (isExtensionInstalledAndNewer('admins', '0.3')) {
                                $GLOBALS['cache_instance']->removeCacheFile();
                                unset($GLOBALS['cache_array']['admin_acls']);
                        }
-               } else {
+               } elseif (count($GLOBALS['cache_array']['admin_acls']) > 0) {
                        // Nope, cache file is corrupted!
                        $GLOBALS['cache_instance']->removeCacheFile();
                        unset($GLOBALS['cache_array']['admin_acls']);
+               } elseif (isDebugModeEnabled()) {
+                       // This may drive a lot messages to the logfile
+                       //* DEBUG: */ logDebugMessage(__FILE__, __LINE__, 'No entry found in admin_acls to rewrite.');
                }
        } elseif (isHtmlOutputMode()) {
                // Create cache file here
                $GLOBALS['cache_instance']->init();
 
-               // Load all modules and their data (column 'id' is no longer required)
-               $result = SQL_QUERY('SELECT `admin_id`, `action_menu`, `what_menu`, `access_mode` FROM `{?_MYSQL_PREFIX?}_admins_acls` ORDER BY `admin_id` ASC, `action_menu` ASC, `what_menu` ASC', __FILE__, __LINE__);
+               // Load all admins and their data
+               $result = SQL_QUERY('SELECT * FROM `{?_MYSQL_PREFIX?}_admins_acls` ORDER BY `admin_id` ASC,`action_menu` ASC,`what_menu` ASC', __FILE__, __LINE__);
 
                // Add all rows
                while ($content = SQL_FETCHARRAY($result)) {