diff options
Diffstat (limited to 'lib/models.js')
| -rw-r--r-- | lib/models.js | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/lib/models.js b/lib/models.js new file mode 100644 index 0000000..824586b --- /dev/null +++ b/lib/models.js @@ -0,0 +1,52 @@ +var mongoose = require('mongoose'), + Schema = mongoose.Schema, + ObjectId = Schema.ObjectId; + +var SoundSchema = new Schema({ + soundId: ObjectId, + name: String, + url: String, + permalink: String, + filetype: String, + duration: { type: Number, default: 0 }, + date: { type: Date, default: Date.now } +}); + +var OffsetsSchema = new Schema({ + soundId: String, + offsets: { type: [Number] } +}) + +var LoopSchema = new Schema({ + soundId: String, + sampleURL: String, + startTime: Number, + endTime: Number, + duration: Number, + beats: Number, + offsets: Array, + transformations: Array, + date: { type: Date, default: Date.now } +}) + +var UserSchema = new Schema({ + userId: ObjectId, + score: { type: Number, default: 0 }, + name: String, + image: String, + date: { type: Date, default: Date.now } +}); + +var FaveSchema = new Schema({ + userId: String, + loopId: String, + date: { type: Date, default: Date.now } +}); + +var Sound = module.exports.Sound = mongoose.model('Sound', SoundSchema); +var Offsets = module.exports.Offsets = mongoose.model('Offsets', OffsetsSchema); +var Loop = module.exports.Loop = mongoose.model('Loop', LoopSchema); +var User = module.exports.User = mongoose.model('User', UserSchema); +var Fave = module.exports.Fave = mongoose.model('Fave', FaveSchema); +var Sound = module.exports.Sound = mongoose.model('Sound', SoundSchema); + |
