Built motion from commit b33b832.|1.0.17
[motion.git] / server / models / integration.js
index 46119ee..2981977 100644 (file)
@@ -1 +1,71 @@
-var _0xe007=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x6F\x72\x74\x73","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x53\x54\x52\x49\x4E\x47","\x75\x6E\x69\x71\x75\x65\x5F\x6E\x61\x6D\x65\x5F\x61\x6E\x64\x5F\x76\x65\x72\x73\x69\x6F\x6E","\x61\x70\x70\x2E\x6A\x73","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E","\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0xe007[0];module[_0xe007[1]]=function(_0x3171x1,_0x3171x2){var _0x3171x3=_0x3171x1[_0xe007[9]](_0xe007[2],{name:{type:_0x3171x2[_0xe007[3]],allowNull:false,unique:_0xe007[4],validate:{notEmpty:true}},version:{type:_0x3171x2[_0xe007[3]],allowNull:false,unique:_0xe007[4],validate:{notEmpty:true}},main:{type:_0x3171x2[_0xe007[3]],defaultValue:_0xe007[5]},filename:{type:_0x3171x2[_0xe007[3]]},path:{type:_0x3171x2[_0xe007[3]]},type:{type:_0x3171x2[_0xe007[3]]},size:{type:_0x3171x2[_0xe007[6]]},active:{type:_0x3171x2[_0xe007[7]],defaultValue:false},author:_0x3171x2[_0xe007[3]],logo:_0x3171x2[_0xe007[3]],state:{type:_0x3171x2[_0xe007[3]],unique:true},description:_0x3171x2[_0xe007[3]]},{tableName:_0xe007[8]});return _0x3171x3}
\ No newline at end of file
+'use strict';
+
+module.exports = function(sequelize, DataTypes) {
+
+  var Integration = sequelize.define('Integration', {
+    name: {
+      type: DataTypes.STRING,
+      allowNull: false,
+      unique: 'unique_name_and_version',
+      validate: {
+        notEmpty: true
+      }
+    },
+    version: {
+      type: DataTypes.STRING,
+      allowNull: false,
+      unique: 'unique_name_and_version',
+      validate: {
+        notEmpty: true
+      }
+    },
+    main: {
+      type: DataTypes.STRING,
+      defaultValue: 'app.js'
+    },
+    filename: {
+      type: DataTypes.STRING,
+      // allowNull: false,
+      // validate: {
+      //   notEmpty: true
+      // }
+    },
+    path: {
+      type: DataTypes.STRING,
+      // allowNull: false,
+      // validate: {
+      //   notEmpty: true
+      // }
+    },
+    type: {
+      type: DataTypes.STRING,
+      // allowNull: false
+    },
+    size: {
+      type: DataTypes.INTEGER,
+      // allowNull: false
+    },
+    active: {
+      type: DataTypes.BOOLEAN,
+      defaultValue: false
+    },
+    author: DataTypes.STRING,
+    logo: DataTypes.STRING,
+    state: {
+      type: DataTypes.STRING,
+      unique: 'state'
+    },
+    description: DataTypes.STRING,
+    title: DataTypes.STRING,
+    remoteUri: DataTypes.STRING,
+    link: {
+      type: DataTypes.STRING,
+      defaultValue: '#'
+    }
+  }, {
+    tableName: 'integrations'
+  });
+
+  return Integration;
+
+};