sheercms
Version:
Sheer Cliff CMS is a simple and powerful content management system (CMS) for Node JS.
31 lines (25 loc) • 799 B
JavaScript
var mongoose = require('mongoose');
var pkgSchema = mongoose.Schema({
name: {type: String, required: 'Name is required.'},
description: String,
filename: String,
overwrite: String,
items: mongoose.Schema.Types.Mixed,
created: Date,
modified: Date
});
var models = {
Package: mongoose.model('packages', pkgSchema)
};
//Unique Name Validation
models.Package.schema.path('name').validate(function (value, respond) {
if (this.isNew == true) {
models.Package.findOne({ name: value }, function (err, result) {
if (result) respond(false);
else respond(true);
});
}
else
respond(true);
}, 'A package with this name already exists.');
module.exports = models;