Built motion from commit 503e72f.|0.0.143
[motion.git] / server / models / module.js
index c2bef6c..845f4ba 100644 (file)
@@ -7,18 +7,32 @@ module.exports = function(sequelize, DataTypes) {
   var Module = sequelize.define('Module', {
     name: {
       type: DataTypes.STRING,
-      unique: true,
       allowNull: false,
       validate: {
         notEmpty: true
       }
     },
-    title: DataTypes.STRING
+    title: DataTypes.STRING,
+    path: DataTypes.STRING
   }, {
     tableName: 'modules',
     associate: function(models) {
       Module.belongsToMany(models.User, {
-        through: 'user_has_modules'
+        through: models.UserHasModule,
+        required: false
+      });
+      Module.hasMany(models.Module, {
+        as: 'SubModules'
+      });
+      Module.addScope('submodules', {
+        include: [{
+          model: models.Module,
+          as: 'SubModules',
+          required: false,
+          include: [{
+            all: true
+          }]
+        }]
       });
     }
   });