projects
/
PHP-P10.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added HALFOP (+h, %) support and Binding filters
[PHP-P10.git]
/
Uplink
/
P10_ModeSets.class.php
diff --git
a/Uplink/P10_ModeSets.class.php
b/Uplink/P10_ModeSets.class.php
index 0ff322c6d351d1aebfd0d0188f9f1c57a79f8e97..b003057c7b2e489cc08419cc014d6dcb72473c30 100644
(file)
--- a/
Uplink/P10_ModeSets.class.php
+++ b/
Uplink/P10_ModeSets.class.php
@@
-71,6
+71,7
@@
class P10_ChannelModeSet {
//special behavior
"o" => self::MODE_TYPE_B,
//special behavior
"o" => self::MODE_TYPE_B,
+ "h" => self::MODE_TYPE_B,
"v" => self::MODE_TYPE_B
);
private static $modevalues = null;
"v" => self::MODE_TYPE_B
);
private static $modevalues = null;
@@
-137,7
+138,7
@@
class P10_ChannelModeSet {
trigger_error("unknown mode (".$mode.") on setModes (".$modes.").", E_USER_WARNING);
continue;
}
trigger_error("unknown mode (".$mode.") on setModes (".$modes.").", E_USER_WARNING);
continue;
}
- if($mode == "o" || $mode == "v") {
+ if($mode == "o" || $mode == "
h" || $mode == "
v") {
if($this->setPrivs($add, $mode, $args[$c++])) {
if($returndiff && $add) {
$modestradd .= $mode;
if($this->setPrivs($add, $mode, $args[$c++])) {
if($returndiff && $add) {
$modestradd .= $mode;
@@
-208,6
+209,7
@@
class P10_ChannelModeSet {
$privs = $this->channel->getUserPrivs($user);
$privFlag = 0;
if($mode == "o") $privFlag = P10_Channel::USERPRIV_OPED;
$privs = $this->channel->getUserPrivs($user);
$privFlag = 0;
if($mode == "o") $privFlag = P10_Channel::USERPRIV_OPED;
+ if($mode == "h") $privFlag = P10_Channel::USERPRIV_HALFOP;
if($mode == "v") $privFlag = P10_Channel::USERPRIV_VOICE;
if(!($add xor ($privs & $privFlag)))
return false;
if($mode == "v") $privFlag = P10_Channel::USERPRIV_VOICE;
if(!($add xor ($privs & $privFlag)))
return false;