Built motion from commit 5e31ea4.|0.0.32
[motion.git] / server / api / event / event.controller.js
index e8c9843..07c951f 100644 (file)
@@ -1 +1,119 @@
-var _0xc07d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x45\x76\x65\x6E\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x69\x6E\x64\x65\x78","\x63\x61\x74\x63\x68","\x73\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x74\x68\x65\x6E","\x66\x69\x6E\x64\x41\x6C\x6C","\x73\x68\x6F\x77\x42\x79\x43\x68\x61\x6E\x6E\x65\x6C","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x63\x68\x61\x6E\x6E\x65\x6C","\x70\x61\x72\x61\x6D\x73","\x73\x68\x6F\x77","\x69\x64","\x66\x69\x6E\x64\x42\x79\x49\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x75\x70\x64\x61\x74\x65","\x6D\x65\x72\x67\x65","\x73\x61\x76\x65","\x64\x65\x73\x74\x72\x6F\x79"];_0xc07d[0];var _=require(_0xc07d[1]);var Event=require(_0xc07d[3])[_0xc07d[2]];exports[_0xc07d[4]]=function(_0x80adx3,_0x80adx4){Event[_0xc07d[9]]({include:[{all:true}]})[_0xc07d[8]](function(_0x80adx6){return _0x80adx4[_0xc07d[7]](200)[_0xc07d[6]](_0x80adx6)})[_0xc07d[5]](function(_0x80adx5){return handleError(_0x80adx4,_0x80adx5)})};exports[_0xc07d[10]]=function(_0x80adx3,_0x80adx4){Event[_0xc07d[9]]({where:{channel:_0x80adx3[_0xc07d[14]][_0xc07d[13]][_0xc07d[12]]()},include:[{all:true}]})[_0xc07d[8]](function(_0x80adx7){if(!_0x80adx7){return _0x80adx4[_0xc07d[11]](404)};return _0x80adx4[_0xc07d[6]](_0x80adx7);})[_0xc07d[5]](function(_0x80adx5){return handleError(_0x80adx4,_0x80adx5)})};exports[_0xc07d[15]]=function(_0x80adx3,_0x80adx4){Event[_0xc07d[17]](_0x80adx3[_0xc07d[14]][_0xc07d[16]])[_0xc07d[8]](function(_0x80adx7){if(!_0x80adx7){return _0x80adx4[_0xc07d[11]](404)};return _0x80adx4[_0xc07d[6]](_0x80adx7);})[_0xc07d[5]](function(_0x80adx5){return handleError(_0x80adx4,_0x80adx5)})};exports[_0xc07d[18]]=function(_0x80adx3,_0x80adx4){Event[_0xc07d[18]](_0x80adx3[_0xc07d[19]])[_0xc07d[8]](function(_0x80adx7){return _0x80adx4[_0xc07d[7]](201)[_0xc07d[6]](_0x80adx7)})[_0xc07d[5]](function(_0x80adx5){return handleError(_0x80adx4,_0x80adx5)})};exports[_0xc07d[20]]=function(_0x80adx3,_0x80adx4){if(_0x80adx3[_0xc07d[19]][_0xc07d[16]]){delete _0x80adx3[_0xc07d[19]][_0xc07d[16]]};Event[_0xc07d[17]](_0x80adx3[_0xc07d[14]][_0xc07d[16]])[_0xc07d[8]](function(_0x80adx7){if(!_0x80adx7){return _0x80adx4[_0xc07d[11]](404)};var _0x80adx8=_[_0xc07d[21]](_0x80adx7,_0x80adx3[_0xc07d[19]]);_0x80adx8[_0xc07d[22]]()[_0xc07d[8]](function(){return _0x80adx4[_0xc07d[7]](200)[_0xc07d[6]](_0x80adx7)})[_0xc07d[5]](function(_0x80adx5){return handleError(_0x80adx4,_0x80adx5)});})[_0xc07d[5]](function(_0x80adx5){return handleError(_0x80adx4,_0x80adx5)});};exports[_0xc07d[23]]=function(_0x80adx3,_0x80adx4){Event[_0xc07d[17]](_0x80adx3[_0xc07d[14]][_0xc07d[16]])[_0xc07d[8]](function(_0x80adx7){if(!_0x80adx7){return _0x80adx4[_0xc07d[11]](404)};_0x80adx7[_0xc07d[23]]()[_0xc07d[8]](function(){return _0x80adx4[_0xc07d[11]](204)})[_0xc07d[5]](function(_0x80adx5){return handleError(_0x80adx4,_0x80adx5)});})[_0xc07d[5]](function(_0x80adx5){return handleError(_0x80adx4,_0x80adx5)})};function handleError(_0x80adx4,_0x80adx5){return _0x80adx4[_0xc07d[7]](500)[_0xc07d[6]](_0x80adx5)}
\ No newline at end of file
+'use strict';
+
+var _ = require('lodash');
+var Event = require('../../models').Event;
+
+// Get list of events
+exports.index = function(req, res) {
+  Event
+    .findAll({
+      include: [{
+        all: true
+      }]
+    })
+    .then(function(events) {
+      return res.status(200).send(events);
+    })
+    .catch(function(err) {
+      return handleError(res, err);
+    });
+};
+
+// Get a single event
+exports.showByChannel = function(req, res) {
+  Event
+    .findAll({
+      where: {
+        channel: req.params.channel.toUpperCase()
+      },
+      include: [{
+        all: true
+      }]
+    })
+    .then(function(event) {
+      if (!event) {
+        return res.sendStatus(404);
+      }
+      return res.send(event);
+    })
+    .catch(function(err) {
+      return handleError(res, err);
+    });
+};
+
+// Get a single event
+exports.show = function(req, res) {
+  Event
+    .findById(req.params.id)
+    .then(function(event) {
+      if (!event) {
+        return res.sendStatus(404);
+      }
+      return res.send(event);
+    })
+    .catch(function(err) {
+      return handleError(res, err);
+    });
+};
+
+// Creates a new event in the DB.
+exports.create = function(req, res) {
+  Event
+    .create(req.body)
+    .then(function(event) {
+      return res.status(201).send(event);
+    })
+    .catch(function(err) {
+      return handleError(res, err);
+    });
+};
+
+// Updates an existing event in the DB.
+exports.update = function(req, res) {
+  if (req.body.id) {
+    delete req.body.id;
+  }
+  Event
+    .findById(req.params.id)
+    .then(function(event) {
+      if (!event) {
+        return res.sendStatus(404);
+      }
+      var updated = _.merge(event, req.body);
+      updated.save()
+        .then(function() {
+          return res.status(200).send(event);
+        })
+        .catch(function(err) {
+          return handleError(res, err);
+        });
+    })
+    .catch(function(err) {
+      return handleError(res, err);
+    });
+};
+
+// Deletes a event from the DB.
+exports.destroy = function(req, res) {
+  Event
+    .findById(req.params.id)
+    .then(function(event) {
+      if (!event) {
+        return res.sendStatus(404);
+      }
+      event.destroy()
+        .then(function() {
+          return res.sendStatus(204);
+        })
+        .catch(function(err) {
+          return handleError(res, err);
+        });
+    })
+    .catch(function(err) {
+      return handleError(res, err);
+    });
+};
+
+function handleError(res, err) {
+  return res.status(500).send(err);
+}