Built motion from commit 5e31ea4.|0.0.32
[motion.git] / server / api / event / event.socket.js
index db6bf71..cf6f9ec 100644 (file)
@@ -1 +1,36 @@
-var _0xb653=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x45\x76\x65\x6E\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x72\x65\x67\x69\x73\x74\x65\x72","\x74\x68\x65\x6E","\x69\x64","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x66\x74\x65\x72\x43\x72\x65\x61\x74\x65","\x61\x66\x74\x65\x72\x44\x65\x73\x74\x72\x6F\x79","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x65\x76\x65\x6E\x74\x3A","\x63\x68\x61\x6E\x6E\x65\x6C","\x3A\x73\x61\x76\x65","\x65\x6D\x69\x74","\x65\x76\x65\x6E\x74\x3A\x72\x65\x6D\x6F\x76\x65"];_0xb653[0];var Event=require(_0xb653[2])[_0xb653[1]];exports[_0xb653[3]]=function(_0xe990x2){Event[_0xb653[7]](function(_0xe990x3){Event[_0xb653[6]]({where:{id:_0xe990x3[_0xb653[5]]},include:[{all:true}]})[_0xb653[4]](function(_0xe990x4){onSave(_0xe990x2,_0xe990x4)})});Event[_0xb653[8]](function(_0xe990x3){onRemove(_0xe990x2,_0xe990x3)});};function onSave(_0xe990x2,_0xe990x3,_0xe990x6){_0xe990x2[_0xb653[13]]((_0xb653[10]+_0xe990x3[_0xb653[11]]+_0xb653[12])[_0xb653[9]](),_0xe990x3)}function onRemove(_0xe990x2,_0xe990x3,_0xe990x6){_0xe990x2[_0xb653[13]](_0xb653[14],_0xe990x3)}
\ No newline at end of file
+/**
+ * Broadcast updates to client when the model changes
+ */
+
+'use strict';
+
+var Event = require('../../models').Event;
+
+exports.register = function(socket) {
+  Event.afterCreate(function(doc) {
+    Event
+      .findOne({
+        where: {
+          id: doc.id
+        },
+        include: [{
+          all: true
+        }]
+      })
+      .then(function(event) {
+        onSave(socket, event);
+      });
+  });
+
+  Event.afterDestroy(function(doc) {
+    onRemove(socket, doc);
+  });
+}
+
+function onSave(socket, doc, cb) {
+  socket.emit(('event:' + doc.channel + ':save').toLowerCase(), doc);
+}
+
+function onRemove(socket, doc, cb) {
+  socket.emit('event:remove', doc);
+}