]> git.scottworley.com Git - reliable-chat/blobdiff - webclient/rc.html
Use XMLHttpRequest POST to send messages
[reliable-chat] / webclient / rc.html
index d06f515e4328a307b910747c863bf196710e063e..da5874a30c0de7ce2679ee11bd85bcd74970469f 100644 (file)
                        type = "status";
                } else if (/^\* /.test(message.Text)) {
                        type = "me";
+               } else if (/^-!- /.test(message.Text)) {
+                       type = "local";
                } else {
                        type = "text";
                }
                        "?id=" + encodeURIComponent(message.ID) +
                        "&text=" + encodeURIComponent(message.Text);
                for (var i in servers) {
-                       var uri = rcserverbase(servers[i]) + path;
-                       var img = document.createElement("img");
-                       img.setAttribute("src", uri);
-                       d.appendChild(img);
+                       var xhr = new XMLHttpRequest();
+                       xhr.open("POST", rcserverbase(servers[i]) + path);
+                       xhr.send();
                }
        }
 
        function rcinput(input) {
                var message;
-               var re = /^\/(\S+)(\s(.*))?/
+               var re = /^\/(\S+)(\s(.*))?/;
                var match = re.exec(input);
                if (match) {
                        var command = match[1];
                        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 {
 
        function rckeydown(event) {
                if (event.keyCode == 13) {
-                       rcinput(document.input.say.value);
+                       if (document.input.say.value) {
+                               rcinput(document.input.say.value);
+                       }
                        document.input.say.value = "";
                        return false;
                }