function forum_admin_list() { global $_TABLES, $LANG_ADMIN, $LANG_GF00, $LANG_GF91, $LANG_GF06, $_CONF, $_FF_CONF; USES_lib_admin(); $retval = ''; $selected = ''; $menu_arr = array(); $admin_list = new Template($_CONF['path'] . 'plugins/forum/templates/admin/'); $admin_list->set_file('admin-list', 'index.thtml'); $admin_list->set_var('block_start', COM_startBlock($LANG_GF91['gfstats'])); $menu_arr = FF_adminNav($LANG_GF06['1']); $admin_list->set_var('admin_menu', ADMIN_createMenu($menu_arr, $LANG_GF00['instructions'], $_CONF['site_url'] . '/forum/images/forum.png')); // CATEGORIES $numcats = DB_query("SELECT id FROM {$_TABLES['ff_categories']}"); $totalcats = DB_numRows($numcats); // FORUMS $numforums = DB_query("SELECT forum_id FROM {$_TABLES['ff_forums']}"); $totalforums = DB_numRows($numforums); // TOPICS $numtopics = DB_query("SELECT id FROM {$_TABLES['ff_topic']} WHERE pid = 0"); $totaltopics = DB_numRows($numtopics); // POSTS $numposts = DB_query("SELECT id FROM {$_TABLES['ff_topic']}"); $totalposts = DB_numRows($numposts); // VIEWS $numviews = DB_query("SELECT SUM(views) AS TOTAL FROM {$_TABLES['ff_topic']}"); $totalviews = DB_fetchArray($numviews); // AVERAGE POSTS if ($totalposts != 0) { $avgcposts = $totalposts / $totalcats; $avgcposts = round($avgcposts); $avgfposts = $totalposts / $totalforums; $avgfposts = round($avgfposts); $avgtposts = $totalposts / $totaltopics; $avgtposts = round($avgtposts); } else { $avgcposts = 0; $avgfposts = 0; $avgtposts = 0; } // AVERAGE VIEWS if ($totalviews['TOTAL'] != 0) { $avgcviews = $totalviews['TOTAL'] / $totalcats; $avgcviews = round($avgcviews); $avgfviews = $totalviews['TOTAL'] / $totalforums; $avgfviews = round($avgfviews); $avgtviews = $totalviews['TOTAL'] / $totaltopics; $avgtviews = round($avgtviews); } else { $avgcviews = 0; $avgfviews = 0; $avgtviews = 0; } $admin_list->set_var(array('statsmsg' => $LANG_GF91['statsmsg'], 'totalcatsmsg' => $LANG_GF91['totalcats'], 'totalcats' => $totalcats, 'totalforumsmsg' => $LANG_GF91['totalforums'], 'totalforums' => $totalforums, 'totaltopicsmsg' => $LANG_GF91['totaltopics'], 'totaltopics' => $totaltopics, 'totalpostsmsg' => $LANG_GF91['totalposts'], 'totalposts' => $totalposts, 'totalviewsmsg' => $LANG_GF91['totalviews'], 'totalviews' => $totalviews['TOTAL'], 'category' => $LANG_GF91['category'], 'forum' => $LANG_GF91['forum'], 'topic' => $LANG_GF91['topic'], 'avgpmsg' => $LANG_GF91['avgpmsg'], 'avgcposts' => $avgcposts, 'avgfposts' => $avgfposts, 'avgtposts' => $avgtposts, 'avgvmsg' => $LANG_GF91['avgvmsg'], 'avgcviews' => $avgcviews, 'avgfviews' => $avgfviews, 'avgtviews' => $avgtviews)); $admin_list->set_var('block_end', COM_endBlock()); $admin_list->parse('output', 'admin-list'); $retval .= $admin_list->finish($admin_list->get_var('output')); return $retval; }
function board_edit_forum($id, $statusText = '') { global $_CONF, $_FF_CONF, $_TABLES, $LANG_GF00, $LANG_GF01, $LANG_GF06, $LANG_GF93, $LANG_ADMIN; $retval = ''; $menu_arr = array(); $filter = sanitizer::getInstance(); $T = new Template($_CONF['path'] . 'plugins/forum/templates/admin/'); $T->set_file('boards_edtforum', 'boards_edtforum.thtml'); $T->set_var('block_start', COM_startBlock($LANG_GF93['gfboard'], '', COM_getBlockTemplate('_admin_block', 'header'))); $menu_arr = FF_adminNav(); $T->set_var('admin_menu', ADMIN_createMenu($menu_arr, $LANG_GF00['instructions'], $_CONF['site_url'] . '/forum/images/forum.png')); if (empty($statusText)) { // first time in - pull data from database... $sql = "SELECT forum_name,forum_cat,forum_dscp,grp_id,use_attachment_grpid,forum_order,is_hidden,is_readonly,no_newposts "; $sql .= "FROM {$_TABLES['ff_forums']} WHERE forum_id=" . (int) $id; $resForum = DB_query($sql); list($forum_name, $forum_category, $forum_dscp, $privgroup, $attachgroup, $forum_order, $is_hidden, $is_readonly, $no_newposts) = DB_fetchArray($resForum); } else { // grab the posted data $forum_name = $_POST['name']; $forum_category = COM_applyFilter($_POST['category'], true); $forum_dscp = $_POST['dscp']; $privgroup = COM_applyFilter($_POST['privgroup'], true); $attachgroup = COM_applyFilter($_POST['attachmentgroup'], true); $forum_order = 0; $is_hidden = isset($_POST['is_hidden']) ? 1 : 0; $is_readonly = isset($_POST['is_readonly']) ? 1 : 0; $no_newposts = isset($_POST['no_newposts']) ? 1 : 0; $forum_name = $filter->editableText($forum_name); $forum_dscp = $filter->editableText($forum_dscp); } $title = sprintf($LANG_GF93['editforumnote'], $forum_name); // build select lists $resGroups = DB_query("SELECT DISTINCT grp_id,grp_name FROM {$_TABLES['groups']} ORDER BY grp_name ASC "); $nrows = DB_numRows($resGroups); $grouplist = ''; $attachgrouplist = ''; while (list($grp, $name) = DB_fetchArray($resGroups)) { if ($grp == $privgroup) { $grouplist .= '<option value="' . $grp . '" selected="selected">' . $name . '</option>'; } else { $grouplist .= '<option value="' . $grp . '">' . ucfirst($name) . '</option>'; } if ($grp == $attachgroup) { $attachgrouplist .= '<option value="' . $grp . '" selected="selected">' . ucfirst($name) . '</option>'; } else { $attachgrouplist .= '<option value="' . $grp . '">' . ucfirst($name) . '</option>'; } } $catSelect = '<select name="category">'; $catResult = DB_query("SELECT * FROM {$_TABLES['ff_categories']} ORDER BY cat_order ASC"); while (($C = DB_fetchArray($catResult)) != FALSE) { $catSelect .= '<option value="' . $C['id'] . '" ' . ($C['id'] == $forum_category ? ' selected="selected"' : '') . '>' . $C['cat_name'] . '</option>'; } $catSelect .= '</select>'; $order_select = '<option value="0">' . 'First Position' . '</option>' . LB; $result = DB_query("SELECT forum_id,forum_name,forum_order FROM {$_TABLES['ff_forums']} WHERE forum_cat=" . (int) $forum_category . " ORDER BY forum_order ASC"); $order = 10; while ($row = DB_fetchArray($result)) { if ($forum_order != $order) { $test_order = $order + 10; $order_select .= '<option value="' . $row['forum_id'] . '"' . ($forum_order == $test_order ? ' selected="selected"' : '') . '>' . $row['forum_name'] . '</option>' . LB; } $order += 10; } $T->set_var(array('order_list' => $order_select, 'phpself' => $_CONF['site_admin_url'] . '/plugins/forum/boards.php', 's_form_action' => $_CONF['site_admin_url'] . '/plugins/forum/boards.php', 'title' => sprintf($LANG_GF93['editforumnote'], $forum_name), 'cat_select' => $catSelect, 'lang_category' => $LANG_GF01['category'], 'id' => $id, 'mode' => 'saveeditforum', 'category_id' => $forum_category, 'forum_name' => $forum_name, 'forum_dscp' => $forum_dscp, 'forum_order' => $forum_order, 'chk_hidden' => $is_hidden ? 'checked="checked"' : '', 'chk_readonly' => $is_readonly ? 'checked="checked"' : '', 'chk_newposts' => $no_newposts ? 'checked="checked"' : '', 'LANG_DESCRIPTION' => $LANG_GF01['DESCRIPTION'], 'LANG_NAME' => $LANG_GF01['NAME'], 'LANG_GROUPACCESS' => $LANG_GF93['groupaccess'], 'LANG_ATTACHACCESS' => $LANG_GF93['attachaccess'], 'LANG_readonly' => $LANG_GF93['readonly'], 'LANG_readonlydscp' => $LANG_GF93['readonlydscp'], 'LANG_hidden' => $LANG_GF93['hidden'], 'LANG_hiddendscp' => $LANG_GF93['hiddendscp'], 'LANG_hideposts' => $LANG_GF93['hideposts'], 'LANG_hidepostsdscp' => $LANG_GF93['hidepostsdscp'], 'grouplist' => $grouplist, 'attachmentgrouplist' => $attachgrouplist, 'LANG_SAVE' => $LANG_GF01['SAVE'], 'LANG_CANCEL' => $LANG_GF01['CANCEL'], 'block_end' => COM_endBlock(COM_getBlockTemplate('_admin_block', 'footer')), 'status_text' => $statusText)); $T->parse('output', 'boards_edtforum'); $retval .= $T->finish($T->get_var('output')); return $retval; }