]> git.scottworley.com Git - reliable-chat/blobdiff - webclient/rc.html
/nick currentnick should do nothing
[reliable-chat] / webclient / rc.html
index df592d0a8639fc939f419f08468456180cf053c5..2e05a86312a4868ac7088e61ab081b8422b22e4d 100644 (file)
 
        function rcinput(input) {
                var message;
 
        function rcinput(input) {
                var message;
-               var re = /^\/([a-z]+) (.*)/
+               var re = /^\/(\S+)(\s(.*))?/;
                var match = re.exec(input);
                if (match) {
                var match = re.exec(input);
                if (match) {
-                       if (match[1] == 'me') {
-                               message = "* " + rcnick() + "  " + match[2];
-                       } else if (match[1] == 'nick') {
-                               message = "*** " + rcnick() + " is now known as " + match[2];
-                               rcsetnick(match[2]);
+                       var command = match[1];
+                       var rest = match[3];
+                       if (command == 'me') {
+                               message = "* " + rcnick() + "  " + rest;
+                       } else if (command == 'nick') {
+                               if (rcnick() == rest) {
+                                       rcaddmessagetoUI({'Text': '-!- Your nick is already ' + rcnick(), 'ServerTimes': {}});
+                                       return;
+                               }
+                               message = "*** " + rcnick() + " is now known as " + rest;
+                               rcsetnick(rest);
                        } else {
                        } else {
-                               rcaddmessagetoUI({'Text': '-!- No such command: ' + match[1], 'ServerTimes': {}});
+                               rcaddmessagetoUI({'Text': '-!- No such command: ' + command, 'ServerTimes': {}});
                                return;
                        }
                } else {
                                return;
                        }
                } else {