meteor-interface
Version:
Simple Content Management System to generate your administration interface for Meteor and React.
55 lines (45 loc) • 1.47 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _configuration = _interopRequireDefault(require("../../lib/configuration"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
// Global Config
var createRoles = function createRoles() {
var config = _configuration.default.get();
var _config$roles = config.roles,
roles = _config$roles === void 0 ? [] : _config$roles,
logs = config.logs;
logs && console.log('------ ROLES INIT ------');
if (!roles || !roles[0]) {
logs && console.log('There are no roles in your config file. Please add at least one role to have an administration security!');
} else {
roles.map(function (role) {
var isExisting = Meteor.roles.findOne({
name: role
});
if (!isExisting) {
var newRole = Roles.createRole(role);
logs && console.log('Role created: ' + role);
}
});
Meteor.roles.find().map(function (role) {
var isExisting = false;
roles.map(function (baseRole) {
if (baseRole === role.name) {
isExisting = true;
}
});
if (!isExisting) {
Meteor.roles.remove({
_id: role._id
});
logs && console.log('Role deleted: ' + role);
}
});
}
logs && console.log('------ ROLES FINISHED ------');
};
var _default = createRoles;
exports.default = _default;