]> git.mxchange.org Git - mailer.git/blobdiff - inc/modules/admin/what-config_admins.php
Fixes and cleanups
[mailer.git] / inc / modules / admin / what-config_admins.php
index c531b3b30f38253689b33baaa3e071c77eac4638..f551ef47b7591c74e7b59193e56a1fa6505a87ab 100644 (file)
@@ -1,280 +1,3 @@
 <?php
-/************************************************************************
- * MXChange v0.2.1                                    Start: 06/30/2004 *
- * ================                             Last change: 07/02/2004 *
- *                                                                      *
- * -------------------------------------------------------------------- *
- * File: what-config_admins.php                                         *
- * -------------------------------------------------------------------- *
- * Short description : Configure admin ACLs                             *
- * -------------------------------------------------------------------- *
- * Kurzbeschreibung  : Admin-ACLs einstellen                            *
- * -------------------------------------------------------------------- *
- *                                                                      *
- * -------------------------------------------------------------------- *
- * Copyright (c) 2003 - 2008 by Roland Haeder                           *
- * For more information visit: http://www.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 *
- * the Free Software Foundation; either version 2 of the License, or    *
- * (at your option) any later version.                                  *
- *                                                                      *
- * This program is distributed in the hope that it will be useful,      *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of       *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
- * GNU General Public License for more details.                         *
- *                                                                      *
- * You should have received a copy of the GNU General Public License    *
- * along with this program; if not, write to the Free Software          *
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *
- * MA  02110-1301  USA                                                  *
- ************************************************************************/
-
-// Some security stuff...
-if ((!defined('__SECURITY')) || (!IS_ADMIN())) {
-       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
-       require($INC);
-}
-
-// Add description as navigation point
-ADD_DESCR("admin", __FILE__);
-
-$SEL = 0;
-if (!empty($_POST['sel'])) $SEL = SELECTION_COUNT($_POST['sel']);
-
-if ((isset($_POST['edit'])) && ($SEL > 0)) {
-       // Edit ACLs
-       $SW = 2; $OUT = "";
-       foreach ($_POST['sel'] as $id => $sel) {
-               // Load data for the ID
-               $result = SQL_QUERY_ESC("SELECT admin_id, action_menu, what_menu, access_mode FROM "._MYSQL_PREFIX."_admins_acls WHERE id=%s LIMIT 1",
-                array(bigintval($id)), __FILE__, __LINE__);
-               list($aid, $act, $wht, $mode) = SQL_FETCHROW($result);
-               SQL_FREERESULT($result);
-
-               // Prepare data for the row template
-               $content = array(
-                       'sw'               => $SW,
-                       'id'               => $id,
-                       'admins_selection' => ADD_OPTION_LINES("admins", "id", "login", $aid, "default_acl"),
-                       'action_selection' => ADMIN_MENU_SELECTION("action", $act, $id),
-                       'what_selection'   => ADMIN_MENU_SELECTION("what", $wht, $id),
-                       'mode_options'     => ADD_OPTION_LINES(
-                               "/ARRAY/",
-                               array("allow", "deny"),
-                               array(ADMINS_ALLOW_MODE, ADMINS_DENY_MODE),
-                               $mode
-                       ),
-               );
-
-               // Load row template
-               $OUT .= LOAD_TEMPLATE("admin_config_admins_edit_row", true, $content);
-               $SW = 3 - $SW;
-       }
-       define('__ACL_ROWS', $OUT);
-
-       // Load main template
-       LOAD_TEMPLATE("admin_config_admins_edit");
-} elseif ((isset($_POST['change'])) && ($SEL > 0)) {
-       // Change entries
-       foreach ($_POST['sel'] as $id => $sel) {
-               // Secure ID
-               $id = bigintval($id);
-
-               // Update entries
-               $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_admins_acls SET admin_id=%s, action_menu='%s', what_menu='%s', access_mode='%s' WHERE id=%s LIMIT 1",
-                array($_POST['admin'][$id], $_POST['action_menu'][$id], $_POST['what_menu'][$id], $_POST['mode'][$id], $id),__FILE__, __LINE__);
-       }
-
-       // Update cache when installed
-       if (EXT_IS_ACTIVE("cache")) {
-               if ($cacheInstance->cache_file("admins_acls", true) == true) $cacheInstance->cache_destroy();
-
-               // Purge menu cache
-               CACHE_PURGE_ADMIN_MENU($_POST['admin'][$id]);
-       }
-
-       // Entries changed
-       LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_ADMINS_ENTRIES_CHANGED);
-} elseif ((isset($_POST['del'])) && ($SEL > 0)) {
-       // Delete ACLs
-       $SW = 2; $OUT = "";
-       foreach ($_POST['sel'] as $id => $sel) {
-               // Load data for the ID
-               $result = SQL_QUERY_ESC("SELECT admin_id, action_menu, what_menu, access_mode FROM "._MYSQL_PREFIX."_admins_acls WHERE id=%s LIMIT 1",
-                array(bigintval($id)), __FILE__, __LINE__);
-               list($admin, $act, $wht, $mode) = SQL_FETCHROW($result);
-               SQL_FREERESULT($result);
-
-               // Prepare variables
-               if (empty($act)) $act = "---";
-               if (empty($wht)) $wht   = "---";
-
-               // Get admin mode
-               $mode = constant('ADMINS_'.strtoupper($mode).'_MODE');
-
-               // Load admin's data
-               $login = GET_ADMIN_LOGIN($admin);
-               if ($login != "***") {
-                       // Admin found
-                       $admin = "<A href=\"".URL."/modules.php?module=admin&amp;what=admins_contct&amp;admin=".$admin."\">".$login."</A>";
-               } else {
-                       // Maybe deleted?
-                       $admin = "<FONT class=\"admin_note\">".ADMIN_ID_404_1.$admin.ADMIN_ID_404_2."</FONT>";
-               }
-
-               // Prepare data for the row template
-               $content = array(
-                       'sw'     => $SW,
-                       'id'     => $id,
-                       'admin'  => $admin,
-                       'action' => $act,
-                       'what'   => $wht,
-                       'mode'   => $mode,
-               );
-
-               // Load row template and switch colors
-               $OUT .= LOAD_TEMPLATE("admin_config_admins_del_row", true, $content);
-               $SW = 3 - $SW;
-       }
-       define('__ACL_ROWS', $OUT);
-
-       // Load main template
-       LOAD_TEMPLATE("admin_config_admins_del");
-} elseif ((isset($_POST['remove'])) && ($SEL > 0)) {
-       // Remove entries
-       foreach ($_POST['sel'] as $id => $sel) {
-               $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_admins_acls WHERE id=%s LIMIT 1",
-                array(bigintval($id)),__FILE__, __LINE__);
-       }
-
-       // Update cache when installed
-       if (EXT_IS_ACTIVE("cache")) {
-               if ($cacheInstance->cache_file("admins_acls", true) == true) $cacheInstance->cache_destroy();
-
-               // @TODO This causes the whole (!) menu cache being rebuild
-               CACHE_PURGE_ADMIN_MENU();
-       }
-
-       // Entries deleted
-       LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_ADMINS_ENTRIES_DELETED);
-} elseif (isset($_POST['add'])) {
-       // Check if everything is fine...
-       $mode = GET_ADMIN_DEFAULT_ACL(bigintval($_POST['admin_id']));
-
-       // Default ACL is false
-       $ACL = false;
-       if (!empty($_POST['what_menu'])) {
-               // Check parent ACL
-               $ACL = ADMINS_CHECK_ACL(GET_ACTION("admin", $_POST['what_menu']), "");
-       }
-
-       if ($mode != $_POST['mode'] || ($ACL)) {
-               // Mode is fine
-               $BOTH = ((!empty($_POST['action_menu'])) && (!empty($_POST['what_menu'])));
-               if (((!empty($_POST['action_menu'])) || (!empty($_POST['what_menu']))) && (!$BOTH)) {
-                       // Main or sub menu selected
-                       $result = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_admins_acls WHERE admin_id=%s AND action_menu='%s' AND what_menu='%s' LIMIT 1",
-                        array(bigintval($_POST['admin_id']), $_POST['action_menu'], $_POST['what_menu']), __FILE__, __LINE__);
-                       if (SQL_NUMROWS($result) == 0) {
-                               // Finally add the new ACL
-                               $result = SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_admins_acls (admin_id, action_menu, what_menu, access_mode)
-VALUES ('%s','%s','%s','%s')",
- array(
-       bigintval($_POST['admin_id']),
-       $_POST['action_menu'],
-       $_POST['what_menu'],
-       $_POST['mode']
-), __FILE__, __LINE__);
-                               $content = ADMIN_ADMINS_ACL_SAVED;
-
-                               // Update cache when installed
-                               if (EXT_IS_ACTIVE("cache")) {
-                                       if ($cacheInstance->cache_file("admins_acls", true) == true) $cacheInstance->cache_destroy();
-
-                                       // Purge cache
-                                       CACHE_PURGE_ADMIN_MENU($_POST['admin_id'], $_POST['action_menu'], $_POST['what_menu']);
-                               } // END - if
-                       } else {
-                               // ACL does already exist!
-                               $content = ADMIN_ADMINS_ACL_ALREADY_ADDED;
-                       }
-
-                       // Free memory
-                       SQL_FREERESULT($result);
-               } else {
-                       // No menu selected makes also no sence...
-                       $content = ADMIN_ADMINS_SELECT_ACTION_WHAT;
-               }
-       } else {
-               // Same mode makes no sence...
-               $content = ADMIN_ADMINS_SAME_MODE_SELECTED;
-       }
-
-       // Display message
-       LOAD_TEMPLATE("admin_settings_saved", false, $content);
-} else {
-       // List all ACLs
-       $result_acls = SQL_QUERY("SELECT id, admin_id, action_menu, what_menu, access_mode FROM "._MYSQL_PREFIX."_admins_acls ORDER BY admin_id, id", __FILE__, __LINE__);
-       if (SQL_NUMROWS($result_acls) > 0)
-       {
-               // List ACLs
-               $SW = 2; $OUT = "";
-               while(list($id, $admin, $act, $wht, $mode) = SQL_FETCHROW($result_acls))
-               {
-                       // Prepare variables
-                       if (empty($act)) $act = "---";
-                       if (empty($wht))   $wht   = "---";
-
-                       // Get mode
-                       $mode = constant('ADMINS_'.strtoupper($mode).'_MODE');
-
-                       // Load admin's data
-                       $login = GET_ADMIN_LOGIN($admin);
-                       if ($login != "***")
-                       {
-                               // Admin found
-                               $admin = "<A href=\"".URL."/modules.php?module=admin&amp;what=admins_contct&amp;admin=".$admin."\">".$login."</A>";
-                       }
-                        else
-                       {
-                               // Maybe deleted?
-                               $admin = "<FONT class=\"admin_note\">".ADMIN_ID_404_1.$admin.ADMIN_ID_404_2."</FONT>";
-                       }
-
-                       // Prepare data for the row template
-                       $content = array(
-                               'sw'     => $SW,
-                               'id'     => $id,
-                               'admin'  => $admin,
-                               'action' => $act,
-                               'what'   => $wht,
-                               'mode'   => $mode,
-                       );
-
-                       // Load row template and switch colors
-                       $OUT .= LOAD_TEMPLATE("admin_config_admins_row", true, $content);
-                       $SW = 3 - $SW;
-               }
-
-               // Free memory
-               SQL_FREERESULT($result);
-               define('__ACL_ROWS', $OUT);
-
-               // Load main template
-               LOAD_TEMPLATE("admin_config_admins");
-       }
-
-       // Prepare some constants for the template
-       define('_ADMINS_SELECTION', ADD_OPTION_LINES("admins", "id", "login", "", "default_acl"));
-       define('_ACTION_SELECTION', ADMIN_MENU_SELECTION("action"));
-       define('_WHAT_SELECTION'  , ADMIN_MENU_SELECTION("what"));
-       define('_MODE_OPTIONS'    , ADD_OPTION_LINES("/ARRAY/", array("allow", "deny"), array(ADMINS_ALLOW_MODE, ADMINS_DENY_MODE)));
-
-       // Load template for adding new ACL
-       LOAD_TEMPLATE("admin_admins_add_acl");
-}
-
-//
+// @DEPRECATED
 ?>