mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2024-12-24 22:42:25 -05:00
c4652d82e2
* Updates spade.js vendor file, adds a sublime-project for developers to use * Moves server logic away from handlers * Moves session update logic to middleware, sets up server schema to autorender IDs as ObjectIDs * Modernizes the supermodel loading scheme and switches from constructor to initalize
34 lines
845 B
CoffeeScript
34 lines
845 B
CoffeeScript
mongoose = require 'mongoose'
|
|
config = require '../../server_config'
|
|
|
|
CodeLogSchema = new mongoose.Schema({
|
|
created:
|
|
type: Date
|
|
default: Date.now
|
|
userID:
|
|
type: mongoose.Schema.ObjectId
|
|
sessionID:
|
|
type: mongoose.Schema.ObjectId
|
|
level:
|
|
original:
|
|
type: mongoose.Schema.ObjectId
|
|
majorVersion:
|
|
type: Number
|
|
default: 0
|
|
}, {strict: false, read: config.mongo.readpref})
|
|
|
|
CodeLogSchema.index({levelSlug: 1, created: -1}, {name: 'level slug index'})
|
|
CodeLogSchema.index({userID: 1, created: -1}, {name: 'user id index'})
|
|
|
|
CodeLogSchema.statics.editableProperties = [
|
|
'sessionID'
|
|
'level'
|
|
'levelSlug'
|
|
'userID'
|
|
'log'
|
|
'created'
|
|
]
|
|
|
|
CodeLogSchema.statics.jsonSchema = require '../../app/schemas/models/codelog.schema'
|
|
|
|
module.exports = CodeLog = mongoose.model('CodeLog', CodeLogSchema, 'codelogs')
|