Files
meanTorrent/modules/core/server/models/common.server.model.js

112 lines
1.6 KiB
JavaScript

'use strict';
/**
* Module dependencies
*/
var mongoose = require('mongoose'),
Schema = mongoose.Schema;
/**
* rating Schema
*/
var RatingSchema = new Schema({
user: {
type: Schema.Types.ObjectId,
ref: 'User'
},
vote: {
type: Number,
default: 0
},
createdAt: {
type: Date,
default: Date.now
}
}, {usePushEach: true});
mongoose.model('Rating', RatingSchema);
/**
* Sub Thumb Schema
*/
var ThumbSchema = new Schema({
user: {
type: Schema.Types.ObjectId,
ref: 'User'
},
score: {
type: Number,
default: 0
},
createdAt: {
type: Date,
default: Date.now
}
}, {usePushEach: true});
mongoose.model('Thumb', ThumbSchema);
/**
* Sub Comment Schema
*/
var CommentSchema = new Schema({
user: {
type: Schema.Types.ObjectId,
ref: 'User'
},
comment: {
type: String,
default: '',
trim: true
},
_replies: [this],
createdat: {
type: Date,
default: Date.now
},
editedby: {
type: String,
default: '',
trim: true
},
editedat: {
type: Date,
default: ''
}
}, {usePushEach: true});
mongoose.model('Comment', CommentSchema);
/**
* Sub History Schema
*/
var HistorySchema = new Schema({
event: {
type: String,
default: '',
trim: true
},
event_str: {
type: String,
default: '',
trim: true
},
params: {
type: Object
},
createdAt: {
type: Date,
default: Date.now
}
}, {usePushEach: true});
mongoose.model('History', HistorySchema);
/**
* exports
*/
exports.RatingSchema = RatingSchema;
exports.ThumbSchema = ThumbSchema;
exports.CommentSchema = CommentSchema;
exports.HistorySchema = HistorySchema;