]> jfr.im git - irc/unrealircd/unrealircd-webpanel.git/blobdiff - Classes/class-cmodes.php
Couple of small fixes reported by @Lord255
[irc/unrealircd/unrealircd-webpanel.git] / Classes / class-cmodes.php
index c750ab8790eb11dcb876f8e984d21d372be71a45..cbb1a7549abe35672955828d5a38e7d807a26923 100644 (file)
@@ -4,7 +4,8 @@
  * A set of reference lists
  */
 class IRCList {
-    static $cmodes =
+
+    public static $cmodes =
     [
         "a" =>  [
             "name" => "Admin",
@@ -17,9 +18,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 +39,7 @@ class IRCList {
         ],
         "h" => [
             "name" => "Half Op",
-            "description" => "Marks someone as channel admin (%)",
+            "description" => "Marks someone as channel halfop (%)",
             "requires" => "Operator"
         ],
         "i" => [
@@ -79,7 +85,7 @@ class IRCList {
         "r" => [
             "name" => "Registered",
             "description" => "Channel has been registered to an account",
-            "requires" => "Services"
+            "requires" => "Server"
         ],
         "s" => [
             "name" => "Secret",
@@ -111,6 +117,11 @@ class IRCList {
             "description" => "Delay showing joins until someone actually speaks.",
             "requires" => "Operator"
         ],
+        "F" => [
+            "name" => "Flood Profile",
+            "description" => "Uses a Flood Profile to easily apply flood protection mechanisms",
+            "requires" => "Operator"
+        ],
         "G" => [
             "name" => "Filter",
             "description" => "Filters out all Bad words in messages with \"&lt;censored&gt;</pre>\".",
@@ -124,7 +135,7 @@ class IRCList {
         "I" => [
             "name" => "Invitation",
             "description" => "Marks an inviation to a channel.",
-            "requires" => "HalOp"
+            "requires" => "HalfOp"
         ],
         "K" => [
             "name" => "No Knock",
@@ -187,4 +198,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 = [];
+    
+}