summaryrefslogtreecommitdiff
path: root/server/lib/schemas/Layout.js
blob: e3f261687b23e64ca6e7f7229c89ac58bf83b63c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/* jshint node: true */

var mongoose = require('mongoose'),
	_ = require('lodash'),
	config = require('../../../config.json'),
	util = require('../util');

var LayoutSchema = new mongoose.Schema({
	name: { type: String, required: true },
	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"]
	},
	privacy: {
		type: Boolean,
		default: false,
	},
	photo: {
		type: String,
	},
	rooms: [mongoose.Schema.Types.Mixed],
	startPosition: mongoose.Schema.Types.Mixed,
	viewHeight: { type: Number },
	user_id: { type: mongoose.Schema.ObjectId, index: true },
	created_at: { type: Date },
	updated_at: { type: Date },
});

module.exports = exports = mongoose.model('layout', LayoutSchema);
exports.schema = LayoutSchema;