diff options
Diffstat (limited to 'ui/imports/api/clique-constraints')
-rw-r--r-- | ui/imports/api/clique-constraints/clique-constraints.js | 48 | ||||
-rw-r--r-- | ui/imports/api/clique-constraints/methods.js | 99 | ||||
-rw-r--r-- | ui/imports/api/clique-constraints/server/publications.js | 30 |
3 files changed, 0 insertions, 177 deletions
diff --git a/ui/imports/api/clique-constraints/clique-constraints.js b/ui/imports/api/clique-constraints/clique-constraints.js deleted file mode 100644 index 8641715..0000000 --- a/ui/imports/api/clique-constraints/clique-constraints.js +++ /dev/null @@ -1,48 +0,0 @@ -///////////////////////////////////////////////////////////////////////////////////////// -// Copyright (c) 2017 Koren Lev (Cisco Systems), Yaron Yogev (Cisco Systems) and others / -// / -// All rights reserved. This program and the accompanying materials / -// are made available under the terms of the Apache License, Version 2.0 / -// which accompanies this distribution, and is available at / -// http://www.apache.org/licenses/LICENSE-2.0 / -///////////////////////////////////////////////////////////////////////////////////////// -import { Mongo } from 'meteor/mongo'; -import { SimpleSchema } from 'meteor/aldeed:simple-schema'; -import * as R from 'ramda'; -import { Constants } from '/imports/api/constants/constants'; - -export const CliqueConstraints = new Mongo.Collection( - 'clique_constraints', { idGeneration: 'MONGO' }); - -let schema = { - _id: { type: { _str: { type: String, regEx: SimpleSchema.RegEx.Id } } }, - - focal_point_type: { - type: String, - custom: function () { - let that = this; - let values = Constants.findOne({ name: 'object_types_for_links' }).data; - - if (R.isNil(R.find(R.propEq('value', that.value), values))) { - return 'notAllowed'; - } - } - }, - - constraints: { - type: [String], - minCount: 1, - custom: function () { - let that = this; - let objectTypes = Constants.findOne({ name: 'object_types_for_links' }).data; - - let findResult = R.intersection(that.value, R.pluck('value', objectTypes)); - if (findResult.length !== that.value.length) { return 'notAllowed'; } - - return; - }, - }, -}; - -CliqueConstraints.schema = new SimpleSchema(schema); -CliqueConstraints.attachSchema(CliqueConstraints.schema); diff --git a/ui/imports/api/clique-constraints/methods.js b/ui/imports/api/clique-constraints/methods.js deleted file mode 100644 index c9ae997..0000000 --- a/ui/imports/api/clique-constraints/methods.js +++ /dev/null @@ -1,99 +0,0 @@ -///////////////////////////////////////////////////////////////////////////////////////// -// Copyright (c) 2017 Koren Lev (Cisco Systems), Yaron Yogev (Cisco Systems) and others / -// / -// All rights reserved. This program and the accompanying materials / -// are made available under the terms of the Apache License, Version 2.0 / -// which accompanies this distribution, and is available at / -// http://www.apache.org/licenses/LICENSE-2.0 / -///////////////////////////////////////////////////////////////////////////////////////// -import { ValidatedMethod } from 'meteor/mdg:validated-method'; -import * as R from 'ramda'; -import { Roles } from 'meteor/alanning:roles'; - -import { CliqueConstraints } from './clique-constraints'; - -export const insert = new ValidatedMethod({ - name: 'clique_constraints.insert', - validate: CliqueConstraints.simpleSchema() - .pick([ -// 'environment', - 'focal_point_type', - 'constraints', - 'constraints.$', - ]).validator({ clean: true, filter: false }), - run({ - // environment, - focal_point_type, - constraints, - }) { - if (! Roles.userIsInRole(Meteor.userId(), 'manage-clique-constraints', Roles.GLOBAL_GROUP)) { - throw new Meteor.Error('unauthorized for inserting clique constraints'); - } - - let cliqueConstraint = CliqueConstraints.schema.clean({}); - - cliqueConstraint = R.merge(cliqueConstraint, { - // environment, - focal_point_type, - constraints, - }); - - CliqueConstraints.insert(cliqueConstraint); - } -}); - -export const remove = new ValidatedMethod({ - name: 'clique_constraints.remove', - validate: CliqueConstraints.simpleSchema() - .pick([ - '_id', - ]).validator({ clean: true, filter: false }), - run({ - _id - }) { - if (! Roles.userIsInRole(Meteor.userId(), 'manage-clique-constraints', Roles.DEFAULT_GROUP)) { - throw new Meteor.Error('unauthorized for removing clique constraints'); - } - - let cliqueConstraint = CliqueConstraints.findOne({ _id: _id }); - console.log('clique constraint for remove: ', cliqueConstraint); - - CliqueConstraints.remove({ _id: _id }); - } -}); - -export const update = new ValidatedMethod({ - name: 'clique_constraints.update', - validate: CliqueConstraints.simpleSchema() - .pick([ - '_id', - 'focal_point_type', - 'constraints', - 'constraints.$', - ]).validator({ clean: true, filter: false }), - run({ - _id, - focal_point_type, - constraints, - }) { - - if (! Roles.userIsInRole(Meteor.userId(), 'manage-clique-constraints', Roles.DEFAULT_GROUP)) { - throw new Meteor.Error('unauthorized for removing clique constraints'); - } - - let item = CliqueConstraints.findOne({ _id: _id }); - console.log('clique constraints for update: ', item); - console.log('current user', Meteor.userId()); - - item = R.merge( - R.pick([ - 'focal_point_type', - 'constraints', - ], item), { - focal_point_type, - constraints, - }); - - CliqueConstraints.update({ _id: _id }, { $set: item }); - } -}); diff --git a/ui/imports/api/clique-constraints/server/publications.js b/ui/imports/api/clique-constraints/server/publications.js deleted file mode 100644 index 6e4ae1a..0000000 --- a/ui/imports/api/clique-constraints/server/publications.js +++ /dev/null @@ -1,30 +0,0 @@ -///////////////////////////////////////////////////////////////////////////////////////// -// Copyright (c) 2017 Koren Lev (Cisco Systems), Yaron Yogev (Cisco Systems) and others / -// / -// All rights reserved. This program and the accompanying materials / -// are made available under the terms of the Apache License, Version 2.0 / -// which accompanies this distribution, and is available at / -// http://www.apache.org/licenses/LICENSE-2.0 / -///////////////////////////////////////////////////////////////////////////////////////// -import { Meteor } from 'meteor/meteor'; - -import { CliqueConstraints } from '../clique-constraints.js'; - -Meteor.publish('clique_constraints', function () { - console.log('server subscribtion: clique_constraints'); - - //let that = this; - - let query = {}; - return CliqueConstraints.find(query); -}); - -Meteor.publish('clique_constraints?_id', function (_id) { - console.log('server subscribtion: clique_constraints?_id'); - console.log(_id); - - //let that = this; - - let query = { _id: _id }; - return CliqueConstraints.find(query); -}); |