This is an automated email from the ASF dual-hosted git repository.

jacopoc pushed a commit to branch release24.09
in repository https://gitbox.apache.org/repos/asf/ofbiz-framework.git


The following commit(s) were added to refs/heads/release24.09 by this push:
     new 42819e5ae1 Fixed: Enhance DataResource permission checks to include 
dataTemplateTypeId validation when updating an existing record
42819e5ae1 is described below

commit 42819e5ae1d5339d3a204ac06b43e69d46a9c0ae
Author: Jacopo Cappellato <[email protected]>
AuthorDate: Fri Jun 5 17:42:47 2026 +0200

    Fixed: Enhance DataResource permission checks to include dataTemplateTypeId 
validation when updating an existing record
    
    (cherry picked from commit 8d8593291183e54a5d697e066fbc7fd4dce027ac)
---
 .../permission/DataResourcePermissionServices.xml  | 26 +++++++++++++++++-----
 1 file changed, 20 insertions(+), 6 deletions(-)

diff --git 
a/applications/content/minilang/permission/DataResourcePermissionServices.xml 
b/applications/content/minilang/permission/DataResourcePermissionServices.xml
index b1d9954410..1c1ec0c802 100644
--- 
a/applications/content/minilang/permission/DataResourcePermissionServices.xml
+++ 
b/applications/content/minilang/permission/DataResourcePermissionServices.xml
@@ -22,14 +22,28 @@
 
     <simple-method method-name="genericDataResourcePermission" 
short-description="Generic Service for DataResource Permissions">
         <!-- Operating with DataResources containing templates requires 
special permission -->
+        <entity-one entity-name="DataResource" value-field="thisDataResource">
+            <field-map field-name="dataResourceId" 
from-field="parameters.dataResourceId"/>
+        </entity-one>
         <if>
             <condition>
-                <and>
-                    <not>
-                        <if-empty field="parameters.dataTemplateTypeId"/>
-                    </not>
-                    <if-compare field="parameters.dataTemplateTypeId" 
value="NONE" operator="not-equals"/>
-                </and>
+                <or>
+                    <and>
+                        <not>
+                            <if-empty field="parameters.dataTemplateTypeId"/>
+                        </not>
+                        <if-compare field="parameters.dataTemplateTypeId" 
value="NONE" operator="not-equals"/>
+                    </and>
+                    <and>
+                        <not>
+                            <if-empty field="thisDataResource"/>
+                        </not>
+                        <not>
+                            <if-empty 
field="thisDataResource.dataTemplateTypeId"/>
+                        </not>
+                        <if-compare 
field="thisDataResource.dataTemplateTypeId" value="NONE" operator="not-equals"/>
+                    </and>
+                </or>
             </condition>
             <then>
                 <set field="inParams.primaryPermission" 
value="CONTENTMGR_SUPER"/>

Reply via email to