Author: apatel
Date: Wed Sep 12 15:47:44 2007 New Revision: 575113 URL: http://svn.apache.org/viewvc?rev=575113&view=rev Log: Applying patch from Adrian with some improvements. Thanks Adrian. Added: ofbiz/trunk/specialpurpose/assetmaint/data/ ofbiz/trunk/specialpurpose/assetmaint/data/AssetMaintSecurityData.xml ofbiz/trunk/specialpurpose/assetmaint/servicedef/secas.xml Modified: ofbiz/trunk/specialpurpose/assetmaint/ofbiz-component.xml ofbiz/trunk/specialpurpose/assetmaint/script/org/ofbiz/assetmaint/FixedAssetMaintEvents.xml ofbiz/trunk/specialpurpose/assetmaint/servicedef/services.xml Added: ofbiz/trunk/specialpurpose/assetmaint/data/AssetMaintSecurityData.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/assetmaint/data/AssetMaintSecurityData.xml?rev=575113&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/assetmaint/data/AssetMaintSecurityData.xml (added) +++ ofbiz/trunk/specialpurpose/assetmaint/data/AssetMaintSecurityData.xml Wed Sep 12 15:47:44 2007 @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License. +--> +<entity-engine-xml> + <!-- Asset Maintenance security --> + <SecurityPermission description="ALL Asset Maintenance operations." permissionId="ASSETMAINT_ADMIN"/> + <SecurityPermission description="Asset Maintenance View permission." permissionId="ASSETMAINT_VIEW"/> + <SecurityPermission description="Asset Maintenance Create operations." permissionId="ASSETMAINT_CREATE"/> + <SecurityPermission description="Asset Maintenance Update operations." permissionId="ASSETMAINT_UPDATE"/> + <SecurityPermission description="Asset Maintenance Delete operations." permissionId="ASSETMAINT_DELETE"/> + + <SecurityGroup description="Asset Maintenance Admin group, has all maintenance permissions." groupId="ASSETMAINTADMIN"/> + <SecurityGroup description="Asset Maintenance Technician group, has view and update." groupId="ASSETMAINTTECH"/> + + <SecurityGroupPermission groupId="ASSETMAINTADMIN" permissionId="ACCOUNTING_CREATE"/> + <SecurityGroupPermission groupId="ASSETMAINTADMIN" permissionId="ASSETMAINT_ADMIN"/> + <SecurityGroupPermission groupId="ASSETMAINTADMIN" permissionId="ASSETMAINT_VIEW"/> + + <SecurityGroupPermission groupId="ASSETMAINTTECH" permissionId="ASSETMAINT_VIEW"/> + <SecurityGroupPermission groupId="ASSETMAINTTECH" permissionId="ASSETMAINT_UPDATE"/> + <SecurityGroupPermission groupId="ASSETMAINTTECH" permissionId="ACCOUNTING_UPDATE"/> + + <SecurityGroupPermission groupId="FULLADMIN" permissionId="ASSETMAINT_ADMIN"/> +</entity-engine-xml> Modified: ofbiz/trunk/specialpurpose/assetmaint/ofbiz-component.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/assetmaint/ofbiz-component.xml?rev=575113&r1=575112&r2=575113&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/assetmaint/ofbiz-component.xml (original) +++ ofbiz/trunk/specialpurpose/assetmaint/ofbiz-component.xml Wed Sep 12 15:47:44 2007 @@ -37,13 +37,13 @@ <!-- service resources: model(s), eca(s) and group definitions --> <service-resource type="model" loader="main" location="servicedef/services.xml"/> - + <service-resource type="eca" loader="main" location="servicedef/secas.xml"/> <webapp name="assetmaint" title="AssetMaint" server="default-server" location="webapp/assetmaint" - base-permission="OFBTOOLS" + base-permission="ASSETMAINT" mount-point="/assetmaint" - app-bar-display="false"/> + app-bar-display="true"/> </ofbiz-component> Modified: ofbiz/trunk/specialpurpose/assetmaint/script/org/ofbiz/assetmaint/FixedAssetMaintEvents.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/assetmaint/script/org/ofbiz/assetmaint/FixedAssetMaintEvents.xml?rev=575113&r1=575112&r2=575113&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/assetmaint/script/org/ofbiz/assetmaint/FixedAssetMaintEvents.xml (original) +++ ofbiz/trunk/specialpurpose/assetmaint/script/org/ofbiz/assetmaint/FixedAssetMaintEvents.xml Wed Sep 12 15:47:44 2007 @@ -68,5 +68,27 @@ <call-service service-name="createWorkEffortAndAssoc" in-map-name="createWorkEffortAndAssocCtx"/> <check-errors/> </simple-method> + + <!-- ==============Permission Checking Service============= --> + <simple-method method-name="assetMaintPermissionCheck" short-description="Asset Maintenance permission logic"> + <if-has-permission permission="ASSETMAINT_ADMIN"> + <set field="hasPermission" type="Boolean" value="true"/> + <else> + <if-has-permission permission="ASSETMAINT" action="_${parameters.mainAction}"> + <set field="hasPermission" type="Boolean" value="true"/> + <else> + <set field="hasPermission" type="Boolean" value="false"/> + <set field="failMessage" value="Security Error: you must have one of the following permissions: + ACCOUNTING_${parameters.mainAction}, ACCOUNTING_ROLE_${parameters.mainAction}, ACCOUNTING_ADMIN, ASSETMAINT_${parameters.mainAction}, ASSETMAINT_ADMIN"/> + <field-to-result field-name="failMessage"/> + </else> + </if-has-permission> + </else> + </if-has-permission> + <field-to-result field-name="hasPermission"/> + <log level="info" message="assetMaintPermissionCheck ran"/> + <log level="info" message="hasPermission = ${hasPermission}"/> + </simple-method> + </simple-methods> - \ No newline at end of file + Added: ofbiz/trunk/specialpurpose/assetmaint/servicedef/secas.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/assetmaint/servicedef/secas.xml?rev=575113&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/assetmaint/servicedef/secas.xml (added) +++ ofbiz/trunk/specialpurpose/assetmaint/servicedef/secas.xml Wed Sep 12 15:47:44 2007 @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License. +--> + +<service-eca xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/service-eca.xsd"> + + <!-- ECAs used to extend service permission checking --> + <eca service="fixedAssetPermissionCheck" event="return" run-on-failure="true" run-on-error="true"> + <condition field-name="hasPermission" operator="equals" value="false" type="Boolean"/> + <action service="assetMaintPermissionCheck" mode="sync"/> + </eca> + +</service-eca> Modified: ofbiz/trunk/specialpurpose/assetmaint/servicedef/services.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/assetmaint/servicedef/services.xml?rev=575113&r1=575112&r2=575113&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/assetmaint/servicedef/services.xml (original) +++ ofbiz/trunk/specialpurpose/assetmaint/servicedef/services.xml Wed Sep 12 15:47:44 2007 @@ -31,4 +31,9 @@ <attribute type="String" mode="IN" name="facilityId" optional="false"/> </service> + <service name="assetMaintPermissionCheck" engine="simple" + location="component://assetmaint/script/org/ofbiz/assetmaint/FixedAssetMaintEvents.xml" invoke="assetMaintPermissionCheck"> + <description>Asset Maintentance Permission Checking Logic</description> + <implements service="permissionInterface"/> + </service> </services> |
Free forum by Nabble | Edit this page |