update permission (#279)

This commit is contained in:
Cilibiu Bogdan
2018-04-05 12:16:25 +03:00
committed by Denys Vuika
parent d65116fef8
commit fbaa07be11
5 changed files with 11 additions and 105 deletions

View File

@@ -112,26 +112,14 @@ export abstract class PageComponent {
return selection.every(node => node.entry && this.nodeHasPermission(node.entry, 'delete'));
}
canDeleteShared(selection: Array<MinimalNodeEntity> = []): boolean {
return selection.every(node => node.entry && this.nodeSharedHasPermission(node.entry, 'delete'));
}
canMove(selection: Array<MinimalNodeEntity>): boolean {
return this.canDelete(selection);
}
canMoveShared(selection: Array<MinimalNodeEntity> = []): boolean {
return selection.every(node => node.entry && this.nodeSharedHasPermission(node.entry, 'delete'));
}
canUpdate(selection: Array<MinimalNodeEntity> = []): boolean {
return selection.every(node => node.entry && this.nodeHasPermission(node.entry, 'update'));
}
canUpdateShared(selection: Array<MinimalNodeEntity> = []): boolean {
return selection.every(node => node.entry && this.nodeSharedHasPermission(node.entry, 'update'));
}
canPreviewFile(selection: Array<MinimalNodeEntity>): boolean {
return this.isFileSelected(selection);
}
@@ -148,18 +136,10 @@ export abstract class PageComponent {
return this.isFileSelected(selection) && this.nodeHasPermission(selection[0].entry, 'update');
}
canUpdateFileShared(selection: Array<MinimalNodeEntity>): boolean {
return this.isFileSelected(selection) && this.nodeSharedHasPermission(selection[0].entry, 'update');
}
canManageVersions(selection: Array<MinimalNodeEntity>): boolean {
return this.canUpdateFile(selection);
}
canManageVersionsOfShared(selection: Array<MinimalNodeEntity>): boolean {
return this.canUpdateFileShared(selection);
}
nodeHasPermission(node: MinimalNodeEntryEntity, permission: string): boolean {
if (node && permission) {
const { allowableOperations = [] } = <any>(node || {});
@@ -172,18 +152,6 @@ export abstract class PageComponent {
return false;
}
nodeSharedHasPermission(node: MinimalNodeEntryEntity, permission: string): boolean {
if (node && permission) {
const { allowableOperationsOnTarget } = <any>(node || {});
if (allowableOperationsOnTarget && allowableOperationsOnTarget.indexOf(permission) > -1) {
return true;
}
}
return false;
}
onChangePageSize(event: Pagination): void {
this.preferences.paginationSize = event.maxItems;
}