diff options
Diffstat (limited to 'server/lib/schemas/Blueprint.js')
| -rw-r--r-- | server/lib/schemas/Blueprint.js | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/server/lib/schemas/Blueprint.js b/server/lib/schemas/Blueprint.js new file mode 100644 index 0000000..3c3b0cc --- /dev/null +++ b/server/lib/schemas/Blueprint.js @@ -0,0 +1,66 @@ +/* jshint node: true */ + +var mongoose = require('mongoose'), + _ = require('lodash'), + util = require('../util'); + +var BlueprintSchema = new mongoose.Schema({ + type: { + type: String, + required: true + }, + url: { + type: String, + required: true, + }, + token: { + type: String, + default: "" + }, + thumbnail: { + type: String, + default: "" + }, + width: { + type: Number, + default: 0 + }, + height: { + type: Number, + default: 0 + }, + name: { + type: String, + default: "" + }, + slug: { + type: String, +// required: true, + validate: [function (val){ + val = util.sanitize(val || this.displayName || "") +// if (! val.length) return false + return true + },"{PATH} name is required"] + }, + description: { + type: String, + default: "" + }, + tag: { type: String, default: "" }, + scale: { type: Number, default: 1.0 }, + + widthDimension: { type: Number }, + heightDimension: { type: Number }, + wallHeight: { type: Number }, + units: { type: String }, + line: { type: String }, + + shapes: [mongoose.Schema.Types.Mixed], + startPosition: mongoose.Schema.Types.Mixed, + + user_id: { type: mongoose.Schema.ObjectId, index: true }, + created_at: { type: Date }, +}); + +module.exports = exports = mongoose.model('blueprint', BlueprintSchema) +exports.schema = BlueprintSchema; |
