isError()) { exit_no_group(); } $p =& $g->getPermission( session_get_user() ); if (!$p || !is_object($p) || $p->isError() || !$p->isForumAdmin()) { exit_permission_denied(); } if ($post_changes) { /* Update the DB to reflect the changes */ if ($delete) { /* Deleting messages or threads */ $res=db_query("SELECT group_forum_id FROM forum WHERE msg_id='$msg_id'"); if (!$res || db_numrows($res) < 1) { exit_error($Language->getText('general','error'),$Language->getText('forum_errors','error_determining_forum_id')); } $f=new Forum($g,db_result($res,0,'group_forum_id')); if (!$f || !is_object($f)) { exit_error($Language->getText('general','error'),$Language->getText('forum_errors','error_getting_forum')); } elseif ($f->isError()) { exit_error($Language->getText('general','error'),$f->getErrorMessage()); } $fm=new ForumMessage($f,$msg_id); if (!$fm || !is_object($fm)) { exit_error($Language->getText('general','error'),$Language->getText('forum_errors','error_getting_forum')); } elseif ($fm->isError()) { exit_error($Language->getText('general','error'),$fm->getErrorMessage()); } $count=$fm->delete(); if (!$count || $fm->isError()) { exit_error($Language->getText('general','error'),$fm->getErrorMessage()); } else { $feedback .= $Language->getText('forum_admin_delete_messages','messages_deleted',$count); } } else if ($add_forum) { /* Adding forums to this group */ $f=new Forum($g); if (!$f || !is_object($f)) { exit_error($Language->getText('general','error'),$Language->getText('forum_errors','error_getting_forum')); } elseif ($f->isError()) { exit_error($Language->getText('general','error'),$f->getErrorMessage()); } if (!$f->create($forum_name,$description,$is_public,$send_all_posts_to,1,$allow_anonymous)) { exit_error($Language->getText('general','error'),$f->getErrorMessage()); } else { $feedback .= $Language->getText('forum_admin_addforum','forum_created'); } } else if ($change_status) { /* Change a forum to public/private */ $f=new Forum($g,$group_forum_id); if (!$f || !is_object($f)) { exit_error($Language->getText('general','error'),$Language->getText('forum_errors','error_getting_forum')); } elseif ($f->isError()) { exit_error($Language->getText('general','error'),$f->getErrorMessage()); } if (!$f->update($forum_name,$description,$is_public,$send_all_posts_to,$allow_anonymous)) { exit_error($Language->getText('general','error'),$f->getErrorMessage()); } else { $feedback .= $Language->getText('forum_admin_changestatus','update_successful'); } } } if ($delete) { /* Show page for deleting messages */ forum_header(array('title'=>$Language->getText('forum_admin_delete_message','title'),'pagename'=>'forum_admin_delete','sectionvals'=>group_getname($group_id))); echo ' '.$Language->getText('forum_admin_delete_message','warning').'
'; forum_footer(array()); } else if ($add_forum) { /* Show the form for adding forums */ forum_header(array('title'=>$Language->getText('forum_admin_addforum','title'),'pagename'=>'forum_admin_addforum','sectionvals'=>group_getname($group_id))); $sql="SELECT forum_name FROM forum_group_list WHERE group_id='$group_id'"; $result=db_query($sql); ShowResultSet($result,$Language->getText('forum_admin_addforum','existing_forums')); echo ' '; forum_footer(array()); } else if ($change_status) { /* Change a forum to public/private */ $ff = new ForumFactory($g); if (!$ff || !is_object($ff) || $ff->isError()) { exit_error($Language->getText('general','error'),$ff->getErrorMessage()); } $farr =& $ff->getForums(); $rows=count($farr); if ($ff->isError() || count($farr) < 1) { exit_error($Language->getText('general','error'),$Language->getText('forum_admin_changestatus','no_forums_found').$ff->getErrorMessage()); } else { forum_header(array('title'=>$Language->getText('forum_admin_changestatus','change_status'),'pagename'=>'forum_admin_changestatus','sectionvals'=>group_getname($group_id))); echo ''.$Language->getText('forum_admin_changestatus','intro').'.
'; $title_arr=array(); $title_arr[]=$Language->getText('forum_admin_changestatus','forum'); $title_arr[]=$Language->getText('forum_admin_changestatus','status'); $title_arr[]=$Language->getText('forum_admin_changestatus','update'); echo $GLOBALS['HTML']->listTableTop ($title_arr); for ($i=0; $i<$rows; $i++) { echo '
'.$Language->getText('forum_admin','add_forum').'
'.$Language->getText('forum_admin','delete_message').'
'.$Language->getText('forum_admin','update_forum').'