From: Shaun M. <sin...@us...> - 2007-01-03 19:37:44
|
Update of /cvsroot/phpwsbb/phpwsbb/class In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7809 Modified Files: Manager.php Log Message: Thread analysis menu added Index: Manager.php =================================================================== RCS file: /cvsroot/phpwsbb/phpwsbb/class/Manager.php,v retrieving revision 1.74 retrieving revision 1.75 diff -C2 -d -r1.74 -r1.75 *** Manager.php 16 Apr 2006 22:28:33 -0000 1.74 --- Manager.php 3 Jan 2007 19:37:38 -0000 1.75 *************** *** 403,406 **** --- 403,467 ---- }// END FUNC _listNewThreads + // List threads started by a particular user + function _listUserThreads($user = NULL) { + if(!$_SESSION['OBJ_user']->username) { + $_SESSION['OBJ_user']->jumpURL = './index.php?module=phpwsbb&PHPWSBB_MAN_OP=userthreads'; + $_SESSION['OBJ_user']->error[] = $_SESSION['translate']->it('The "User Threads" feature is only available to registered users of this site. You must log-in to view this page.'); + $_SESSION['OBJ_user']->routeLogin(); + exit(); + } + + if (!$user) $user = $_SESSION['OBJ_user']->username; + $this->setClass('PHPWSBB_Thread'); + $this->setTable('mod_phpwsbb_threads'); + $this->setOrder('sticky DESC, lastpost DESC'); + if(!$_SESSION['OBJ_user']->allow_access('phpwsbb', 'hide_threads')) + $this->setSort('owner = "'.$user.'" AND hidden=0'); + else + $this->setSort('owner = "'.$user.'"'); + + return PHPWS_Text::profanityFilter($this->getList('threads', NULL, FALSE)); + }// END FUNC _listUserThreads + + // List threads with zero replies + function _listZero() { + if(!$_SESSION['OBJ_user']->username) { + $_SESSION['OBJ_user']->jumpURL = './index.php?module=phpwsbb&PHPWSBB_MAN_OP=userthreads'; + $_SESSION['OBJ_user']->error[] = $_SESSION['translate']->it('The "No replies" feature is only available to registered users of this site. You must log-in to view this page.'); + $_SESSION['OBJ_user']->routeLogin(); + exit(); + } + + $this->setClass('PHPWSBB_Thread'); + $this->setTable('mod_phpwsbb_threads'); + $this->setOrder('sticky DESC, lastpost DESC'); + if(!$_SESSION['OBJ_user']->allow_access('phpwsbb', 'hide_threads')) + $this->setSort('replies=0 AND hidden=0'); + else + $this->setSort('replies=0'); + + return PHPWS_Text::profanityFilter($this->getList('threads', NULL, FALSE)); + }// END FUNC _listZero + + // List Locked threads + function _listLocked() { + if(!$_SESSION['OBJ_user']->username) { + $_SESSION['OBJ_user']->jumpURL = './index.php?module=phpwsbb&PHPWSBB_MAN_OP=userthreads'; + $_SESSION['OBJ_user']->error[] = $_SESSION['translate']->it('The "Locked Threads" feature is only available to registered users of this site. You must log-in to view this page.'); + $_SESSION['OBJ_user']->routeLogin(); + exit(); + } + + $this->setClass('PHPWSBB_Thread'); + $this->setTable('mod_phpwsbb_threads'); + $this->setOrder('sticky DESC, lastpost DESC'); + if(!$_SESSION['OBJ_user']->allow_access('phpwsbb', 'hide_threads')) + $this->setSort('locked=1 AND hidden=0'); + else + $this->setSort('locked=1'); + + return PHPWS_Text::profanityFilter($this->getList('threads', NULL, FALSE)); + }// END FUNC _listLocked + // Displays a submenu for viewing new posts since last visit, today, this week... function _newMenu() { *************** *** 416,419 **** --- 477,493 ---- }// END FUNC _newMenu + // Displays a submenu for viewing thread analysis... + function _analMenu() { + $tags = array(); + + $tags['LABEL'] = $_SESSION['translate']->it('Thread Analysis') . ':'; + $tags['LOCKED'] = PHPWSBB_Thread::createLink($_SESSION['translate']->it('Locked Threads'), array('PHPWSBB_MAN_OP'=>'lockedthreads'), 'locked.png', 16, 16); + $tags['ZERO'] = PHPWSBB_Thread::createLink($_SESSION['translate']->it('Empty Threads'), array('PHPWSBB_MAN_OP'=>'zerothreads'), 'no_new_messages.png', 16, 16); + $tags['USER'] = PHPWSBB_Thread::createLink($_SESSION['translate']->it('My Threads'), array('PHPWSBB_MAN_OP'=>'userthreads','user'=>$_SESSION['OBJ_user']->username), 'new_messages.png', 16, 16); + + return implode($tags, " "); + + }// END FUNC _analMenu + function _categories() { if(!$this->_allow_anon_view && !$_SESSION['OBJ_user']->username) { *************** *** 1463,1466 **** --- 1537,1546 ---- break; + case 'analysis': + PHPWS_Layout::addPageTitle($_SESSION['translate']->it('Thread Analysis')); + $GLOBALS['CNT_phpwsbb']['title'] = $_SESSION['translate']->it('Thread Analysis'); + $GLOBALS['CNT_phpwsbb']['content'] = $this->_menu() . $this->_analmenu(); + break; + case 'recalc_users': $this->_recalc_users(); *************** *** 1489,1492 **** --- 1569,1593 ---- PHPWS_Layout::addPageTitle($_SESSION['translate']->it('This Week\'s Posts')); break; + + case 'userthreads': + if (isset($_REQUEST['user'])) { + $GLOBALS['CNT_phpwsbb']['title'] = $_SESSION['translate']->it('Threads started by [var1]', $_REQUEST['user']); + $GLOBALS['CNT_phpwsbb']['content'] = $this->_menu() . $this->_analMenu() . $this->_listUserThreads($_REQUEST['user']); + } else { + $GLOBALS['CNT_phpwsbb']['title'] = $_SESSION['translate']->it('My Threads'); + $GLOBALS['CNT_phpwsbb']['content'] = $this->_menu() . $this->_analMenu() . $this->_listUserThreads(); + } + break; + + case 'zerothreads': + $GLOBALS['CNT_phpwsbb']['title'] = $_SESSION['translate']->it('Threads with no replies'); + $GLOBALS['CNT_phpwsbb']['content'] = $this->_menu() . $this->_analMenu() . $this->_listZero(); + break; + + case 'lockedthreads': + $GLOBALS['CNT_phpwsbb']['title'] = $_SESSION['translate']->it('Locked Threads'); + $GLOBALS['CNT_phpwsbb']['content'] = $this->_menu() . $this->_analMenu() . $this->_listLocked(); + break; + } |