From c747880c7474e7423c8a61e8d6e3345976842367 Mon Sep 17 00:00:00 2001 From: Simon Leipold <s.leipold@adito.de> Date: Wed, 29 May 2019 15:25:59 +0200 Subject: [PATCH] Permissions - field permissions and refactoring --- .../PermissionDetail_entity.aod | 349 +++++++++--------- .../contentTitleProcess.js | 4 +- .../entityfields/field/dropDownProcess.js | 24 ++ .../PermissionMetaData_entity.aod | 188 +++++----- .../recordcontainers/jdito/contentProcess.js | 17 +- 5 files changed, 308 insertions(+), 274 deletions(-) create mode 100644 entity/PermissionDetail_entity/entityfields/field/dropDownProcess.js diff --git a/entity/PermissionDetail_entity/PermissionDetail_entity.aod b/entity/PermissionDetail_entity/PermissionDetail_entity.aod index d3add1631d..f3d756e765 100644 --- a/entity/PermissionDetail_entity/PermissionDetail_entity.aod +++ b/entity/PermissionDetail_entity/PermissionDetail_entity.aod @@ -1,171 +1,178 @@ -<?xml version="1.0" encoding="UTF-8"?> -<entity xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.3.6" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/entity/1.3.6"> - <name>PermissionDetail_entity</name> - <majorModelMode>DISTRIBUTED</majorModelMode> - <title>Permission Detail</title> - <contentTitleProcess>%aditoprj%/entity/PermissionDetail_entity/contentTitleProcess.js</contentTitleProcess> - <iconIdProcess>%aditoprj%/entity/PermissionDetail_entity/iconIdProcess.js</iconIdProcess> - <recordContainer>jDito</recordContainer> - <entityFields> - <entityProvider> - <name>#PROVIDER</name> - </entityProvider> - <entityField> - <name>CONDITION</name> - <title>Condition</title> - </entityField> - <entityField> - <name>ACTION</name> - <title>Action</title> - <mandatory v="true" /> - <searchable v="false" /> - </entityField> - <entityField> - <name>ROLE</name> - <title>Role</title> - <consumer>Roles</consumer> - <linkedContext>Role</linkedContext> - <mandatory v="true" /> - <groupable v="true" /> - <valueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/role/valueProcess.js</valueProcess> - <displayValueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/role/displayValueProcess.js</displayValueProcess> - </entityField> - <entityField> - <name>ENTITY</name> - <title>Entity</title> - <consumer>MetaData</consumer> - <linkedContext>PermissionMetaData</linkedContext> - <mandatory v="true" /> - <groupable v="true" /> - <valueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/entity/valueProcess.js</valueProcess> - <displayValueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/entity/displayValueProcess.js</displayValueProcess> - </entityField> - <entityField> - <name>FIELD</name> - <title>Field</title> - <groupable v="true" /> - </entityField> - <entityField> - <name>UID</name> - <title>PermissionId</title> - </entityField> - <entityField> - <name>ICON</name> - </entityField> - <entityField> - <name>ACCESSTYPE</name> - <title>Access type</title> - <consumer>KeywordAccessType</consumer> - <mandatory v="true" /> - <groupable v="true" /> - <valueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/accesstype/valueProcess.js</valueProcess> - <displayValueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/accesstype/displayValueProcess.js</displayValueProcess> - </entityField> - <entityField> - <name>CONDTYPE</name> - <title>Condition Type</title> - <consumer>KeywordConditionType</consumer> - <mandatory v="true" /> - <displayValueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/condtype/displayValueProcess.js</displayValueProcess> - </entityField> - <entityField> - <name>PARENT</name> - <title>Parent</title> - </entityField> - <entityProvider> - <name>Permissions</name> - <recordContainer>jDito</recordContainer> - <dependencies> - <entityDependency> - <name>b1a6483c-e7b1-4eb7-aa22-d0e9d0ef0b49</name> - <entityName>Role_entity</entityName> - <fieldName>Permissions</fieldName> - <isConsumer v="false" /> - </entityDependency> - <entityDependency> - <name>cc0e9a4d-5d82-4407-bc4e-698dcfae5c86</name> - <entityName>PermissionMetaData_entity</entityName> - <fieldName>PermissionDetails</fieldName> - <isConsumer v="false" /> - </entityDependency> - </dependencies> - </entityProvider> - <entityParameter> - <name>RoleTitle_param</name> - <expose v="true" /> - <description>PARAMETER</description> - </entityParameter> - <entityConsumer> - <name>Roles</name> - <dependency> - <name>dependency</name> - <entityName>Role_entity</entityName> - <fieldName>Roles</fieldName> - </dependency> - </entityConsumer> - <entityConsumer> - <name>MetaData</name> - <dependency> - <name>dependency</name> - <entityName>PermissionMetaData_entity</entityName> - <fieldName>MetaData</fieldName> - </dependency> - </entityConsumer> - <entityParameter> - <name>EntityTitle_param</name> - <expose v="true" /> - <description>PARAMETER</description> - </entityParameter> - <entityConsumer> - <name>KeywordConditionType</name> - <dependency> - <name>dependency</name> - <entityName>KeywordEntry_entity</entityName> - <fieldName>SpecificContainerKeywords</fieldName> - </dependency> - <children> - <entityParameter> - <name>ContainerName_param</name> - <valueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/keywordconditiontype/children/containername_param/valueProcess.js</valueProcess> - <expose v="false" /> - </entityParameter> - </children> - </entityConsumer> - <entityConsumer> - <name>KeywordAccessType</name> - <dependency> - <name>dependency</name> - <entityName>KeywordEntry_entity</entityName> - <fieldName>SpecificContainerKeywords</fieldName> - </dependency> - <children> - <entityParameter> - <name>ContainerName_param</name> - <valueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/keywordaccesstype/children/containername_param/valueProcess.js</valueProcess> - <expose v="false" /> - </entityParameter> - </children> - </entityConsumer> - </entityFields> - <recordContainers> - <jDitoRecordContainer> - <name>jDito</name> - <jDitoRecordAlias>Data_alias</jDitoRecordAlias> - <contentProcess>%aditoprj%/entity/PermissionDetail_entity/recordcontainers/jdito/contentProcess.js</contentProcess> - <onInsert>%aditoprj%/entity/PermissionDetail_entity/recordcontainers/jdito/onInsert.js</onInsert> - <onUpdate>%aditoprj%/entity/PermissionDetail_entity/recordcontainers/jdito/onUpdate.js</onUpdate> - <onDelete>%aditoprj%/entity/PermissionDetail_entity/recordcontainers/jdito/onDelete.js</onDelete> - <recordFields> - <element>UID.value</element> - <element>ENTITY.value</element> - <element>ROLE.value</element> - <element>FIELD.value</element> - <element>CONDITION.value</element> - <element>ACTION.value</element> - <element>ACCESSTYPE.value</element> - <element>CONDTYPE.value</element> - <element>PARENT.value</element> - </recordFields> - </jDitoRecordContainer> - </recordContainers> -</entity> +<?xml version="1.0" encoding="UTF-8"?> +<entity xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.3.6" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/entity/1.3.6"> + <name>PermissionDetail_entity</name> + <majorModelMode>DISTRIBUTED</majorModelMode> + <title>Permission Detail</title> + <contentTitleProcess>%aditoprj%/entity/PermissionDetail_entity/contentTitleProcess.js</contentTitleProcess> + <iconIdProcess>%aditoprj%/entity/PermissionDetail_entity/iconIdProcess.js</iconIdProcess> + <recordContainer>jDito</recordContainer> + <entityFields> + <entityProvider> + <name>#PROVIDER</name> + </entityProvider> + <entityField> + <name>CONDITION</name> + <title>Condition</title> + </entityField> + <entityField> + <name>ACTION</name> + <title>Action</title> + <mandatory v="true" /> + <searchable v="false" /> + </entityField> + <entityField> + <name>ROLE</name> + <title>Role</title> + <consumer>Roles</consumer> + <linkedContext>Role</linkedContext> + <mandatory v="true" /> + <groupable v="true" /> + <valueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/role/valueProcess.js</valueProcess> + <displayValueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/role/displayValueProcess.js</displayValueProcess> + </entityField> + <entityField> + <name>ENTITY</name> + <title>Entity</title> + <consumer>MetaData</consumer> + <linkedContext>PermissionMetaData</linkedContext> + <mandatory v="true" /> + <groupable v="true" /> + <valueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/entity/valueProcess.js</valueProcess> + <displayValueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/entity/displayValueProcess.js</displayValueProcess> + </entityField> + <entityField> + <name>FIELD</name> + <title>Field</title> + <dropDownProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/field/dropDownProcess.js</dropDownProcess> + <groupable v="true" /> + </entityField> + <entityField> + <name>UID</name> + <title>PermissionId</title> + </entityField> + <entityField> + <name>ICON</name> + </entityField> + <entityField> + <name>ACCESSTYPE</name> + <title>Access type</title> + <consumer>KeywordAccessType</consumer> + <mandatory v="true" /> + <groupable v="true" /> + <valueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/accesstype/valueProcess.js</valueProcess> + <displayValueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/accesstype/displayValueProcess.js</displayValueProcess> + </entityField> + <entityField> + <name>CONDTYPE</name> + <title>Condition Type</title> + <consumer>KeywordConditionType</consumer> + <mandatory v="true" /> + <displayValueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/condtype/displayValueProcess.js</displayValueProcess> + </entityField> + <entityField> + <name>PARENT</name> + <title>Parent</title> + </entityField> + <entityProvider> + <name>Permissions</name> + <recordContainer>jDito</recordContainer> + <dependencies> + <entityDependency> + <name>b1a6483c-e7b1-4eb7-aa22-d0e9d0ef0b49</name> + <entityName>Role_entity</entityName> + <fieldName>Permissions</fieldName> + <isConsumer v="false" /> + </entityDependency> + <entityDependency> + <name>cc0e9a4d-5d82-4407-bc4e-698dcfae5c86</name> + <entityName>PermissionMetaData_entity</entityName> + <fieldName>PermissionDetails</fieldName> + <isConsumer v="false" /> + </entityDependency> + </dependencies> + </entityProvider> + <entityParameter> + <name>RoleTitle_param</name> + <expose v="true" /> + <description>PARAMETER</description> + </entityParameter> + <entityConsumer> + <name>Roles</name> + <dependency> + <name>dependency</name> + <entityName>Role_entity</entityName> + <fieldName>Roles</fieldName> + </dependency> + </entityConsumer> + <entityConsumer> + <name>MetaData</name> + <dependency> + <name>dependency</name> + <entityName>PermissionMetaData_entity</entityName> + <fieldName>MetaData</fieldName> + </dependency> + <children> + <entityParameter> + <name>EntityName_param</name> + <valueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/metadata/children/entityname_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityParameter> + <name>EntityTitle_param</name> + <expose v="true" /> + <description>PARAMETER</description> + </entityParameter> + <entityConsumer> + <name>KeywordConditionType</name> + <dependency> + <name>dependency</name> + <entityName>KeywordEntry_entity</entityName> + <fieldName>SpecificContainerKeywords</fieldName> + </dependency> + <children> + <entityParameter> + <name>ContainerName_param</name> + <valueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/keywordconditiontype/children/containername_param/valueProcess.js</valueProcess> + <expose v="false" /> + </entityParameter> + </children> + </entityConsumer> + <entityConsumer> + <name>KeywordAccessType</name> + <dependency> + <name>dependency</name> + <entityName>KeywordEntry_entity</entityName> + <fieldName>SpecificContainerKeywords</fieldName> + </dependency> + <children> + <entityParameter> + <name>ContainerName_param</name> + <valueProcess>%aditoprj%/entity/PermissionDetail_entity/entityfields/keywordaccesstype/children/containername_param/valueProcess.js</valueProcess> + <expose v="false" /> + </entityParameter> + </children> + </entityConsumer> + </entityFields> + <recordContainers> + <jDitoRecordContainer> + <name>jDito</name> + <jDitoRecordAlias>Data_alias</jDitoRecordAlias> + <contentProcess>%aditoprj%/entity/PermissionDetail_entity/recordcontainers/jdito/contentProcess.js</contentProcess> + <onInsert>%aditoprj%/entity/PermissionDetail_entity/recordcontainers/jdito/onInsert.js</onInsert> + <onUpdate>%aditoprj%/entity/PermissionDetail_entity/recordcontainers/jdito/onUpdate.js</onUpdate> + <onDelete>%aditoprj%/entity/PermissionDetail_entity/recordcontainers/jdito/onDelete.js</onDelete> + <recordFields> + <element>UID.value</element> + <element>ENTITY.value</element> + <element>ROLE.value</element> + <element>FIELD.value</element> + <element>CONDITION.value</element> + <element>ACTION.value</element> + <element>ACCESSTYPE.value</element> + <element>CONDTYPE.value</element> + <element>PARENT.value</element> + </recordFields> + </jDitoRecordContainer> + </recordContainers> +</entity> diff --git a/entity/PermissionDetail_entity/contentTitleProcess.js b/entity/PermissionDetail_entity/contentTitleProcess.js index 919f3af72f..bfaa82dcf8 100644 --- a/entity/PermissionDetail_entity/contentTitleProcess.js +++ b/entity/PermissionDetail_entity/contentTitleProcess.js @@ -1,3 +1,5 @@ +import("system.project"); +import("system.logging"); import("system.vars"); import("system.result"); @@ -15,7 +17,7 @@ switch (vars.get("$field.ACCESSTYPE")) { res += "Record"; break; case "F": - res += vars.get("$field.FIELD"); + res += "Field '" + vars.get("$field.FIELD") + "'"; break; default: res += "Permission"; diff --git a/entity/PermissionDetail_entity/entityfields/field/dropDownProcess.js b/entity/PermissionDetail_entity/entityfields/field/dropDownProcess.js new file mode 100644 index 0000000000..a0b883d9d7 --- /dev/null +++ b/entity/PermissionDetail_entity/entityfields/field/dropDownProcess.js @@ -0,0 +1,24 @@ +import("system.logging"); +import("system.result"); +import("system.vars"); +import("system.project"); + +var entityTitle = vars.get("$param.EntityTitle_param"); +if (entityTitle != undefined && entityTitle != null && entityTitle != "") { + var entityStructure = project.getEntityStructure(entityTitle); + var res = []; + + for (var field in entityStructure.fields) { + field = entityStructure.fields[field]; + if (field.usePermissions == true) { + var name = field.name; + var title = field.title; + if (title != undefined && title != null && title != "") { + res.push([title, title]); + } else { + res.push([name, name]); + } + } + } + result.object(res); +} \ No newline at end of file diff --git a/entity/PermissionMetaData_entity/PermissionMetaData_entity.aod b/entity/PermissionMetaData_entity/PermissionMetaData_entity.aod index 5b8c1e58a3..d8635bbbef 100644 --- a/entity/PermissionMetaData_entity/PermissionMetaData_entity.aod +++ b/entity/PermissionMetaData_entity/PermissionMetaData_entity.aod @@ -1,92 +1,96 @@ -<?xml version="1.0" encoding="UTF-8"?> -<entity xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.3.6" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/entity/1.3.6"> - <name>PermissionMetaData_entity</name> - <majorModelMode>DISTRIBUTED</majorModelMode> - <icon>VAADIN:CONNECT</icon> - <title>Entities</title> - <contentTitleProcess>%aditoprj%/entity/PermissionMetaData_entity/contentTitleProcess.js</contentTitleProcess> - <iconIdProcess>%aditoprj%/entity/PermissionMetaData_entity/iconIdProcess.js</iconIdProcess> - <recordContainer>jDito</recordContainer> - <entityFields> - <entityProvider> - <name>#PROVIDER</name> - </entityProvider> - <entityField> - <name>TITLE</name> - <title>Title</title> - </entityField> - <entityField> - <name>DESCRIPTION</name> - <title>Description</title> - </entityField> - <entityField> - <name>UID</name> - <title>Name</title> - </entityField> - <entityProvider> - <name>MetaData</name> - <recordContainer>jDito</recordContainer> - <dependencies> - <entityDependency> - <name>3b2c9421-5ff0-49a3-99f0-6790f17bd76c</name> - <entityName>PermissionDetail_entity</entityName> - <fieldName>MetaData</fieldName> - <isConsumer v="false" /> - </entityDependency> - </dependencies> - <children> - <entityParameter> - <name>EntityName_param</name> - <valueProcess>%aditoprj%/entity/PermissionMetaData_entity/entityfields/metadata/children/entityname_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityProvider> - <entityConsumer> - <name>PermissionOverviews</name> - <dependency> - <name>dependency</name> - <entityName>PermissionOverview_entity</entityName> - <fieldName>PermissionOverviews</fieldName> - </dependency> - <children> - <entityParameter> - <name>EntityTitle_param</name> - <valueProcess>%aditoprj%/entity/PermissionMetaData_entity/entityfields/permissionoverviews/children/entitytitle_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityConsumer> - <name>PermissionDetails</name> - <dependency> - <name>dependency</name> - <entityName>PermissionDetail_entity</entityName> - <fieldName>Permissions</fieldName> - </dependency> - <children> - <entityParameter> - <name>EntityTitle_param</name> - <valueProcess>%aditoprj%/entity/PermissionMetaData_entity/entityfields/permissiondetails/children/entitytitle_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityParameter> - <name>EntityName_param</name> - <expose v="true" /> - <description>PARAMETER</description> - </entityParameter> - </entityFields> - <recordContainers> - <jDitoRecordContainer> - <name>jDito</name> - <jDitoRecordAlias>_____SYSTEMALIAS</jDitoRecordAlias> - <isPageable v="false" /> - <isFilterable v="true" /> - <contentProcess>%aditoprj%/entity/PermissionMetaData_entity/recordcontainers/jdito/contentProcess.js</contentProcess> - <recordFields> - <element>UID.value</element> - <element>TITLE.value</element> - <element>DESCRIPTION.value</element> - </recordFields> - </jDitoRecordContainer> - </recordContainers> -</entity> +<?xml version="1.0" encoding="UTF-8"?> +<entity xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.3.6" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/entity/1.3.6"> + <name>PermissionMetaData_entity</name> + <majorModelMode>DISTRIBUTED</majorModelMode> + <icon>VAADIN:CONNECT</icon> + <title>Entities</title> + <contentTitleProcess>%aditoprj%/entity/PermissionMetaData_entity/contentTitleProcess.js</contentTitleProcess> + <iconIdProcess>%aditoprj%/entity/PermissionMetaData_entity/iconIdProcess.js</iconIdProcess> + <recordContainer>jDito</recordContainer> + <entityFields> + <entityProvider> + <name>#PROVIDER</name> + </entityProvider> + <entityField> + <name>TITLE</name> + <title>Title</title> + </entityField> + <entityField> + <name>DESCRIPTION</name> + <title>Description</title> + </entityField> + <entityField> + <name>UID</name> + <title>Name</title> + </entityField> + <entityProvider> + <name>MetaData</name> + <recordContainer>jDito</recordContainer> + <dependencies> + <entityDependency> + <name>3b2c9421-5ff0-49a3-99f0-6790f17bd76c</name> + <entityName>PermissionDetail_entity</entityName> + <fieldName>MetaData</fieldName> + <isConsumer v="false" /> + </entityDependency> + </dependencies> + <children> + <entityParameter> + <name>EntityName_param</name> + <valueProcess>%aditoprj%/entity/PermissionMetaData_entity/entityfields/metadata/children/entityname_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityProvider> + <entityConsumer> + <name>PermissionOverviews</name> + <dependency> + <name>dependency</name> + <entityName>PermissionOverview_entity</entityName> + <fieldName>PermissionOverviews</fieldName> + </dependency> + <children> + <entityParameter> + <name>EntityTitle_param</name> + <valueProcess>%aditoprj%/entity/PermissionMetaData_entity/entityfields/permissionoverviews/children/entitytitle_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityConsumer> + <name>PermissionDetails</name> + <dependency> + <name>dependency</name> + <entityName>PermissionDetail_entity</entityName> + <fieldName>Permissions</fieldName> + </dependency> + <children> + <entityParameter> + <name>EntityTitle_param</name> + <valueProcess>%aditoprj%/entity/PermissionMetaData_entity/entityfields/permissiondetails/children/entitytitle_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityParameter> + <name>EntityName_param</name> + <expose v="true" /> + <description>PARAMETER</description> + </entityParameter> + <entityField> + <name>USEPERMISSION</name> + </entityField> + </entityFields> + <recordContainers> + <jDitoRecordContainer> + <name>jDito</name> + <jDitoRecordAlias>_____SYSTEMALIAS</jDitoRecordAlias> + <isPageable v="false" /> + <isFilterable v="true" /> + <contentProcess>%aditoprj%/entity/PermissionMetaData_entity/recordcontainers/jdito/contentProcess.js</contentProcess> + <recordFields> + <element>UID.value</element> + <element>TITLE.value</element> + <element>DESCRIPTION.value</element> + <element>USEPERMISSION.value</element> + </recordFields> + </jDitoRecordContainer> + </recordContainers> +</entity> diff --git a/entity/PermissionMetaData_entity/recordcontainers/jdito/contentProcess.js b/entity/PermissionMetaData_entity/recordcontainers/jdito/contentProcess.js index 244e9ef8df..1edce1c763 100644 --- a/entity/PermissionMetaData_entity/recordcontainers/jdito/contentProcess.js +++ b/entity/PermissionMetaData_entity/recordcontainers/jdito/contentProcess.js @@ -1,24 +1,21 @@ +import("system.logging"); import("system.vars"); import("system.result"); import("system.project"); -var entities = project.getDataModels(project.DATAMODEL_KIND_ENTITY); var selectedEntity = vars.get("$local.idvalues"); var res = []; if (selectedEntity == null) { - for each (let entity in entities) { - if (entity[6] == "true") { - res.push([entity[0], entity[1], entity[2]]); + var allEntities = project.getDataModels(project.DATAMODEL_KIND_ENTITY); + for each (let e in allEntities) { + if (e[6] == "true") { + res.push([e[0], e[1], e[2], e[6]]); } } } else { - for each (let entity in entities) { - if (entity[0] == selectedEntity) { - res.push([entity[0], entity[1], entity[2]]); - break; - } - } + entity = project.getDataModel(project.DATAMODEL_KIND_ENTITY, selectedEntity); + res.push([entity[0], entity[1], entity[2], entity[6]]); } result.object(res.sort()); \ No newline at end of file -- GitLab