List active/inactive extensions
[mailer.git] / 0.2.1 / inc / modules / admin / what-repair_amnu.php
1 <?php\r
2 /************************************************************************\r
3  * MXChange v0.2.1                                    Start: 02/25/2004 *\r
4  * ================                             Last change: 02/25/2004 *\r
5  *                                                                      *\r
6  * -------------------------------------------------------------------- *\r
7  * File              : what-repair_amenu.php                            *\r
8  * -------------------------------------------------------------------- *\r
9  * Short description : Repair admin menu weight                         *\r
10  * -------------------------------------------------------------------- *\r
11  * Kurzbeschreibung  : Menuegewichtigung reparieren                     *\r
12  * -------------------------------------------------------------------- *\r
13  *                                                                      *\r
14  * -------------------------------------------------------------------- *\r
15  * Copyright (c) 2003 - 2008 by Roland Haeder                           *\r
16  * For more information visit: http://www.mxchange.org                  *\r
17  *                                                                      *\r
18  * This program is free software; you can redistribute it and/or modify *\r
19  * it under the terms of the GNU General Public License as published by *\r
20  * the Free Software Foundation; either version 2 of the License, or    *\r
21  * (at your option) any later version.                                  *\r
22  *                                                                      *\r
23  * This program is distributed in the hope that it will be useful,      *\r
24  * but WITHOUT ANY WARRANTY; without even the implied warranty of       *\r
25  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *\r
26  * GNU General Public License for more details.                         *\r
27  *                                                                      *\r
28  * You should have received a copy of the GNU General Public License    *\r
29  * along with this program; if not, write to the Free Software          *\r
30  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *\r
31  * MA  02110-1301  USA                                                  *\r
32  ************************************************************************/\r
33 \r
34 // Some security stuff...\r
35 if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!IS_ADMIN()))\r
36 {\r
37         $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4)."/security.php";\r
38         require($INC);\r
39 }\r
40 // Add description as navigation point\r
41 ADD_DESCR("admin", basename(__FILE__));\r
42 \r
43 global $link;\r
44 $ACTIONs = array();\r
45 // First fix all main menus (what='')...\r
46 $result_fix = SQL_QUERY("SELECT id, action FROM "._MYSQL_PREFIX."_admin_menu WHERE what='' AND action != 'logout' ORDER BY sort ASC", __FILE__, __LINE__);\r
47 $cnt = 0; $REP = 0;\r
48 while(list($id, $act) = SQL_FETCHROW($result_fix))\r
49 {\r
50         // Store action value for later usage in sorting sub menus\r
51         $ACTIONs[] = $act;\r
52 \r
53         // Fix weight\r
54         $result_sort = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_admin_menu SET sort='%s' WHERE id=%d LIMIT 1",\r
55          array($cnt, bigintval($id)), __FILE__, __LINE__);\r
56         $REP += SQL_AFFECTEDROWS();\r
57 \r
58         // Count one up\r
59         $cnt++;\r
60 }\r
61 \r
62 // Free memory\r
63 SQL_FREERESULT($result_fix);\r
64 \r
65 // Set logout weight to 999\r
66 $result_sort = SQL_QUERY("UPDATE "._MYSQL_PREFIX."_admin_menu SET sort='999' WHERE action='logout' AND what='' LIMIT 1", __FILE__, __LINE__);\r
67 \r
68 // Now sort every each menu\r
69 foreach ($ACTIONs as $act)\r
70 {\r
71         $result_fix = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_admin_menu WHERE action='%s' AND what != '' ORDER BY sort",\r
72          array($act), __FILE__, __LINE__);\r
73         $cnt = 1;\r
74         while (list($id) = SQL_FETCHROW($result_fix))\r
75         {\r
76                 // Fix weight\r
77                 $result_sort = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_admin_menu SET sort='%s' WHERE id=%d LIMIT 1",\r
78                  array($cnt, bigintval($id)), __FILE__, __LINE__);\r
79                 $REP += SQL_AFFECTEDROWS();\r
80 \r
81                 // Count one up\r
82                 $cnt++;\r
83         }\r
84 \r
85         // Free memory\r
86         SQL_FREERESULT($result_fix);\r
87 }\r
88 \r
89 // Repair finished\r
90 LOAD_TEMPLATE("admin_settings_saved", false, "<FONT class=\"admin_done\">".ADMIN_REPAIR_ENTRIES_FIXED_1.$REP.ADMIN_REPAIR_ENTRIES_FIXED_2."</FONT>");\r
91 \r
92 //\r
93 ?>\r