|
From: <ir...@us...> - 2013-04-17 01:49:24
|
Revision: 11389
http://sourceforge.net/p/xoops/svn/11389
Author: irmtfan
Date: 2013-04-17 01:49:19 +0000 (Wed, 17 Apr 2013)
Log Message:
-----------
1- bug fix: should not ban the user in forum who is moderator of that forum. in newbb/include/form.post.php and newbb/class/moderate.php
2- bug fix: uid=0 for anonymous users in newbb/class/moderate.php
3- bug fix: if forum=0 should return true in any forum in newbb/class/moderate.php
4- bug fix: should not show quick reply for suspend users otherwise they can post in newbb/viewtopic.php
5- add: forum select box for admins to be able to suspend users in any forum or all forums in newbb/moderate.php
Modified Paths:
--------------
XoopsModules/newbb/branches/irmtfan/newbb/changelog-rev10109.txt
XoopsModules/newbb/branches/irmtfan/newbb/class/moderate.php
XoopsModules/newbb/branches/irmtfan/newbb/include/form.post.php
XoopsModules/newbb/branches/irmtfan/newbb/moderate.php
XoopsModules/newbb/branches/irmtfan/newbb/viewtopic.php
Modified: XoopsModules/newbb/branches/irmtfan/newbb/changelog-rev10109.txt
===================================================================
--- XoopsModules/newbb/branches/irmtfan/newbb/changelog-rev10109.txt 2013-04-16 15:22:50 UTC (rev 11388)
+++ XoopsModules/newbb/branches/irmtfan/newbb/changelog-rev10109.txt 2013-04-17 01:49:19 UTC (rev 11389)
@@ -1,3 +1,11 @@
+date 2013-04-17
+===================================
+1- bug fix: should not ban the user in forum who is moderator of that forum. in newbb/include/form.post.php and newbb/class/moderate.php
+2- bug fix: uid=0 for anonymous users in newbb/class/moderate.php
+3- bug fix: if forum=0 should return true in any forum in newbb/class/moderate.php
+4- bug fix: should not show quick reply for suspend users otherwise they can post in newbb/viewtopic.php
+5- add: forum select box for admins to be able to suspend users in any forum or all forums in newbb/moderate.php
+
date 2013-04-15
===================================
1- improve: add anon users to topic poster and last poster in NewbbTopicRenderer class (used in block and list.topic.php)
Modified: XoopsModules/newbb/branches/irmtfan/newbb/class/moderate.php
===================================================================
--- XoopsModules/newbb/branches/irmtfan/newbb/class/moderate.php 2013-04-16 15:22:50 UTC (rev 11388)
+++ XoopsModules/newbb/branches/irmtfan/newbb/class/moderate.php 2013-04-17 01:49:19 UTC (rev 11389)
@@ -73,12 +73,14 @@
* @param string $ip user ip
*/
function verifyUser($uid = -1, $ip = "", $forum = 0) {
+ if(newbb_isAdmin($forum)) return false; // irmtfan - if user is admin do not suspend
if (!empty($GLOBALS["xoopsModuleConfig"]['cache_enabled'])) {
$forums = $this->forumList($uid, $ip);
+ if(in_array(0, $forums)) return true; // irmtfan - if user is suspend in All forums
return in_array($forum, $forums);
}
$uid = ($uid < 0) ? ( is_object($GLOBALS["xoopsUser"]) ? $GLOBALS["xoopsUser"]->getVar("uid") : 0 ) : $uid;
- $uid_criteria = empty($uid) ? "1=1" : "uid=" . intval($uid);
+ $uid_criteria = empty($uid) ? "uid=0" : "uid=" . intval($uid); // irmtfan - uid=0 for anons
$ip = empty($ip) ? newbb_getIP(true) : $ip;
if (!empty($ip)) {
$ip_segs = explode(".", $ip);
@@ -120,7 +122,7 @@
return $forums[$uid][$ip];
}
}
- $uid_criteria = empty($uid) ? "1=1" : "uid=" . intval($uid);
+ $uid_criteria = empty($uid) ? "uid=0" : "uid=" . intval($uid); // irmtfan - uid=0 for anons
if (!empty($ip)) {
$ip_segs = explode(".", $ip);
for($i = 1; $i <= 4; $i++) {
Modified: XoopsModules/newbb/branches/irmtfan/newbb/include/form.post.php
===================================================================
--- XoopsModules/newbb/branches/irmtfan/newbb/include/form.post.php 2013-04-16 15:22:50 UTC (rev 11388)
+++ XoopsModules/newbb/branches/irmtfan/newbb/include/form.post.php 2013-04-17 01:49:19 UTC (rev 11389)
@@ -30,11 +30,11 @@
//check banning
$moderated_id = ( is_object($xoopsUser) && $xoopsUser->uid() > 0 ) ? $xoopsUser->uid() : 0;
-$moderated_isadmin = ( is_object($xoopsUser) && $xoopsUser->isAdmin() ) ? true : false;
+// $moderated_isadmin = ( is_object($xoopsUser) && $xoopsUser->isAdmin() ) ? true : false; // irmtfan commented
$moderated_ip = $_SERVER['REMOTE_ADDR'];
$moderated_forum = $forum_obj->getVar('forum_id');
$moderate_handler =& xoops_getmodulehandler('moderate', 'newbb');
-if ($moderate_handler->verifyUser($moderated_id, $moderated_ip,$moderated_forum) && !$moderated_isadmin) {
+if ($moderate_handler->verifyUser($moderated_id, $moderated_ip,$moderated_forum)) { // irmtfan removed
$criteria = new CriteriaCompo();
$criteria->add( new criteria('uid',$moderated_id,'=') );
$criteria->setSort('mod_end');
Modified: XoopsModules/newbb/branches/irmtfan/newbb/moderate.php
===================================================================
--- XoopsModules/newbb/branches/irmtfan/newbb/moderate.php 2013-04-16 15:22:50 UTC (rev 11388)
+++ XoopsModules/newbb/branches/irmtfan/newbb/moderate.php 2013-04-17 01:49:19 UTC (rev 11389)
@@ -219,7 +219,24 @@
$forum_form->addElement(new XoopsFormText(_MD_SUSPEND_IP, 'ip', 20, 25));
$forum_form->addElement(new XoopsFormText(_MD_SUSPEND_DURATION, 'expire', 20, 25, '5'), true);
$forum_form->addElement(new XoopsFormText(_MD_SUSPEND_DESC, 'desc', 50, 255));
-$forum_form->addElement(new XoopsFormHidden('forum', $forum_id));
+// START irmtfan add forum select box for admins
+mod_loadFunctions("forum", "newbb");
+if(newbb_isAdmin()) {
+ $forumSel = "<select name=\"forum\">";// if user dont select any it select "0"
+ $forumSel .= "<option value=\"0\" ";
+ if ($forum_id == 0) {
+ $forumSel .= " selected";
+ }
+ $forumSel .= ">"._ALL."</option>";
+ $forumSel .= newbb_forumSelectBox($forum_id, "access", false); //$access_forums, $permission = "access", $delimitor_category = true
+ $forumSel .= "</select>";
+ $forumEle = new XoopsFormLabel(_MD_SELFORUM, $forumSel);
+ $forumEle->customValidationCode[]="if (document.suspend.forum.value < 0) {return false;} ";
+ $forum_form->addElement($forumEle);
+} else {
+ $forum_form->addElement(new XoopsFormHidden('forum', $forum_id));
+}
+// END irmtfan add forum select box for admins
$forum_form->addElement(new XoopsFormButton('', 'submit', _SUBMIT, "submit"));
$forum_form->display();
include XOOPS_ROOT_PATH.'/footer.php';
Modified: XoopsModules/newbb/branches/irmtfan/newbb/viewtopic.php
===================================================================
--- XoopsModules/newbb/branches/irmtfan/newbb/viewtopic.php 2013-04-16 15:22:50 UTC (rev 11388)
+++ XoopsModules/newbb/branches/irmtfan/newbb/viewtopic.php 2013-04-17 01:49:19 UTC (rev 11389)
@@ -642,9 +642,14 @@
$xoopsTpl->assign('menumode',$menumode);
$xoopsTpl->assign('menumode_other',$menumode_other);
+// START irmtfan add verifyUser to quick reply
+//check banning
+$moderate_handler =& xoops_getmodulehandler('moderate', 'newbb');
if ( !empty($xoopsModuleConfig['quickreply_enabled'])
&& $topic_handler->getPermission($forum_obj, $topic_obj->getVar('topic_status'), "reply")
+ && !$moderate_handler->verifyUser(-1, "",$forum_obj->getVar('forum_id'))
) {
+// END irmtfan add verifyUser to quick reply
$forum_form = new XoopsThemeForm(_MD_POSTREPLY, 'quick_reply', XOOPS_URL."/modules/".$xoopsModule->getVar("dirname", "n")."/post.php", 'post', true);
if (!is_object($xoopsUser)) {
//$config_handler =& xoops_gethandler('config');
|