X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fadmin%2Fwhat-adminedit.php;h=d8c339cfdc4938e6d60c3c05a603514bc31b1f24;hp=88db098f49578b9b0fe627dc913e1a5388c1ae5b;hb=6914ebaaae909093df86d010e4c754a43d1a1aed;hpb=7f104f6fe558bb56b4205241435a2357c2feece1 diff --git a/inc/modules/admin/what-adminedit.php b/inc/modules/admin/what-adminedit.php index 88db098f49..d8c339cfdc 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 ($_POST['sel'] as $sel => $confirm) - { - if ($confirm == 1) - { + // @TODO Kill all constants in this file + $content['sub'] = $SUB; + $content['chk'] = countPostSelection(); + $cnt = '0'; + foreach (postRequestParameter('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) - { + $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); + $data = 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, + $data = array( + 'action' => adminAddMenuSelectionBox('admin', 'action', 'sel_action[' . $sel . ']', $data['action']), + 'what' => adminAddMenuSelectionBox('admin', 'what' , 'sel_what[' . $sel . ']', $data['what']), 'sel' => $sel, - 'menu' => $menu, - 'descr' => $descr, + 'menu' => $data['title'], + 'descr' => $data['descr'], 'cnt' => $cnt, ); - $OUT .= LOAD_TEMPLATE("admin_amenu_edit_row", true, $content); - } - else - { + + // Load row template + $OUT .= loadTemplate('form_submit_admin_menu_row', true, $data); + } else { // Entry not found? - $content = array( - 'sw' => $SW, + $data = array( 'sel' => $sel ); - $OUT .= LOAD_TEMPLATE("admin_menu_404_row", true, $content); + + // Load row template + $OUT .= loadTemplate('admin_menu_404_row', true, $data); } - $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['cnt'] = $cnt; // Load template - LOAD_TEMPLATE("admin_amenu_edit_form"); -} - elseif ((isset($_POST['del'])) && (!IS_DEMO())) -{ - define('__SUB_VALUE', $SUB); - define('__CHK_VALUE', $chk); + loadTemplate('form_submit_admin_menu_form', false, $content); +} elseif ((isFormSent('del')) && (ifPostContainsSelections()) && (!isDemoModeActive())) { + // Prepare misc content + $content['sub'] = $SUB; + $content['chk'] = countPostSelection(); + // Del menu entries with or without confirmation - $SW = 2; $cnt = 0; $OUT = ""; - foreach ($_POST['sel'] as $sel => $confirm) - { - if ($confirm == 1) - { + $cnt = '0'; $OUT = ''; + foreach (postRequestParameter('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) - { + $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); + $data = SQL_FETCHARRAY($result); // Prepare data for the row template - $content = array( - 'menu' => $menu, + $data = array( + 'menu' => $data['title'], 'cnt' => $cnt, 'sel' => $sel, - 'sw' => $SW ); - $OUT .= LOAD_TEMPLATE("admin_amenu_delete_row", true, $content); - } - else - { + $OUT .= loadTemplate('admin_del_admin_menu_row', true, $data); + } else { // Entry not found? - $content = array( - 'sw' => $SW, + $data = array( 'sel' => $sel ); - $OUT .= LOAD_TEMPLATE("admin_menu_404_row", true, $content); + $OUT .= loadTemplate('admin_menu_404_row', true, $data); } - $SW = 3 - $SW; - } - } - define('__MENU_ROWS', $OUT); - define('__CNT_VALUE', $cnt); + SQL_FREERESULT($result); + } // END - if + } // END - switch + $content['rows'] = $OUT; + $content['cnt'] = $cnt; // Load template - LOAD_TEMPLATE("admin_amenu_delete"); -} - elseif ((isset($_POST['ok'])) && (!IS_DEMO())) -{ + loadTemplate('admin_del_admin_menu', false, $content); +} elseif ((isFormSent()) && (!isDemoModeActive())) { // An action is done... - switch ($_POST['ok']) - { - case "edit": // Edit menu - foreach ($_POST['sel'] as $sel => $menu) - { - // Secure ID - $sel = bigintval($sel); + switch (postRequestParameter('ok')) { + case 'edit': // Edit menu + foreach (postRequestParameter('sel') as $sel => $menu) { + // Secure id + $sel = bigintval($sel); - // Update entry - $result = 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, - $_POST['sel_action'][$sel], - $_POST['sel_what'][$sel], - addslashes($_POST['sel_desc'][$sel]), - $sel, -), __FILE__, __LINE__); - } - CACHE_PURGE_ADMIN_MENU(0, $_POST['sel_action'][$sel], $_POST['sel_what'][$sel]); - LOAD_TEMPLATE("admin_data_saved"); - break; + // 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", + array( + $menu, + postRequestParameter('sel_action', $sel), + postRequestParameter('sel_what', $sel), + postRequestParameter('sel_desc', $sel), + $sel, + ), __FILE__, __LINE__); + } - case "del": // Delete menu - foreach ($_POST['sel'] as $sel => $menu) - { - $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_admin_menu WHERE ".$AND." AND id=%s LIMIT 1", - array(bigintval($sel)), __FILE__, __LINE__); - CACHE_PURGE_ADMIN_MENU(0, "", "", $AND); - } - LOAD_TEMPLATE("admin_data_saved"); - break; + // Load template + loadTemplate('admin_settings_saved', false, '{--SETTINGS_SAVED--}'); + break; + + case 'del': // 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 - default: // Unexpected action - define('__OK_VALUE', $_POST['ok']); - LOAD_TEMPLATE("admin_menu_unknown_okay"); - break; + // Load template + loadTemplate('admin_settings_saved', false, '{--SETTINGS_SAVED--}'); + break; + + default: // Unexpected action + logDebugMessage(__FILE__, __LINE__, sprintf("Unsupported action %s detected.", postRequestParameter('ok'))); + loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_UNKNOWN_OKAY', postRequestParameter('ok'))); + break; } -} - else -{ - if ((!empty($_GET['act'])) && (!empty($_GET['tid'])) && (!empty($_GET['fid']))) - { - // Get IDs - if (!empty($_GET['w'])) - { +} else { + if ((isGetRequestParameterSet('act')) && (isGetRequestParameterSet('tid')) && (isGetRequestParameterSet('fid'))) { + // Get ids + if (isGetRequestParameterSet('w')) { // Sub menus selected - $result = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_admin_menu WHERE action='%s' AND sort='%s' LIMIT 1", - array($_GET['act'], bigintval($_GET['tid'])), __FILE__, __LINE__); + $result = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE ".$AND." AND `what` != '%s' AND `sort`=%s LIMIT 1", + array( + getRequestParameter('w'), + bigintval(getRequestParameter('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($_GET['act'], bigintval($_GET['fid'])), __FILE__, __LINE__); + $result = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE ".$AND." AND `what`='%s' AND `sort`=%s LIMIT 1", + array( + getRequestParameter('w'), + bigintval(getRequestParameter('fid')) + ), __FILE__, __LINE__); list($fid) = SQL_FETCHROW($result); SQL_FREERESULT($result); - } - else - { + } 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($_GET['tid'])), __FILE__, __LINE__); + $result = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `action` != %s AND ".$AND." AND `sort`=%s LIMIT 1", + array( + getRequestParameter('act'), + bigintval(getRequestParameter('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($_GET['fid'])), __FILE__, __LINE__); + $result = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `action`=%s AND ".$AND." AND `sort`=%s LIMIT 1", + array( + getRequestParameter('act'), + bigintval(getRequestParameter('fid')) + ), __FILE__, __LINE__); list($fid) = SQL_FETCHROW($result); SQL_FREERESULT($result); } - if ((!empty($tid)) && (!empty($fid))) - { + // Do we have entries found? + if ((!empty($tid)) && (!empty($fid))) { // Sort menu - $result_sort = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_admin_menu SET sort='%s' WHERE ".$AND." AND id=%s LIMIT 1", - array(bigintval($_GET['tid']), bigintval($fid)), __FILE__, __LINE__); - $result_sort = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_admin_menu SET sort='%s' WHERE ".$AND." AND id=%s LIMIT 1", - array(bigintval($_GET['fid']), bigintval($tid)), __FILE__, __LINE__); - CACHE_PURGE_ADMIN_MENU(0, "", "", $AND); - } - } + SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_admin_menu` SET `sort`=%s WHERE ".$AND." AND `id`=%s LIMIT 1", + array( + bigintval(getRequestParameter('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(getRequestParameter('fid')), + bigintval($tid) + ), __FILE__, __LINE__); + } // END - if + } // END - if - // 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__); - } - $max = SQL_NUMROWS($result); - if ($max > 0) - { - define('__SUB_VALUE', $SUB); - $SW = 2; $cnt = 0; $OUT = ""; - while (list($id, $act, $wht, $title, $sort) = SQL_FETCHROW($result)) - { + // Run SQL + $result = SQL_QUERY("SELECT id, action, what, title, sort FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE ".$AND." ORDER BY `sort` ASC", __FILE__, __LINE__); + + // Do we have entries? + if (SQL_NUMROWS($result) > 0) { + // Remember sub value + $content['sub'] = $SUB; + + // Init variables + $OUT = ''; $cnt = '0'; + + // Process all entries + while ($data = SQL_FETCHARRAY($result)) { + // Count this entry $cnt++; - if (($sort == 0) || (($sort == 1) && (!empty($SUB)))) - { + + // Init navigation variable + $data['navi'] = ''; + if (($data['sort'] == '0') || (($data['sort'] == 1) && (!empty($SUB)))) { // Is highest position - $NAVI = "".LOWER.""; - } - elseif ($cnt == $max) - { + $data['navi'] = '{--LOWER--}'; + } elseif ($cnt == SQL_NUMROWS($result)) { // Is lowest position - $NAVI = "".HIGHER.""; - } - elseif ($sort > 0) - { + $data['navi'] = '{--HIGHER--}'; + } elseif ($data['sort'] > 0) { // Anything else between highest and lowest - $NAVI = "".HIGHER."/".LOWER.""; + $data['navi'] = '{--HIGHER--}/{--LOWER--}'; } - if (empty($act)) $act = " "; - if (empty($wht)) $wht = " "; - if (empty($title)) $title = " "; + // Add more data to $data + $data['mode'] = 'admin'; - $content = array( - 'sw' => $SW, - 'id' => $id, - 'action' => $act, - 'what' => $wht, - 'title' => $title, - 'navi' => $NAVI, - 'mode' => "admin", - ); - $OUT .= LOAD_TEMPLATE("admin_menu_overview_row", true, $content); - $SW = 3 - $SW; - } + // Load row template and switch colors + $OUT .= loadTemplate('admin_menu_overview_row', true, $data); + } // END - switch + + // Remember all rows + $content['rows'] = $OUT; // Free memory SQL_FREERESULT($result); - define('__MENU_ROWS', $OUT); // Load template - LOAD_TEMPLATE("admin_amenu_edit"); - } - else - { + loadTemplate('form_submit_admin_menu', false, $content); + } else { // Menu entries are missing... (???) - LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_NO_MENUS_FOUND); + loadTemplate('admin_settings_saved', false, '{--ADMIN_NO_MENUS_FOUND--}'); } }