projects
/
PHP-P10.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Another year is about to end... So we have to update these damn copyright information :P
[PHP-P10.git]
/
Uplink
/
P10_ModeSets.class.php
diff --git
a/Uplink/P10_ModeSets.class.php
b/Uplink/P10_ModeSets.class.php
index 96f8e7213e40afc4b4e58e2420bbfaedf582e82c..2515984924327babca14a522a77257a370b95b01 100644
(file)
--- a/
Uplink/P10_ModeSets.class.php
+++ b/
Uplink/P10_ModeSets.class.php
@@
-1,6
+1,6
@@
<?php
/******************************* PHP-P10 v2 *****************************
<?php
/******************************* PHP-P10 v2 *****************************
- * Copyright (C) 2011
Philipp Kreil (pk910)
*
+ * Copyright (C) 2011
-2012 Philipp Kreil (pk910)
*
* *
* This program is free software: you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* *
* This program is free software: you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
@@
-67,9
+67,11
@@
class P10_ChannelModeSet {
"d" => self::MODE_TYPE_D,
"R" => self::MODE_TYPE_D,
"z" => self::MODE_TYPE_D,
"d" => self::MODE_TYPE_D,
"R" => self::MODE_TYPE_D,
"z" => self::MODE_TYPE_D,
+ "S" => self::MODE_TYPE_D,
//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;
@@
-136,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;
@@
-148,7
+150,7
@@
class P10_ChannelModeSet {
}
continue;
} else if($mode == "b") {
}
continue;
} else if($mode == "b") {
- if($this->handleBan($add, $mode, $args[$c++])) {
+
if($this->handleBan($add, $mode, $args[$c++])) {
if($returndiff && $add) {
$modestradd .= $mode;
$paramstradd .= " ".$args[$c-1];
if($returndiff && $add) {
$modestradd .= $mode;
$paramstradd .= " ".$args[$c-1];
@@
-157,8
+159,8
@@
class P10_ChannelModeSet {
$paramstrdel .= " ".$args[$c-1];
}
}
$paramstrdel .= " ".$args[$c-1];
}
}
- continue;
- }
+
continue;
+
}
$flag = self::$modevalues[$mode];
if($add) {
if($returndiff && !($this->modeflags & $flag)) {
$flag = self::$modevalues[$mode];
if($add) {
if($returndiff && !($this->modeflags & $flag)) {
@@
-193,11
+195,11
@@
class P10_ChannelModeSet {
}
}
}
}
- private function handleBan($add, $mode, $mask) {
- //no ban management right now...
- return true;
- }
-
+
private function handleBan($add, $mode, $mask) {
+
//no ban management right now...
+
return true;
+
}
+
private function setPrivs($add, $mode, $user) {
$user = P10_User::getUserByNum($user);
if($user == null) {
private function setPrivs($add, $mode, $user) {
$user = P10_User::getUserByNum($user);
if($user == null) {
@@
-207,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;