$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) { // Entry found so we load the stuff... $data = SQL_FETCHARRAY($result); // Prepare data for the row template $data = array( 'action' => adminAddMenuSelectionBox('admin', 'action', 'sel_action[' . $sel . ']', $data['action']), 'what' => adminAddMenuSelectionBox('admin', 'what' , 'sel_what[' . $sel . ']', $data['what']), 'sel' => $sel, 'menu' => $data['title'], 'descr' => $data['descr'], 'cnt' => $cnt, ); // Load row template $OUT .= loadTemplate('admin_edit_admin_menu_row', true, $data); } else { // Entry not found? $data = array( 'sel' => $sel ); // Load row template $OUT .= loadTemplate('admin_menu_404_row', true, $data); } // Free result and switch color SQL_FREERESULT($result); } // END - if } // END - foreach $content['rows'] = $OUT; $content['cnt'] = $cnt; // Load template loadTemplate('admin_edit_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 $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) { // Entry found so we load the stuff... $data = SQL_FETCHARRAY($result); // Prepare data for the row template $data = array( 'menu' => $data['title'], 'cnt' => $cnt, 'sel' => $sel, ); $OUT .= loadTemplate('admin_del_admin_menu_row', true, $data); } else { // Entry not found? $data = array( 'sel' => $sel ); $OUT .= loadTemplate('admin_menu_404_row', true, $data); } SQL_FREERESULT($result); } // END - if } // END - switch $content['rows'] = $OUT; $content['cnt'] = $cnt; // Load template loadTemplate('admin_del_admin_menu', false, $content); } elseif ((isFormSent()) && (!isDemoModeActive())) { // An action is done... switch (postRequestParameter('ok')) { case 'edit': // Edit menu 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", array( $menu, postRequestParameter('sel_action', $sel), postRequestParameter('sel_what', $sel), postRequestParameter('sel_desc', $sel), $sel, ), __FILE__, __LINE__); } // 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 // 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 ((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 ".$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_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 { // Main menu selected $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 `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); } // Do we have entries found? 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(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 // 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++; // Init navigation variable $data['navi'] = ''; if (($data['sort'] == '0') || (($data['sort'] == 1) && (!empty($SUB)))) { // Is highest position $data['navi'] = '{--LOWER--}'; } elseif ($cnt == SQL_NUMROWS($result)) { // Is lowest position $data['navi'] = '{--HIGHER--}'; } elseif ($data['sort'] > 0) { // Anything else between highest and lowest $data['navi'] = '{--HIGHER--}/{--LOWER--}'; } // Add more data to $data $data['mode'] = 'admin'; // 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); // Load template loadTemplate('admin_edit_admin_menu', false, $content); } else { // Menu entries are missing... (???) loadTemplate('admin_settings_saved', false, '{--ADMIN_NO_MENUS_FOUND--}'); } } // ?>