X-Git-Url: https://jfr.im/git/irc/unrealircd/unrealircd-webpanel.git/blobdiff_plain/e92763aca1a838efe5e58a5f3655d17a75a04724..cd26522ba6ff68c18e1504b022ca92f4d01827be:/Classes/class-cmodes.php diff --git a/Classes/class-cmodes.php b/Classes/class-cmodes.php index a8c7037..f49f0cb 100644 --- a/Classes/class-cmodes.php +++ b/Classes/class-cmodes.php @@ -4,7 +4,15 @@ * A set of reference lists */ class IRCList { - static $cmodes = + public static $grouping = + [ + "Join restrictions"=>"kliRzOL", + "Message restrictions"=>"cSmMnGT", + "Anti-flood and other restrictions"=>"FftCNKVQ", + "Visibility"=>"sp", + "Other"=>"rPHzZDd", + ]; + public static $cmodes = [ "a" => [ "name" => "Admin", @@ -17,9 +25,14 @@ class IRCList { "requires" => "HalfOp" ], "c" => [ - "name" => "No CTCPs", - "description" => "Prevents users from sending CTCP's to the channel", - "requires" => "HalfOp" + "name" => "No colors", + "description" => "Block messages containing mIRC color codes", + "requires" => "Operator" + ], + "d" => [ + "name" => "Delay Join", + "description" => "Indicates there are invisible users left over due to unsetting 'D'", + "requires" => "Server" ], "e" => [ "name" => "Ban Exemption", @@ -33,7 +46,7 @@ class IRCList { ], "h" => [ "name" => "Half Op", - "description" => "Marks someone as channel admin (%)", + "description" => "Marks someone as channel halfop (%)", "requires" => "Operator" ], "i" => [ @@ -79,7 +92,7 @@ class IRCList { "r" => [ "name" => "Registered", "description" => "Channel has been registered to an account", - "requires" => "Services" + "requires" => "Server" ], "s" => [ "name" => "Secret", @@ -113,7 +126,8 @@ class IRCList { ], "F" => [ "name" => "Flood Profile", - "description" => "Use a Flood Profile to easily apply flood protection mechanisms", + "description" => "Uses a Flood Profile to easily apply flood protection mechanisms", + "requires" => "Operator" ], "G" => [ "name" => "Filter", @@ -191,4 +205,29 @@ class IRCList { "requires" => "Server" ] ]; -} \ No newline at end of file + + static function lookup($mode) + { + return (isset(self::$cmodes[$mode])) ? self::$cmodes[$mode] : + [ + 'name' => "Unknown mode", + 'description' => "Unknown mode +$mode", + 'requires' => 'Unknown' + ]; + } + static function setmodes($modes) + { + $g = []; + if (is_array($modes)) + { + self::$uplink = $modes; + return; + } + else if (!strstr($modes,",")) + $g = [$modes]; + else $g = split($g,","); + self::$uplink = $g; + } + static $uplink = []; + +}