]> git.za3k.com Git - petchat.git/commitdiff
Change library permissions
authorZachary Vance <vanceza@gmail.com>
Tue, 7 Jul 2015 19:29:32 +0000 (12:29 -0700)
committerZachary Vance <vanceza@gmail.com>
Tue, 7 Jul 2015 19:29:32 +0000 (12:29 -0700)
chat.js

diff --git a/chat.js b/chat.js
index ded15d47ab08338eb117d43f95750ed86ace2088..fab5b6e33a0bc12bec1fc8596bfd568b4fd71f70 100644 (file)
--- a/chat.js
+++ b/chat.js
@@ -37,10 +37,18 @@ Datastore.prototype = {
     },
     store: function(callback, key, value) {
         //localStorage[key] = JSON.stringify(value);
+        var rev;
+        if (value._rev) {
+            rev = value._rev;
+            delete value._rev;
+        }
+        var data = { content: JSON.stringify(value) };
+        if (rev) data._rev = rev;
+
         $.ajax({
             type: 'PUT',
             url: this.url + "/chats/" + key,
-            data: JSON.stringify({ content: JSON.stringify(value) }),
+            data: JSON.stringify(data),
             contentType: 'application/json',
             dataType: 'application/json',
             success: callback,
@@ -55,7 +63,9 @@ Datastore.prototype = {
             dataType: 'jsonp',
             success: function(value) {
                 if (value && value.content) {
-                    callback(JSON.parse(value.content));
+                    var content = JSON.parse(value.content);
+                    content._rev = value._rev;
+                    callback(content);
                 } else {
                     callback(default_);
                 }
@@ -82,12 +92,18 @@ Playback.prototype = {
         this.datastore.getChat(function(messages) {
             self.messages = messages;
             _.each(self.messages, self.queueSend, self);
+            var lastTime = self.messages[self.messages.length - 1].delayMs;
+            setTimeout(function() {
+                self.stop();
+            }, instantReplay ? 0 : lastTime + 100);
         }, this.key);
     },
     send: function(author, message) {
         this.chat.display(author, message);
     },
-    stop: function() {},
+    stop: function() {
+        this.chat.display("Chat", "(end of message)");
+    },
     queueSend: function(message) {
         var self = this;
         setTimeout(function() {