$sort_value = $dft_sort; if (isset($HTTP_GET_VARS['sort']) || isset($HTTP_POST_VARS['sort'])) { $sort_value = isset($HTTP_GET_VARS['sort']) ? intval($HTTP_GET_VARS['sort']) : intval($HTTP_POST_VARS['sort']); } $sort_list = '<select name="sort">' . get_forum_display_sort_option($sort_value, 'list', 'sort') . '</select>'; // Order def $order_value = $dft_order; if (isset($HTTP_GET_VARS['order']) || isset($HTTP_POST_VARS['order'])) { $order_value = isset($HTTP_GET_VARS['order']) ? intval($HTTP_GET_VARS['order']) : intval($HTTP_POST_VARS['order']); } $order_list = '<select name="order">' . get_forum_display_sort_option($order_value, 'list', 'order') . '</select>'; // display $s_display_order = ' ' . $lang['Sort_by'] . ': ' . $sort_list . $order_list . ' '; // selected method $sort_method = get_forum_display_sort_option($sort_value, 'field', 'sort'); $order_method = get_forum_display_sort_option($order_value, 'field', 'order'); //-- fin mod : topic display order //-- mod : topic display order // here we added // , $sort_method $order_method //-- modify $sql = "SELECT t.*, u.username, u.user_id, u2.username as user2, u2.user_id as id2, p.post_username, p2.post_username AS post_username2, p2.post_time\r\n\tFROM " . TOPICS_TABLE . " t, " . USERS_TABLE . " u, " . POSTS_TABLE . " p, " . POSTS_TABLE . " p2, " . USERS_TABLE . " u2\r\n\tWHERE t.forum_id = {$forum_id}\r\n\t\tAND t.topic_poster = u.user_id\r\n\t\tAND p.post_id = t.topic_first_post_id\r\n\t\tAND p2.post_id = t.topic_last_post_id\r\n\t\tAND u2.user_id = p2.poster_id\r\n\t\t{$limit_topics_time}\r\n\tORDER BY t.topic_type DESC, {$sort_method} {$order_method}, t.topic_last_post_id DESC\r\n\tLIMIT {$start}, " . $ft_cfg['topics_per_page']; if (!($result = DB()->sql_query($sql))) { message_die(GENERAL_ERROR, 'Could not obtain topic information', '', __LINE__, __FILE__, $sql); } $total_topics = 0; while ($row = DB()->sql_fetchrow($result)) { $topic_rowset[] = $row; $total_topics++; } DB()->sql_freeresult($result);
} } $catlist = get_list('category', $cat_id, TRUE); $forumlocked = $forumunlocked = ''; $forumstatus == FORUM_LOCKED ? $forumlocked = "selected=\"selected\"" : ($forumunlocked = "selected=\"selected\""); // These two options ($lang['Status_unlocked'] and $lang['Status_locked']) seem to be missing from // the language files. $lang['Status_unlocked'] = isset($lang['Status_unlocked']) ? $lang['Status_unlocked'] : 'Unlocked'; $lang['Status_locked'] = isset($lang['Status_locked']) ? $lang['Status_locked'] : 'Locked'; $statuslist = "<option value=\"" . FORUM_UNLOCKED . "\" {$forumunlocked}>" . $lang['Status_unlocked'] . "</option>\n"; $statuslist .= "<option value=\"" . FORUM_LOCKED . "\" {$forumlocked}>" . $lang['Status_locked'] . "</option>\n"; $template->set_filenames(array("body" => "admin/forum_edit_body.tpl")); //-- mod : topic display order --------------------------------------------------------------------- //-- add $forum_display_sort_list = get_forum_display_sort_option($forum_display_sort, 'list', 'sort'); $forum_display_order_list = get_forum_display_sort_option($forum_display_order, 'list', 'order'); //-- fin mod : topic display order ----------------------------------------------------------------- $s_hidden_fields = '<input type="hidden" name="mode" value="' . $newmode . '" /><input type="hidden" name="' . POST_FORUM_URL . '" value="' . $forum_id . '" />'; $s_parent = '<option value="-1"> ' . $lang['SF_No_parent'] . "</option>\n"; $sel_forum = $forum_parent && !isset($_REQUEST['forum_parent']) ? $forum_id : $forum_parent; $s_parent .= sf_get_list('forum', $forum_id, $sel_forum); $template->assign_vars(array('L_FORUM_DISPLAY_SORT' => $lang['Sort_by'], 'S_FORUM_DISPLAY_SORT_LIST' => $forum_display_sort_list, 'S_FORUM_DISPLAY_ORDER_LIST' => $forum_display_order_list, 'S_FORUM_ACTION' => append_sid("admin_forums.php"), 'S_HIDDEN_FIELDS' => $s_hidden_fields, 'S_SUBMIT_VALUE' => $buttonvalue, 'S_CAT_LIST' => $catlist, 'S_STATUS_LIST' => $statuslist, 'S_PRUNE_ENABLED' => $prune_enabled, 'S_MOVE_ENABLED' => $move_enabled, 'SHOW_ON_INDEX' => $show_on_index, 'L_SHOW_ON_INDEX' => $lang['SF_Show_on_index'], 'L_PARENT_FORUM' => $lang['SF_Parent_forum'], 'S_PARENT_FORUM' => $s_parent, 'CAT_LIST_CLASS' => $forum_parent ? 'hiddenRow' : '', 'SHOW_ON_INDEX_CLASS' => !$forum_parent ? 'hiddenRow' : '', 'L_FORUM_TITLE' => $l_title, 'L_FORUM_EXPLAIN' => $lang['Forum_edit_delete_explain'], 'L_FORUM_SETTINGS' => $lang['Forum_settings'], 'L_FORUM_NAME' => $lang['Forum_name'], 'L_CATEGORY' => $lang['Category'], 'L_FORUM_DESCRIPTION' => $lang['Forum_desc'], 'L_FORUM_STATUS' => $lang['Forum_status'], 'L_AUTO_PRUNE' => $lang['Forum_pruning'], 'L_ENABLED' => $lang['Enabled'], 'L_PRUNE_DAYS' => $lang['prune_days'], 'L_PRUNE_FREQ' => $lang['prune_freq'], 'L_DAYS' => $lang['Days'], 'PRUNE_DAYS' => isset($pr_row['prune_days']) ? $pr_row['prune_days'] : 7, 'PRUNE_FREQ' => isset($pr_row['prune_freq']) ? $pr_row['prune_freq'] : 1, 'WAITS_DAYS' => isset($move_row['waits_days']) ? $move_row['waits_days'] : 1, 'CHECK_FREQ' => isset($move_row['check_freq']) ? $move_row['check_freq'] : 1, 'MOVE_FID' => isset($move_row['move_fid']) ? $move_row['move_fid'] : 'id?', 'RECYCLE_WAITS_DAYS' => isset($move_row['recycle_waits_days']) ? $move_row['recycle_waits_days'] : 1, 'RECYCLE_CHECK_FREQ' => isset($move_row['recycle_check_freq']) ? $move_row['recycle_check_freq'] : 1, 'RECYCLE_MOVE_FID' => isset($move_row['recycle_move_fid']) ? $move_row['recycle_move_fid'] : 'id?', 'FORUM_NAME' => $forumname, 'DESCRIPTION' => $forumdesc)); $template->pparse("body"); break; // Create a forum in the DB // Create a forum in the DB case 'createforum': $cat_id = intval($HTTP_POST_VARS[POST_CAT_URL]); $forum_name = str_replace("\\'", "''", trim($HTTP_POST_VARS['forumname'])); $forum_desc = str_replace("\\'", "''", trim($HTTP_POST_VARS['forumdesc'])); $forum_status = intval($HTTP_POST_VARS['forumstatus']);
$offset = 0; $color = !$color_line; } $color = !$color; $template->assign_block_vars('forum_link.auth.cell', array('COLOR' => $color ? 'row1' : 'row2', 'L_AUTH' => isset($lang[$l_key]) ? $lang[$l_key] : $l_key, 'AUTH' => $key, 'S_AUTH_OPT' => $s_auth_opt)); } } // finish the line if ($item['type'] == POST_FORUM_URL && $offset < 3) { $template->assign_block_vars('forum_link.auth.empty', array('SPAN' => 3 - $offset)); } } // topic display order if (defined('TOPIC_DISPLAY_ORDER') && $item['type'] != POST_CAT_URL) { $forum_display_sort_list = get_forum_display_sort_option($item['forum_display_sort'], 'list', 'sort'); $forum_display_order_list = get_forum_display_sort_option($item['forum_display_order'], 'list', 'order'); $template->assign_vars(array('L_FORUM_DISPLAY_SORT' => $lang['Sort_by'], 'S_FORUM_DISPLAY_SORT_LIST' => $forum_display_sort_list, 'S_FORUM_DISPLAY_ORDER_LIST' => $forum_display_order_list)); $template->assign_block_vars('forum.topic_display_order', array()); } // footer $s_hidden_fields = ''; $s_hidden_fields .= '<input type="hidden" name="mode" value="' . $mode . '" />'; $s_hidden_fields .= '<input type="hidden" name="selected_id" value="' . $selected_id . '" />'; $s_hidden_fields .= '<input type="hidden" name="fid" value="' . $fid . '" />'; $template->assign_vars(array('L_INDEX' => sprintf($lang['Forum_Index'], $board_config['sitename']), 'NAV_CAT_DESC' => admin_get_nav_cat_desc($selected_id), 'S_HIDDEN_FIELDS' => $s_hidden_fields, 'U_INDEX' => append_sid("./admin_forums.{$phpEx}"), 'S_ACTION' => append_sid("./admin_forums.{$phpEx}"))); } } } // display the main list if ($mode == '') { // template