X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fadmin%2Fwhat-adminedit.php;h=32d08b012bf61baebccd427feaaa48cd50158ff9;hp=f5743113d5bb30a99e885bb65a90cacafb7d7466;hb=0f3a135204757cc8750262871c8e62c42300acb4;hpb=3afdce4fe00b4af570122ce7b8158ced44aec7d3 diff --git a/inc/modules/admin/what-adminedit.php b/inc/modules/admin/what-adminedit.php index f5743113d5..32d08b012b 100644 --- a/inc/modules/admin/what-adminedit.php +++ b/inc/modules/admin/what-adminedit.php @@ -1,7 +1,7 @@ 0) && (!IS_DEMO())) { +if ((isFormSent('edit')) && (ifPostContainsSelections()) && (!isDemoModeActive())) { // Edit menu entries - define('__SUB_VALUE', $SUB); - define('__CHK_VALUE', $chk); - $cnt = 0; $SW = 2; - foreach (REQUEST_POST('sel') as $sel => $confirm) - { - if ($confirm == 1) - { - $cnt++; - $result = SQL_QUERY_ESC("SELECT title, action, what, descr FROM `{!_MYSQL_PREFIX!}_admin_menu` WHERE ".$AND." AND id=%s LIMIT 1", - array(bigintval($sel)), __FILE__, __LINE__); - if (SQL_NUMROWS($result) == 1) - { + // @TODO Kill all constants in this file + $content['sub'] = $SUB; + $content['chk'] = countPostSelection(); + $count = '0'; $OUT = ''; + foreach (postRequestParameter('sel') as $sel => $confirm) { + if ($confirm == 1) { + $count++; + $result = SQL_QUERY_ESC("SELECT `title`,`action`,`what`,`descr` FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE ".$AND." AND `id`=%s LIMIT 1", + array(bigintval($sel)), __FILE__, __LINE__); + if (SQL_NUMROWS($result) == 1) { // Entry found so we load the stuff... - list($menu, $act, $wht, $descr) = SQL_FETCHROW($result); - SQL_FREERESULT($result); + $content = SQL_FETCHARRAY($result); // Prepare data for the row template $content = array( - 'action' => ADMIN_MAKE_MENU_SELECTION('admin', "action", "sel_action[".$sel."]", $act), - 'what' => ADMIN_MAKE_MENU_SELECTION('admin', "what", "sel_what[".$sel."]", $wht), - 'sw' => $SW, + 'action' => adminAddMenuSelectionBox('admin', 'action', 'sel_action[' . $sel . ']', $content['action']), + 'what' => adminAddMenuSelectionBox('admin', 'what' , 'sel_what[' . $sel . ']', $content['what']), 'sel' => $sel, - 'menu' => $menu, - 'descr' => $descr, - 'cnt' => $cnt, + 'menu' => $content['title'], + 'descr' => $content['descr'], + 'count' => $count, ); - $OUT .= LOAD_TEMPLATE("admin_amenu_edit_row", true, $content); - } - else - { + + // Load row template + $OUT .= loadTemplate('admin_edit_admin_menu_row', true, $content); + } else { // Entry not found? $content = array( - 'sw' => $SW, 'sel' => $sel ); - $OUT .= LOAD_TEMPLATE("admin_menu_404_row", true, $content); + + // Load row template + $OUT .= loadTemplate('admin_menu_404_row', true, $content); } - $SW = 3 - $SW; - } - } - define('__MENU_ROWS', $OUT); - define('__CNT_VALUE', $cnt); + + // Free result and switch color + SQL_FREERESULT($result); + } // END - if + } // END - foreach + + $content['rows'] = $OUT; + $content['count'] = $count; // Load template - LOAD_TEMPLATE("admin_amenu_edit_form"); -} -elseif ((REQUEST_ISSET_POST('del')) && (!IS_DEMO())) -{ - define('__SUB_VALUE', $SUB); - define('__CHK_VALUE', $chk); + loadTemplate('admin_edit_admin_menu_form', false, $content); +} elseif ((isFormSent('delete')) && (ifPostContainsSelections()) && (!isDemoModeActive())) { + // Prepare misc content + $content['sub'] = $SUB; + $content['chk'] = countPostSelection(); + // Del menu entries with or without confirmation - $SW = 2; $cnt = 0; $OUT = ''; - foreach (REQUEST_POST('sel') as $sel => $confirm) - { - if ($confirm == 1) - { - $cnt++; - $result = SQL_QUERY_ESC("SELECT title FROM `{!_MYSQL_PREFIX!}_admin_menu` WHERE ".$AND." AND id=%s LIMIT 1", - array(bigintval($sel)), __FILE__, __LINE__); - if (SQL_NUMROWS($result) == 1) - { + $count = '0'; $OUT = ''; + foreach (postRequestParameter('sel') as $sel => $confirm) { + if ($confirm == 1) { + $count++; + $result = SQL_QUERY_ESC("SELECT `title` FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE ".$AND." AND `id`=%s LIMIT 1", + array(bigintval($sel)), __FILE__, __LINE__); + if (SQL_NUMROWS($result) == 1) { // Entry found so we load the stuff... - list($menu) = SQL_FETCHROW($result); - SQL_FREERESULT($result); + $content = SQL_FETCHARRAY($result); // Prepare data for the row template $content = array( - 'menu' => $menu, - 'cnt' => $cnt, - 'sel' => $sel, - 'sw' => $SW + 'menu' => $content['title'], + 'count' => $count, + 'sel' => $sel, ); - $OUT .= LOAD_TEMPLATE("admin_amenu_delete_row", true, $content); - } - else - { + $OUT .= loadTemplate('admin_delete_admin_menu_row', true, $content); + } else { // Entry not found? $content = array( - 'sw' => $SW, 'sel' => $sel ); - $OUT .= LOAD_TEMPLATE("admin_menu_404_row", true, $content); + $OUT .= loadTemplate('admin_menu_404_row', true, $content); } - $SW = 3 - $SW; - } - } - define('__MENU_ROWS', $OUT); - define('__CNT_VALUE', $cnt); + SQL_FREERESULT($result); + } // END - if + } // END - switch + $content['rows'] = $OUT; + $content['count'] = $count; // Load template - LOAD_TEMPLATE("admin_amenu_delete"); -} elseif ((isFormSent()) && (!IS_DEMO())) { + loadTemplate('admin_delete_admin_menu', false, $content); +} elseif ((isFormSent()) && (!isDemoModeActive())) { // An action is done... - switch (REQUEST_POST('ok')) - { + switch (postRequestParameter('ok')) { case 'edit': // Edit menu - foreach (REQUEST_POST('sel') as $sel => $menu) { - // Secure ID + foreach (postRequestParameter('sel') as $sel => $menu) { + // Secure id $sel = bigintval($sel); // Update entry - SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_admin_menu` SET -title='%s', -`action`='%s', -`what`='%s', -descr='%s' -WHERE ".$AND." AND id=%s LIMIT 1", + SQL_QUERY_ESC("UPDATE + `{?_MYSQL_PREFIX?}_admin_menu` +SET + `title`='%s', + `action`='%s', + `what`='%s', + `descr`='%s' +WHERE + ".$AND." AND + `id`=%s +LIMIT 1", array( - $menu, - REQUEST_POST('sel_action', $sel), - REQUEST_POST('sel_what', $sel), - REQUEST_POST('sel_desc', $sel), - $sel, + $menu, + postRequestParameter('sel_action', $sel), + postRequestParameter('sel_what', $sel), + postRequestParameter('sel_desc', $sel), + $sel, ), __FILE__, __LINE__); } - // Purge admin menu cache - cachePurgeAdminMenu(0, REQUEST_POST('sel_action', $sel), REQUEST_POST('sel_what', $sel)); - // Load template - LOAD_TEMPLATE('admin_settings_saved', false, getMessage('SETTINGS_SAVED')); + displayMessage('{--SETTINGS_SAVED--}'); break; - case 'del': // Delete menu - foreach (REQUEST_POST('sel') as $sel => $menu) { - SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_admin_menu` WHERE ".$AND." AND id=%s LIMIT 1", - array(bigintval($sel)), __FILE__, __LINE__); - cachePurgeAdminMenu(0, '', '', $AND); + case 'delete': // Delete menu + foreach (postRequestParameter('sel') as $sel => $menu) { + SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE ".$AND." AND `id`=%s LIMIT 1", + array(bigintval($sel)), __FILE__, __LINE__); } // END - foreach // Load template - LOAD_TEMPLATE('admin_settings_saved', false, getMessage('SETTINGS_SAVED')); + displayMessage('{--SETTINGS_SAVED--}'); break; default: // Unexpected action - DEBUG_LOG(__FILE__, __LINE__, sprintf("Unsupported action %s detected.", REQUEST_POST('ok'))); - define('__OK_VALUE', REQUEST_POST('ok')); - LOAD_TEMPLATE("admin_menu_unknown_okay"); + logDebugMessage(__FILE__, __LINE__, sprintf("Unsupported action %s detected.", postRequestParameter('ok'))); + displayMessage('{%message,ADMIN_UNKNOWN_OKAY=' . postRequestParameter('ok') . '%}'); break; - } + } // END - switch } else { - if ((REQUEST_ISSET_GET(('act'))) && (REQUEST_ISSET_GET(('tid'))) && (REQUEST_ISSET_GET(('fid')))) { - // Get IDs - if (REQUEST_ISSET_GET(('w'))) { - // Sub menus selected - $result = SQL_QUERY_ESC("SELECT `id` FROM `{!_MYSQL_PREFIX!}_admin_menu` WHERE `action`='%s' AND `sort`='%s' LIMIT 1", - array(REQUEST_GET('act'), bigintval(REQUEST_GET('tid'))), __FILE__, __LINE__); - list($tid) = SQL_FETCHROW($result); - SQL_FREERESULT($result); - $result = SQL_QUERY("SELECT `id` FROM `{!_MYSQL_PREFIX!}_admin_menu` WHERE `action`='%s' AND `sort`='%s' LIMIT 1", - array(REQUEST_GET('act'), bigintval(REQUEST_GET('fid'))), __FILE__, __LINE__); - list($fid) = SQL_FETCHROW($result); - SQL_FREERESULT($result); - } else { - // Main menu selected - $result = SQL_QUERY_ESC("SELECT `id` FROM `{!_MYSQL_PREFIX!}_admin_menu` WHERE (`what`='' OR `what` IS NULL) AND `sort`='%s' LIMIT 1", - array(bigintval(REQUEST_GET('tid'))), __FILE__, __LINE__); - list($tid) = SQL_FETCHROW($result); - SQL_FREERESULT($result); - $result = SQL_QUERY_ESC("SELECT `id` FROM `{!_MYSQL_PREFIX!}_admin_menu` WHERE (`what`='' OR `what` IS NULL) AND `sort`='%s' LIMIT 1", - array(bigintval(REQUEST_GET('fid'))), __FILE__, __LINE__); - list($fid) = SQL_FETCHROW($result); - SQL_FREERESULT($result); - } + // Handle weightning + doAdminProcessMenuWeightning('admin', $AND); - if ((!empty($tid)) && (!empty($fid))) { - // Sort menu - SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_admin_menu` SET `sort`='%s' WHERE ".$AND." AND id=%s LIMIT 1", - array(bigintval(REQUEST_GET('tid')), bigintval($fid)), __FILE__, __LINE__); - SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_admin_menu` SET `sort`='%s' WHERE ".$AND." AND id=%s LIMIT 1", - array(bigintval(REQUEST_GET('fid')), bigintval($tid)), __FILE__, __LINE__); - cachePurgeAdminMenu(0, '', '', $AND); - } - } - - // By default list menus - if (!empty($SUB)) { - // Sub menus of a main menu - $result = SQL_QUERY_ESC("SELECT id, action, what, title, sort FROM `{!_MYSQL_PREFIX!}_admin_menu` WHERE `action`='%s' AND `what` != '' AND `what` IS NOT NULL ORDER BY `sort` ASC", - array($SUB), __FILE__, __LINE__); - } else { - // Main menus - $result = SQL_QUERY("SELECT id, action, what, title, sort FROM `{!_MYSQL_PREFIX!}_admin_menu` WHERE (`what`='' OR `what` IS NULL) ORDER BY `sort` ASC", __FILE__, __LINE__); - } + // Run SQL + $result = SQL_QUERY("SELECT `id`,`action`,`what`,`title`,`sort` FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE ".$AND." ORDER BY `sort` ASC", __FILE__, __LINE__); - $max = SQL_NUMROWS($result); - if ($max > 0) { - // @TODO Rewrite this constant - define('__SUB_VALUE', $SUB); + // Do we have entries? + if (!SQL_HASZERONUMS($result)) { + // Remember sub value + $content['sub'] = $SUB; // Init variables - $OUT = ''; $SW = 2; $cnt = 0; + $OUT = ''; + $count = '0'; // Process all entries while ($content = SQL_FETCHARRAY($result)) { // Count this entry - $cnt++; + $count++; // Init navigation variable $content['navi'] = ''; - if (($content['sort'] == 0) || (($content['sort'] == 1) && (!empty($SUB)))) { + if (($content['sort'] == '0') || (($content['sort'] == 1) && (!empty($SUB)))) { // Is highest position - $content['navi'] = "{--LOWER--}"; - } elseif ($cnt == $max) { + $content['navi'] = '{--LOWER--}'; + } elseif ($count == SQL_NUMROWS($result)) { // Is lowest position - $content['navi'] = "{--HIGHER--}"; + $content['navi'] = '{--HIGHER--}'; } elseif ($content['sort'] > 0) { // Anything else between highest and lowest - $content['navi'] = "{--HIGHER--}/{--LOWER--}"; + $content['navi'] = '{--HIGHER--}|{--LOWER--}'; } - // Fix empty elements for constant (fixes display bugs in Firefox) - if (empty($content['action'])) $content['action'] = " "; - if (empty($content['what'])) $content['what'] = " "; - if (empty($content['title'])) $content['title'] = " "; - // Add more data to $content - $content['sw'] = $SW; $content['mode'] = 'admin'; // Load row template and switch colors - $OUT .= LOAD_TEMPLATE("admin_menu_overview_row", true, $content); - $SW = 3 - $SW; + $OUT .= loadTemplate('admin_menu_overview_row', true, $content); } // END - switch + // Remember all rows + $content['rows'] = $OUT; + // Free memory SQL_FREERESULT($result); - // Rewrite this constant - define('__MENU_ROWS', $OUT); - // Load template - LOAD_TEMPLATE("admin_amenu_edit"); + loadTemplate('admin_edit_admin_menu', false, $content); } else { // Menu entries are missing... (???) - LOAD_TEMPLATE('admin_settings_saved', false, getMessage('ADMIN_NO_MENUS_FOUND')); + displayMessage('{--ADMIN_NO_MENUS_FOUND--}'); } }