X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fadmin%2Fwhat-repair_gmnu.php;h=50fc21ed3f96e0a48b398753be4b99263e96a505;hp=e2cc8eeff4c30f9663d1fd2f469891bf1cb159a3;hb=3f51c40f4fede87228216f9285b745a339e3891d;hpb=75ad748a68473ace540251427a74fb781b1145e9 diff --git a/inc/modules/admin/what-repair_gmnu.php b/inc/modules/admin/what-repair_gmnu.php index e2cc8eeff4..50fc21ed3f 100644 --- a/inc/modules/admin/what-repair_gmnu.php +++ b/inc/modules/admin/what-repair_gmnu.php @@ -10,7 +10,12 @@ * -------------------------------------------------------------------- * * Kurzbeschreibung : Menuegewichtigung reparieren * * -------------------------------------------------------------------- * - * * + * $Revision:: $ * + * $Date:: $ * + * $Tag:: 0.2.1-FINAL $ * + * $Author:: $ * + * Needs to be in all Files and every File needs "svn propset * + * svn:keywords Date Revision" (autoprobset!) at least!!!!!! * * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2008 by Roland Haeder * * For more information visit: http://www.mxchange.org * @@ -32,62 +37,57 @@ ************************************************************************/ // Some security stuff... -if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!IS_ADMIN())) -{ - $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php"; +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", basename(__FILE__)); +ADD_DESCR('admin', __FILE__); $ACTIONS = array(); -// First fix all main menus (what='')... -$result_fix = SQL_QUERY("SELECT id, action FROM "._MYSQL_PREFIX."_guest_menu WHERE what='' AND action != 'logout' ORDER BY sort ASC", __FILE__, __LINE__); +// First fix all main menus (what = '')... +$result_fix = SQL_QUERY("SELECT id, action FROM `{!_MYSQL_PREFIX!}_guest_menu` WHERE (`what`='' OR `what` IS NULL) AND action != 'logout' ORDER BY `sort` ASC", __FILE__, __LINE__); $cnt = 0; $REP = 0; -while(list($id, $act) = SQL_FETCHROW($result_fix)) -{ - // Store action value for later usage in sorting sub menus - $ACTIONS[] = $act; +while ($content = SQL_FETCHARRAY($result_fix)) { + // Store act value for later usage in sorting sub menus + $ACTIONS[] = $content['action']; // Fix weight - $result_sort = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_guest_menu SET sort='%s' WHERE id=%d LIMIT 1", - array(bigintval($cnt), bigintval($id)), __FILE__, __LINE__); + $result_sort = SQL_QUERY("UPDATE `{!_MYSQL_PREFIX!}_guest_menu` SET sort='".$cnt."' WHERE `id`='".$content['id']."' LIMIT 1", __FILE__, __LINE__); $REP += SQL_AFFECTEDROWS(); // Count one up $cnt++; } - -// Free memory -SQL_FREERESULT($result_fix); - // Set logout weight to 999 -$result_sort = SQL_QUERY("UPDATE "._MYSQL_PREFIX."_guest_menu SET sort='999' WHERE action='logout' AND what='' LIMIT 1", __FILE__, __LINE__); +$result_sort = SQL_QUERY("UPDATE `{!_MYSQL_PREFIX!}_guest_menu` SET sort='999' WHERE `action`='logout' AND (`what`='' OR `what` IS NULL) LIMIT 1", __FILE__, __LINE__); // Now sort every each menu -foreach ($ACTIONS as $act) -{ - $result_fix = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_guest_menu WHERE action='%s' AND what != '' ORDER BY sort", - array($act), __FILE__, __LINE__); - +foreach ($ACTIONS as $act) { + $result_fix = SQL_QUERY_ESC("SELECT `id` FROM `{!_MYSQL_PREFIX!}_guest_menu` WHERE `action`='%s' AND `what` != '' AND `what` IS NOT NULL ORDER BY `sort`", + array($act), __FILE__, __LINE__); $cnt = 1; - while (list($id) = SQL_FETCHROW($result_fix)) - { + while ($content = SQL_FETCHARRAY($result_fix)) { // Fix weight - $result_sort = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_guest_menu SET sort='%s' WHERE id=%d LIMIT 1", - array(bigintval($cnt), bigintval($id)), __FILE__, __LINE__); + SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_guest_menu` SET sort=%s WHERE `id`=%s LIMIT 1", + array($cnt, $content['id']), __FILE__, __LINE__); $REP += SQL_AFFECTEDROWS(); // Count one up $cnt++; } - - // Free memory - SQL_FREERESULT($result_fix); } // Repair finished -LOAD_TEMPLATE("admin_settings_saved", false, "".ADMIN_REPAIR_ENTRIES_FIXED_1.$REP.ADMIN_REPAIR_ENTRIES_FIXED_2.""); +if ($REP > 0) { + $message = sprintf(getMessage('ADMIN_REPAIR_ENTRIES_FIXED'), $REP); +} else { + $message = getMessage('ADMIN_REPAIR_NOTHING_FIXED'); +} + +// Output message +LOAD_TEMPLATE('admin_settings_saved', false, $message); // ?>