Skip to content
Snippets Groups Projects
Commit 64d1506b authored by Simon Leipold's avatar Simon Leipold
Browse files

Permissions - fixed behavior when usePermission-flag gets removed

parent 0c63f14d
No related branches found
No related tags found
No related merge requests found
......@@ -3,9 +3,9 @@ import("system.vars");
import("system.project");
var entityTitle = vars.get("$field.ENTITY");
var res = [];
if (entityTitle != undefined && entityTitle != null && entityTitle != "") {
var entityStructure = project.getEntityStructure(entityTitle);
var res = [];
for (var field in entityStructure.fields) {
field = entityStructure.fields[field];
......@@ -13,11 +13,11 @@ if (entityTitle != undefined && entityTitle != null && entityTitle != "") {
var name = field.name;
var title = field.title;
if (title != undefined && title != null && title != "") {
res.push([title, title]);
res.push([name, title]);
} else {
res.push([name, name]);
}
}
}
result.object(res);
}
\ No newline at end of file
}
result.object(res);
\ No newline at end of file
import("system.logging");
import("system.util");
import("system.vars");
import("system.db");
......@@ -10,16 +11,27 @@ var sqlStr;
var whereCond = " where";
var alias = "_____SYSTEMALIAS";
var entitiesMetaData = project.getDataModels(project.DATAMODEL_KIND_ENTITY);
var entityStructure;
var entitiesUsePermFlagSet = [];
var fieldsUsePermFlagSet = [];
// gets all names of the entites which have the 'usePermission'-flag set (positive list)
// gets all names of the fields which have the 'usePermission'-flag set (positive list)
for each (let entityMetaData in entitiesMetaData) {
if (entityMetaData[6] == "true") {
entitiesUsePermFlagSet.push(entityMetaData[0])
}
entityStructure = project.getEntityStructure(entityMetaData[0]);
for (fieldname in entityStructure.fields) {
field = entityStructure.fields[fieldname];
if (field.usePermissions == true) {
fieldsUsePermFlagSet.push(field.name);
}
}
}
}
whereCond += " ENTITY_ID in ('" + entitiesUsePermFlagSet.join("','") + "')";
whereCond += " and (FIELD_ID in ('" + fieldsUsePermFlagSet.join("','") + "') or FIELD_ID is NULL)";
if (vars.exists("$param.RoleTitle_param") && vars.get("$param.RoleTitle_param")) {
whereCond += " and ASYS_PERMISSIONSET.ROLE_ID = '" + vars.getString("$param.RoleTitle_param") + "'";
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment