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