From 2a18f7ddfc052db44b4698f854f32259fabb920d Mon Sep 17 00:00:00 2001 From: Simon Leipold <s.leipold@adito.de> Date: Thu, 8 Aug 2019 11:32:00 +0200 Subject: [PATCH] Permissions - default permissions get created in contentProcess of PermissionOverview and autostart to make sure the permission overview is up to date --- .../recordcontainers/jdito/contentProcess.js | 6 ++++++ process/autostartNeon/process.js | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/entity/PermissionOverview_entity/recordcontainers/jdito/contentProcess.js b/entity/PermissionOverview_entity/recordcontainers/jdito/contentProcess.js index 6bea9cea97..2c418c0fb6 100644 --- a/entity/PermissionOverview_entity/recordcontainers/jdito/contentProcess.js +++ b/entity/PermissionOverview_entity/recordcontainers/jdito/contentProcess.js @@ -9,6 +9,7 @@ var roleTitle = ""; var entityTitle = ""; var sqlCond = ""; var sqlStr = ""; +var roleInternalEveryone = "INTERNAL_EVERYONE"; var entitiesMetaData = project.getDataModels(project.DATAMODEL_KIND_ENTITY); var entitiesUsePermFlagSet = []; // array, which contains ids of entities with usePermission flag set @@ -17,6 +18,11 @@ var entitiesUsePermFlagSet = []; // array, which contains ids of entities with u for each (let entityMetaData in entitiesMetaData) { if (entityMetaData[6] == "true") { entitiesUsePermFlagSet.push(entityMetaData[0]) + if (PermissionUtil.getNumberOfPermissions(entityMetaData[0]) == 0) { + // no permissions found for the given entity -> create permissionset for role INTERNAL_EVERYONE with five X's for view, create, read, edit, delete + var noAccessPermissionSetIdEntity = PermissionUtil.insertNewPermissionSet("", entityMetaData[0], roleInternalEveryone, "", "E"); + PermissionUtil.insertNewPermission(noAccessPermissionSetIdEntity, "", "false"); // false is an indicator for PermissionDetails so the user can create a new PermissionSet on access level "E" + } } } diff --git a/process/autostartNeon/process.js b/process/autostartNeon/process.js index 24001259d3..ff0ca7831f 100644 --- a/process/autostartNeon/process.js +++ b/process/autostartNeon/process.js @@ -28,7 +28,7 @@ for each (let entityMetaData in entitiesMetaData) { if (entityMetaData[6] == "true") { entitiesUsePermFlagSet.push(entityMetaData[0]) if (PermissionUtil.getNumberOfPermissions(entityMetaData[0]) == 0) { - // no permissions found for the given entity -> create permissionset for role INTERNAL_EVERYONE with five X's for view, create, read, edit, delete + // no permissions found for the given entity -> create permissionset for role INTERNAL_EVERYONE with five X's for view, create, read, update, delete var noAccessPermissionSetIdEntity = PermissionUtil.insertNewPermissionSet("", entityMetaData[0], roleInternalEveryone, "", "E"); PermissionUtil.insertNewPermission(noAccessPermissionSetIdEntity, "", "false"); // false is an indicator for PermissionDetails so the user can create a new PermissionSet on access level "E" } -- GitLab