Iterated on library nodes

This commit is contained in:
Stefan Zermatten
2019-04-15 12:04:17 +02:00
parent dabb54b0a3
commit aa9802b34e

View File

@@ -1,10 +1,17 @@
import schema from '/imports/api/schema.js';
import SharingSchema from '/imports/api/sharing/SharingSchema.js';
import ChildSchema from '/imports/api/parenting/ChildSchema.js';
import librarySchemas from '/imports/api/library/librarySchemas.js';
let LibraryNodes = new Mongo.Collection('libraryNodes');
const RefSchema = new SimpleSchema({
id: {
type: String,
regEx: SimpleSchema.RegEx.Id,
index: 1
},
});
let LibraryNodeSchema = schema({
name: {
type: String,
@@ -13,6 +20,21 @@ let LibraryNodeSchema = schema({
libraryNodeType: {
type: String,
allowedValues: Object.keys(librarySchemas),
},
order: {
type: SimpleSchema.Integer,
index: true,
},
parent: {
type: RefSchema,
},
// ancestors[0] should be the library to check for permission
ancestors: {
type: Array,
defaultValue: [],
},
'ancestors.$': {
type: RefSchema,
},
});
@@ -21,9 +43,6 @@ for (let key in librarySchemas){
schema.extend(librarySchemas[key]);
schema.extend(LibraryNodeSchema);
schema.extend(ChildSchema);
if (key === 'folder'){
schema.extend(SharingSchema);
}
LibraryNodes.attachSchema(schema, {
selector: {libraryNodeType: key}
});