diff --git a/models/asset.js b/models/asset.js new file mode 100644 index 000000000..863c0512e --- /dev/null +++ b/models/asset.js @@ -0,0 +1,14 @@ +'use strict'; + +var mongoose = require('mongoose'); +var Schema = mongoose.Schema; + +var assetSchema = new Schema({ + title: String, + created_at: { type: Date, default: Date.now }, + updated_at: { type: Date, default: Date.now } +}); + +var Asset = mongoose.model('Asset', assetSchema); + +module.exports = Asset; diff --git a/models/comments.js b/models/comments.js new file mode 100644 index 000000000..01df61ecc --- /dev/null +++ b/models/comments.js @@ -0,0 +1,32 @@ +'use strict'; + +var mongoose = require('mongoose'); +var Schema = mongoose.Schema; +var User = require('user'); +var Asset = require('asset'); + +var commentSchema = new Schema({ + content: { + type: String, + required: [true, 'The content is required.'], + minlenght: 50 + }, + asset: Asset, + author: User, + actions: { + flags: [User], + likes: [User] + }, + status: { + type: String, + enum: ['accepted', 'rejected', 'untouched'], + default: 'untouched' + }, + parent: Comment, + created_at: { type: Date, default: Date.now }, + updated_at: { type: Date, default: Date.now } +}); + +var Comment = mongoose.model('Comment', commentSchema); + +module.exports = Comment; diff --git a/models/user.js b/models/user.js new file mode 100644 index 000000000..63aebe7b9 --- /dev/null +++ b/models/user.js @@ -0,0 +1,14 @@ +'use strict'; + +var mongoose = require('mongoose'); +var Schema = mongoose.Schema; + +var userSchema = new Schema({ + name: String, + created_at: { type: Date, default: Date.now }, + updated_at: { type: Date, default: Date.now } +}); + +var User = mongoose.model('User', userSchema); + +module.exports = User;