set_filenames(array( "body" => "admin/admin_forum_manage.tpl") ); $template->assign_vars(array("S_MANAGE_ACTION" => append_sid("admin_forums.$phpEx"), "L_FORUM" => $lang['Forum'], "L_MODERATOR" => $lang['Moderator'], "L_ORDER" => $lang['Order'], "POST_FORUM_URL" => POST_FORUM_URL, "L_REMOVE" => $lang['Remove'], "L_EDIT" => $lang['Edit'], "L_LOCK" => $lang['Lock'], "L_UPDATE_ORDER" => $lang['Update_order'], "L_ACTION" => $lang['Action'])); $sql = "SELECT c.cat_id, c.cat_title, c.cat_order FROM " . CATEGORIES_TABLE . " c, " . FORUMS_TABLE . " f WHERE f.cat_id = c.cat_id GROUP BY c.cat_id, c.cat_title, c.cat_order ORDER BY c.cat_order"; if(!$q_categories = $db->sql_query($sql)) { message_die(GENERAL_ERROR, "Could not query categories list", "", __LINE__, __FILE__, $sql); } if($total_categories = $db->sql_numrows($q_categories)) { $category_rows = $db->sql_fetchrowset($q_categories); $sql = "SELECT f.forum_id, f.forum_name, f.forum_desc, f.cat_id, f.forum_order FROM " . FORUMS_TABLE . " f ORDER BY f.cat_id, f.forum_order"; if(!$q_forums = $db->sql_query($sql)) { message_die(GENERAL_ERROR, "Could not query forums information", "", __LINE__, __FILE__, $sql); } if( !$total_forums = $db->sql_numrows($q_forums) ) { message_die(GENERAL_MESSAGE, $lang['No_forums']); } $forum_rows = $db->sql_fetchrowset($q_forums); // // Obtain list of moderators of each forum // $sql = "SELECT aa.forum_id, g.group_name, g.group_id, g.group_single_user, u.user_id, u.username FROM " . AUTH_ACCESS_TABLE . " aa, " . USER_GROUP_TABLE . " ug, " . GROUPS_TABLE . " g, " . USERS_TABLE . " u WHERE aa.auth_mod = " . TRUE . " AND ug.group_id = aa.group_id AND g.group_id = aa.group_id AND u.user_id = ug.user_id ORDER BY aa.forum_id, g.group_id, u.user_id"; if(!$q_forum_mods = $db->sql_query($sql)) { message_die(GENERAL_ERROR, "Could not query forum moderator information", "", __LINE__, __FILE__, $sql); } $forum_mods_list = $db->sql_fetchrowset($q_forum_mods); for($i = 0; $i < count($forum_mods_list); $i++) { if($forum_mods_list[$i]['group_single_user'] || !$forum_mods_list[$i]['group_id']) { $forum_mods_single_user[$forum_mods_list[$i]['forum_id']][] = 1; $forum_mods_name[$forum_mods_list[$i]['forum_id']][] = $forum_mods_list[$i]['username']; $forum_mods_id[$forum_mods_list[$i]['forum_id']][] = $forum_mods_list[$i]['user_id']; } else { $forum_mods_single_user[$forum_mods_list[$i]['forum_id']][] = 0; $forum_mods_name[$forum_mods_list[$i]['forum_id']][] = $forum_mods_list[$i]['group_name']; $forum_mods_id[$forum_mods_list[$i]['forum_id']][] = $forum_mods_list[$i]['group_id']; } } for($i = 0; $i < $total_categories; $i++) { $cat_id = $category_rows[$i]['cat_id']; $count = 0; for($j = 0; $j < $total_forums; $j++) { $forum_id = $forum_rows[$j]['forum_id']; if($forum_rows[$j]['cat_id'] == $cat_id ) { if(!$gen_cat[$cat_id]) { $template->assign_block_vars("catrow", array( "CAT_DESC" => stripslashes($category_rows[$i]['cat_title'])) ); $gen_cat[$cat_id] = 1; } $mod_count = 0; $moderators_links = ""; for($mods = 0; $mods < count($forum_mods_name[$forum_id]); $mods++) { if( !strstr($moderators_links, $forum_mods_name[$forum_id][$mods]) ) { if($mods > 0) { $moderators_links .= ", "; } if( !($mod_count % 2) && $mod_count != 0 ) { $moderators_links .= "
"; } if( $forum_mods_single_user[$forum_id][$mods]) { $moderators_links .= "" . $forum_mods_name[$forum_id][$mods] . ""; } else { $moderators_links .= "" . $forum_mods_name[$forum_id][$mods] . ""; } $mod_count++; } } if($moderators_links == "") { $moderators_links = " "; } $template->assign_block_vars("catrow.forumrow", array( "FORUM_NAME" => stripslashes($forum_rows[$j]['forum_name']), "FORUM_DESC" => stripslashes($forum_rows[$j]['forum_desc']), "MODERATORS" => $moderators_links, "FORUM_ID" => $forum_id, "FORUM_ORDER" => $forum_rows[$j]['forum_order'], "U_VIEWFORUM" => append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id")) ); $count++; } } } // for ... categories } $template->pparse("body"); break; } include('page_footer_admin.'.$phpEx); ?>