1
0
Fork 0
mirror of https://github.com/documize/community.git synced 2025-07-22 06:39:43 +02:00

document approvals and protection

This commit is contained in:
Harvey Kandola 2017-12-24 15:51:43 +00:00
parent 58c88e2127
commit f4f32bcfcb
20 changed files with 891 additions and 777 deletions

View file

@ -10,12 +10,10 @@
// https://documize.com
import { setProperties } from '@ember/object';
import Component from '@ember/component';
import { inject as service } from '@ember/service';
import NotifierMixin from '../../mixins/notifier';
export default Component.extend(NotifierMixin, {
export default Component.extend({
folderService: service('folder'),
userService: service('user'),
appMeta: service(),
@ -42,7 +40,8 @@ export default Component.extend(NotifierMixin, {
documentDelete: false,
documentMove: false,
documentCopy: false,
documentTemplate: false
documentTemplate: false,
documentApprove: false,
};
let data = this.get('store').normalize('space-permission', u)
@ -63,8 +62,9 @@ export default Component.extend(NotifierMixin, {
documentDelete: false,
documentMove: false,
documentCopy: false,
documentTemplate: false
};
documentTemplate: false,
documentApprove: false,
};
let data = this.get('store').normalize('space-permission', u)
folderPermissions.pushObject(this.get('store').push(data));
@ -96,7 +96,7 @@ export default Component.extend(NotifierMixin, {
let hasEveryone = _.find(permissions, function (permission) {
return permission.get('userId') === "0" &&
(permission.get('spaceView') || permission.get('documentAdd') || permission.get('documentEdit') || permission.get('documentDelete') ||
permission.get('documentMove') || permission.get('documentCopy') || permission.get('documentTemplate'));
permission.get('documentMove') || permission.get('documentCopy') || permission.get('documentTemplate') || permission.get('documentApprove'));
});
// see if more than oen user is granted access to space (excluding everyone)
@ -104,26 +104,22 @@ export default Component.extend(NotifierMixin, {
permissions.forEach((permission) => {
if (permission.get('userId') !== "0" &&
(permission.get('spaceView') || permission.get('documentAdd') || permission.get('documentEdit') || permission.get('documentDelete') ||
permission.get('documentMove') || permission.get('documentCopy') || permission.get('documentTemplate'))) {
permission.get('documentMove') || permission.get('documentCopy') || permission.get('documentTemplate') || permission.get('documentApprove'))) {
roleCount += 1;
}
});
if (is.not.undefined(hasEveryone)) {
folder.markAsPublic();
this.showNotification('Marked space as public');
} else {
if (roleCount > 1) {
folder.markAsRestricted();
this.showNotification('Marked space as protected');
} else {
folder.markAsPrivate();
this.showNotification('Marked space as private');
}
}
this.get('folderService').savePermissions(folder.get('id'), payload).then(() => {
this.showNotification('Saved permissions');
$('#space-permission-modal').modal('hide');
$('#space-permission-modal').modal('dispose');
});