svn commit: r597310 - in /ofbiz/trunk/applications/party: config/PartyUiLabels.properties script/org/ofbiz/party/party/PartyInvitationServices.xml script/org/ofbiz/party/party/PartyPermissionServices.xml servicedef/services.xml

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r597310 - in /ofbiz/trunk/applications/party: config/PartyUiLabels.properties script/org/ofbiz/party/party/PartyInvitationServices.xml script/org/ofbiz/party/party/PartyPermissionServices.xml servicedef/services.xml

apatel-2
Author: apatel
Date: Wed Nov 21 22:32:16 2007
New Revision: 597310

URL: http://svn.apache.org/viewvc?rev=597310&view=rev
Log:
services to accept/decline/cancel party invitation and related security services.

Modified:
    ofbiz/trunk/applications/party/config/PartyUiLabels.properties
    ofbiz/trunk/applications/party/script/org/ofbiz/party/party/PartyInvitationServices.xml
    ofbiz/trunk/applications/party/script/org/ofbiz/party/party/PartyPermissionServices.xml
    ofbiz/trunk/applications/party/servicedef/services.xml

Modified: ofbiz/trunk/applications/party/config/PartyUiLabels.properties
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/config/PartyUiLabels.properties?rev=597310&r1=597309&r2=597310&view=diff
==============================================================================
--- ofbiz/trunk/applications/party/config/PartyUiLabels.properties (original)
+++ ofbiz/trunk/applications/party/config/PartyUiLabels.properties Wed Nov 21 22:32:16 2007
@@ -302,6 +302,9 @@
 PartyInitialReferer=Initial Referer
 PartyInitialRequest=Initial Request
 PartyInitialUserAgent=Initial User Agent
+PartyInvitationAccAndDecPermissionError=You do not have permission to accept or decline Party Invitation
+PartyInvitationCancelPermissionError=You do not have permission to cancel the Party Invitation
+PartyInvitationNotValidError=This is not a valid Party Invitation
 PartyIpAddressSuccessfullyCreated=Web IP Address successfully created.
 PartyIpAddressSuccessfullyUpdated=Web IP Address successfully updated.
 PartyIsUsps=Is USPS

Modified: ofbiz/trunk/applications/party/script/org/ofbiz/party/party/PartyInvitationServices.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/script/org/ofbiz/party/party/PartyInvitationServices.xml?rev=597310&r1=597309&r2=597310&view=diff
==============================================================================
--- ofbiz/trunk/applications/party/script/org/ofbiz/party/party/PartyInvitationServices.xml (original)
+++ ofbiz/trunk/applications/party/script/org/ofbiz/party/party/PartyInvitationServices.xml Wed Nov 21 22:32:16 2007
@@ -58,5 +58,41 @@
         <entity-one entity-name="PartyInvitationRoleAssoc" value-name="lookedUpValue"/>
         <remove-value value-name="lookedUpValue"/>
     </simple-method>
+    <simple-method method-name="acceptPartyInvitation" short-description="Accept Party Invitation">
+        <entity-and entity-name="PartyInvitationGroupAssoc" list-name="partyInvitationGroupAssocs">
+            <field-map field-name="partyInvitationId" env-name="parameters.partyInvitationId"/>
+        </entity-and>
+        <if-not-empty field-name="partyInvitationGroupAssocs">
+            <set field="createPartyRelationshipCtx.partyIdTo" from-field="parameters.partyId"/>
+            <set field="createPartyRelationshipCtx.partyRelationshipTypeId" value="GROUP_ROLLUP"/>            
+            <iterate list-name="partyInvitationGroupAssocs" entry-name="partyInvitationGroupAssoc">
+                <set field="createPartyRelationshipCtx.partyIdFrom" from-field="partyInvitationGroupAssoc.partyIdTo"/>
+                <call-service service-name="createPartyRelationship" in-map-name="createPartyRelationshipCtx"/>
+            </iterate>
+        </if-not-empty>
+        <entity-and entity-name="PartyInvitationRoleAssoc" list-name="partyInvitationRoleAssocs">
+            <field-map field-name="partyInvitationId" env-name="parameters.partyInvitationId"/>
+        </entity-and>
+        <if-not-empty field-name="partyInvitationRoleAssocs">
+            <set field="createPartyRoleCtx.partyId" from-field="parameters.partyId"/>
+            <iterate list-name="partyInvitationRoleAssocs" entry-name="partyInvitationRoleAssoc">
+                <set field="createPartyRoleCtx.roleTypeId" from-field="partyInvitationRoleAssoc.roleTypeId"/>
+                <call-service service-name="createPartyRole" in-map-name="createPartyRoleCtx"/>
+            </iterate>
+        </if-not-empty>
+        <set field="updatePartyInvitationCtx.partyInvitationId" from-field="parameters.partyInvitationId"/>
+        <set field="updatePartyInvitationCtx.statusId" value="PARTYINV_ACCEPTED"/>
+        <call-service service-name="updatePartyInvitation" in-map-name="updatePartyInvitationCtx"/>
+    </simple-method>
+    <simple-method method-name="declinePartyInvitation" short-description="Decline Party Invitation">
+        <set field="updatePartyInvitationCtx.partyInvitationId" from-field="parameters.partyInvitationId"/>
+        <set field="updatePartyInvitationCtx.statusId" value="PARTYINV_DECLINED"/>
+        <call-service service-name="updatePartyInvitation" in-map-name="updatePartyInvitationCtx"/>
+    </simple-method>
+    <simple-method method-name="cancelPartyInvitation" short-description="Cancel Party Invitation">
+        <set field="updatePartyInvitationCtx.partyInvitationId" from-field="parameters.partyInvitationId"/>
+        <set field="updatePartyInvitationCtx.statusId" value="PARTYINV_CANCELLED"/>
+        <call-service service-name="updatePartyInvitation" in-map-name="updatePartyInvitationCtx"/>
+    </simple-method>
 
 </simple-methods>

Modified: ofbiz/trunk/applications/party/script/org/ofbiz/party/party/PartyPermissionServices.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/script/org/ofbiz/party/party/PartyPermissionServices.xml?rev=597310&r1=597309&r2=597310&view=diff
==============================================================================
--- ofbiz/trunk/applications/party/script/org/ofbiz/party/party/PartyPermissionServices.xml (original)
+++ ofbiz/trunk/applications/party/script/org/ofbiz/party/party/PartyPermissionServices.xml Wed Nov 21 22:32:16 2007
@@ -1,126 +1,228 @@
-<?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.
--->
-
-<simple-methods xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/simple-methods.xsd">
-
-    <!-- ============== Basic Permission Checking ============= -->
-
-    <!-- Returns hasPermission=true if user has one of the base PARTYMGR CRUD+ADMIN permissions -->
-    <simple-method method-name="basePermissionCheck" short-description="Party Manager base permission logic">
-        <set field="primaryPermission" value="PARTYMGR"/>
-        <call-simple-method method-name="genericBasePermissionCheck" xml-resource="component://common/script/org/ofbiz/common/permission/CommonPermissionServices.xml"/>
-    </simple-method>
-
-    <!-- Returns hasPermission=true if userLogin partyId equals partyId parameter -->
-    <simple-method method-name="partyIdPermissionCheck" short-description="Party ID Permission Check">
-        <if-empty field-name="partyId">
-            <set field="partyId" from-field="parameters.partyId"/>
-        </if-empty>
-        <if>
-            <condition>
-                <and>
-                    <not><if-empty field-name="partyId"/></not>
-                    <not><if-empty field-name="userLogin.partyId"/></not>
-                    <if-compare-field field-name="partyId" operator="equals" to-field-name="userLogin.partyId"/>
-                </and>
-            </condition>
-            <then>
-                <set field="hasPermission" type="Boolean" value="true"/>
-            </then>
-            <else>
-                <set field="resourceDescription" from-field="parameters.resourceDescription"/>
-                <if-empty field-name="resourceDescription">
-                    <property-to-field resource="CommonUiLabels" property="CommonPermissionThisOperation" field-name="resourceDescription"/>
-                </if-empty>
-                <property-to-field resource="PartyUiLabels" property="PartyPermissionErrorPartyId" field-name="failMessage"/>
-                <set field="hasPermission" type="Boolean" value="false"/>
-                <field-to-result field-name="failMessage"/>
-            </else>
-        </if>
-        <field-to-result field-name="hasPermission"/>
-    </simple-method>
-
-    <!-- Returns hasPermission=true if userLogin party equals partyId parameter OR
-        user has one of the base PARTYMGR CRUD+ADMIN permissions -->
-    <simple-method method-name="basePlusPartyIdPermissionCheck" short-description="Base Permission Plus Party ID Permission Check">
-        <call-simple-method method-name="basePermissionCheck"/>
-        <if-compare field-name="hasPermission" operator="not-equals" value="true">
-            <call-simple-method method-name="partyIdPermissionCheck"/>
-        </if-compare>
-    </simple-method>
-
-    <!-- ============== Additional Permission Checking ============= -->
-
-    <!-- Returns hasPermission=true if user has one of the base PARTYMGR or PARTYMGR_STS CRUD+ADMIN permissions -->
-    <simple-method method-name="partyStatusPermissionCheck" short-description="Party status permission logic">
-        <set field="altPermission" value="PARTYMGR_STS"/>
-        <call-simple-method method-name="basePermissionCheck"/>
-    </simple-method>
-
-    <!-- Returns hasPermission=true if userLogin partyId equals partyId parameter OR
-         user has one of the base PARTYMGR or PARTYMGR_GRP CRUD+ADMIN permissions -->
-    <simple-method method-name="partyGroupPermissionCheck" short-description="Party group permission logic">
-        <set field="altPermission" value="PARTYMGR_GRP"/>
-        <call-simple-method method-name="basePlusPartyIdPermissionCheck"/>
-    </simple-method>
-
-    <!-- Returns hasPermission=true if user has one of the base PARTYMGR or PARTYMGR_SRC CRUD+ADMIN permissions -->
-    <simple-method method-name="partyDatasourcePermissionCheck" short-description="Party datasource permission logic">
-        <set field="altPermission" value="PARTYMGR_SRC"/>
-        <call-simple-method method-name="basePermissionCheck"/>
-    </simple-method>
-
-    <!-- Returns hasPermission=true if user has one of the base PARTYMGR or PARTYMGR_ROLE CRUD+ADMIN permissions -->
-    <simple-method method-name="partyRolePermissionCheck" short-description="Party role permission logic">
-        <set field="altPermission" value="PARTYMGR_ROLE"/>
-        <call-simple-method method-name="basePlusPartyIdPermissionCheck"/>
-    </simple-method>
-
-    <!-- Returns hasPermission=true if user has one of the base PARTYMGR or PARTYMGR_REL CRUD+ADMIN permissions -->
-    <simple-method method-name="partyRelationshipPermissionCheck" short-description="Party relationship permission logic">
-        <if-empty field-name="parameters.partyIdFrom">
-            <set field="parameters.partyIdFrom" from-field="userLogin.partyId"/>
-            <set field="hasPermission" type="Boolean" value="true"/>
-            <field-to-result field-name="hasPermission"/>
-            <else>
-                <set field="altPermission" value="PARTYMGR_REL"/>
-                <call-simple-method method-name="basePermissionCheck"/>
-            </else>
-        </if-empty>
-    </simple-method>
-
-    <!-- Returns hasPermission=true if userLogin partyId equals partyId parameter OR
-         user has one of the base PARTYMGR or PARTYMGR_PCM CRUD+ADMIN permissions -->
-    <simple-method method-name="partyContactMechPermissionCheck" short-description="Party contact mech permission logic">
-        <if-empty map-name="parameters" field-name="partyId">
-            <set field="parameters.partyId" from-field="userLogin.partyId"/>
-        </if-empty>
-        <if-compare-field field-name="partyId" map-name="parameters" to-map-name="userLogin" operator="equals">
+<?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.
+-->
+
+<simple-methods xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/simple-methods.xsd">
+
+    <!-- ============== Basic Permission Checking ============= -->
+
+    <!-- Returns hasPermission=true if user has one of the base PARTYMGR CRUD+ADMIN permissions -->
+    <simple-method method-name="basePermissionCheck" short-description="Party Manager base permission logic">
+        <set field="primaryPermission" value="PARTYMGR"/>
+        <call-simple-method method-name="genericBasePermissionCheck" xml-resource="component://common/script/org/ofbiz/common/permission/CommonPermissionServices.xml"/>
+    </simple-method>
+
+    <!-- Returns hasPermission=true if userLogin partyId equals partyId parameter -->
+    <simple-method method-name="partyIdPermissionCheck" short-description="Party ID Permission Check">
+        <if-empty field-name="partyId">
+            <set field="partyId" from-field="parameters.partyId"/>
+        </if-empty>
+        <if>
+            <condition>
+                <and>
+                    <not><if-empty field-name="partyId"/></not>
+                    <not><if-empty field-name="userLogin.partyId"/></not>
+                    <if-compare-field field-name="partyId" operator="equals" to-field-name="userLogin.partyId"/>
+                </and>
+            </condition>
+            <then>
+                <set field="hasPermission" type="Boolean" value="true"/>
+            </then>
+            <else>
+                <set field="resourceDescription" from-field="parameters.resourceDescription"/>
+                <if-empty field-name="resourceDescription">
+                    <property-to-field resource="CommonUiLabels" property="CommonPermissionThisOperation" field-name="resourceDescription"/>
+                </if-empty>
+                <property-to-field resource="PartyUiLabels" property="PartyPermissionErrorPartyId" field-name="failMessage"/>
+                <set field="hasPermission" type="Boolean" value="false"/>
+                <field-to-result field-name="failMessage"/>
+            </else>
+        </if>
+        <field-to-result field-name="hasPermission"/>
+    </simple-method>
+
+    <!-- Returns hasPermission=true if userLogin party equals partyId parameter OR
+        user has one of the base PARTYMGR CRUD+ADMIN permissions -->
+    <simple-method method-name="basePlusPartyIdPermissionCheck" short-description="Base Permission Plus Party ID Permission Check">
+        <call-simple-method method-name="basePermissionCheck"/>
+        <if-compare field-name="hasPermission" operator="not-equals" value="true">
+            <call-simple-method method-name="partyIdPermissionCheck"/>
+        </if-compare>
+    </simple-method>
+
+    <!-- ============== Additional Permission Checking ============= -->
+
+    <!-- Returns hasPermission=true if user has one of the base PARTYMGR or PARTYMGR_STS CRUD+ADMIN permissions -->
+    <simple-method method-name="partyStatusPermissionCheck" short-description="Party status permission logic">
+        <set field="altPermission" value="PARTYMGR_STS"/>
+        <call-simple-method method-name="basePermissionCheck"/>
+    </simple-method>
+
+    <!-- Returns hasPermission=true if userLogin partyId equals partyId parameter OR
+         user has one of the base PARTYMGR or PARTYMGR_GRP CRUD+ADMIN permissions -->
+    <simple-method method-name="partyGroupPermissionCheck" short-description="Party group permission logic">
+        <set field="altPermission" value="PARTYMGR_GRP"/>
+        <call-simple-method method-name="basePlusPartyIdPermissionCheck"/>
+    </simple-method>
+
+    <!-- Returns hasPermission=true if user has one of the base PARTYMGR or PARTYMGR_SRC CRUD+ADMIN permissions -->
+    <simple-method method-name="partyDatasourcePermissionCheck" short-description="Party datasource permission logic">
+        <set field="altPermission" value="PARTYMGR_SRC"/>
+        <call-simple-method method-name="basePermissionCheck"/>
+    </simple-method>
+
+    <!-- Returns hasPermission=true if user has one of the base PARTYMGR or PARTYMGR_ROLE CRUD+ADMIN permissions -->
+    <simple-method method-name="partyRolePermissionCheck" short-description="Party role permission logic">
+        <set field="altPermission" value="PARTYMGR_ROLE"/>
+        <call-simple-method method-name="basePlusPartyIdPermissionCheck"/>
+    </simple-method>
+
+    <!-- Returns hasPermission=true if user has one of the base PARTYMGR or PARTYMGR_REL CRUD+ADMIN permissions -->
+    <simple-method method-name="partyRelationshipPermissionCheck" short-description="Party relationship permission logic">
+        <if-empty field-name="parameters.partyIdFrom">
+            <set field="parameters.partyIdFrom" from-field="userLogin.partyId"/>
+            <set field="hasPermission" type="Boolean" value="true"/>
+            <field-to-result field-name="hasPermission"/>
+            <else>
+                <set field="altPermission" value="PARTYMGR_REL"/>
+                <call-simple-method method-name="basePermissionCheck"/>
+            </else>
+        </if-empty>
+    </simple-method>
+
+    <!-- Returns hasPermission=true if userLogin partyId equals partyId parameter OR
+         user has one of the base PARTYMGR or PARTYMGR_PCM CRUD+ADMIN permissions -->
+    <simple-method method-name="partyContactMechPermissionCheck" short-description="Party contact mech permission logic">
+        <if-empty map-name="parameters" field-name="partyId">
+            <set field="parameters.partyId" from-field="userLogin.partyId"/>
+        </if-empty>
+        <if-compare-field field-name="partyId" map-name="parameters" to-map-name="userLogin" operator="equals">
             <set field="hasPermission" type="Boolean" value="true"/>
             <field-to-result field-name="hasPermission"/>
             
             <else>
                 <set field="altPermission" value="PARTYMGR_PCM"/>
                 <call-simple-method method-name="basePermissionCheck"/>
-            </else>
-        </if-compare-field>
-    </simple-method>
-</simple-methods>
+            </else>
+        </if-compare-field>
+    </simple-method>
+    
+    <!-- Accept/Decline/Cancel PartyInvitation Permission Checks -->
+    <simple-method method-name="accAndDecPartyInvitationPermissionCheck" short-description="Accept and Decline PartyInvitation Permission Logic">
+        <set field="hasPermission" type="Boolean" value="false"/>
+        <if-has-permission permission="PARTYMGR_UPDATE" action="_UPDATE">
+            <set field="hasPermission" type="Boolean" value="true"/>
+            <field-to-result field-name="hasPermission"/>
+        </if-has-permission>
+        <if-compare field-name="hasPermission" operator="not-equals" value="true">
+            <entity-one entity-name="PartyInvitation" value-name="partyInvitation"/>
+            <if-empty field-name="partyInvitation.partyId">
+                <if-empty field-name="partyInvitation.emailAddress">
+                    <add-error>
+                        <fail-property property="PartyInvitationNotValidError" resource="PartyUiLabels"/>
+                    </add-error>
+                <else>
+                    <set field="findPartyCtx.address" from-field="partyInvitation.emailAddress"/>
+                    <call-service service-name="findPartyFromEmailAddress" in-map-name="findPartyCtx">
+                        <result-to-field result-name="partyId" field-name="partyId"/>
+                    </call-service>
+                    <if-not-empty field-name="partyId">
+                        <if-compare-field field-name="partyId" operator="equals" to-field-name="userLogin.partyId">
+                            <set field="hasPermission" type="Boolean" value="true"/>
+                            <field-to-result field-name="hasPermission"/>
+                        </if-compare-field>
+                    <else>
+                        <add-error>
+                            <fail-property property="PartyInvitationNotValidError" resource="PartyUiLabels"/>
+                        </add-error>
+                    </else>
+                    </if-not-empty>
+                </else>    
+                </if-empty>
+            <else>
+                <if-compare-field field-name="partyInvitation.partyId" operator="equals" to-field-name="userLogin.partyId">
+                    <set field="hasPermission" type="Boolean" value="true"/>
+                    <field-to-result field-name="hasPermission"/>
+                </if-compare-field>
+            </else>
+            </if-empty>
+            <check-errors/>
+        </if-compare>
+        <if-compare field-name="hasPermission" operator="not-equals" value="true">
+            <property-to-field property="PartyInvitationAccAndDecPermissionError" field-name="failMessage" resource="PartyUiLabels"/>
+            <field-to-result field-name="hasPermission"/>
+            <field-to-result field-name="failMessage"/>
+        </if-compare>
+    </simple-method>
+    <simple-method method-name="cancelPartyInvitationPermissionCheck" short-description="Cancel PartyInvitation Permission Logic">
+        <set field="hasPermission" type="Boolean" value="false"/>
+        <if-has-permission permission="PARTYMGR_UPDATE" action="_UPDATE">
+            <set field="hasPermission" type="Boolean" value="true"/>
+            <field-to-result field-name="hasPermission"/>
+        </if-has-permission>
+        <if-compare field-name="hasPermission" operator="not-equals" value="true">
+            <entity-one entity-name="PartyInvitation" value-name="partyInvitation"/>
+            <if-not-empty field-name="partyInvitation.partyIdFrom">
+                <if-compare-field field-name="partyInvitation.partyIdFrom" operator="equals" to-field-name="userLogin.partyId">
+                    <set field="hasPermission" type="Boolean" value="true"/>
+                    <field-to-result field-name="hasPermission"/>
+                </if-compare-field>
+            </if-not-empty>
+            <if-compare field-name="hasPermission" operator="not-equals" value="true">
+                <if-empty field-name="partyInvitation.partyId">
+                    <if-empty field-name="partyInvitation.emailAddress">
+                        <add-error>
+                            <fail-property property="PartyInvitationNotValidError" resource="PartyUiLabels"/>
+                        </add-error>
+                    <else>
+                        <set field="findPartyCtx.address" from-field="partyInvitation.emailAddress"/>
+                        <call-service service-name="findPartyFromEmailAddress" in-map-name="findPartyCtx">
+                            <result-to-field result-name="partyId" field-name="partyId"/>
+                        </call-service>
+                        <if-not-empty field-name="partyId">
+                            <if-compare-field field-name="partyId" operator="equals" to-field-name="userLogin.partyId">
+                                <set field="hasPermission" type="Boolean" value="true"/>
+                                <field-to-result field-name="hasPermission"/>
+                            </if-compare-field>
+                        <else>
+                            <add-error>
+                                <fail-property property="PartyInvitationNotValidError" resource="PartyUiLabels"/>
+                            </add-error>
+                        </else>
+                        </if-not-empty>
+                    </else>    
+                    </if-empty>
+                <else>
+                    <if-compare-field field-name="partyInvitation.partyId" operator="equals" to-field-name="userLogin.partyId">
+                        <set field="hasPermission" type="Boolean" value="true"/>
+                        <field-to-result field-name="hasPermission"/>
+                    </if-compare-field>
+                </else>
+                </if-empty>
+                <check-errors/>
+            </if-compare>
+        </if-compare>
+        <if-compare field-name="hasPermission" operator="not-equals" value="true">
+            <property-to-field property="PartyInvitationCancelPermissionError" field-name="failMessage" resource="PartyUiLabels"/>
+            <field-to-result field-name="hasPermission"/>
+            <field-to-result field-name="failMessage"/>
+        </if-compare>
+    </simple-method>
+</simple-methods>

Modified: ofbiz/trunk/applications/party/servicedef/services.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/servicedef/services.xml?rev=597310&r1=597309&r2=597310&view=diff
==============================================================================
--- ofbiz/trunk/applications/party/servicedef/services.xml (original)
+++ ofbiz/trunk/applications/party/servicedef/services.xml Wed Nov 21 22:32:16 2007
@@ -872,6 +872,22 @@
         <description>Remove PartyInvitationRoleAssoc</description>
         <auto-attributes entity-name="PartyInvitationRoleAssoc" include="pk" mode="IN" optional="false"/>
     </service>
+    <service name="acceptPartyInvitation" engine="simple"
+            location="component://party/script/org/ofbiz/party/party/PartyInvitationServices.xml" invoke="acceptPartyInvitation">
+        <permission-service service-name="accAndDecPartyInvitationPermissionCheck"/>
+        <attribute name="partyInvitationId" type="String" mode="IN" optional="false"/>
+        <attribute name="partyId" type="String" mode="IN" optional="false"/>
+    </service>
+    <service name="declinePartyInvitation" engine="simple"
+            location="component://party/script/org/ofbiz/party/party/PartyInvitationServices.xml" invoke="declinePartyInvitation">
+        <permission-service service-name="accAndDecPartyInvitationPermissionCheck"/>
+        <attribute name="partyInvitationId" type="String" mode="IN" optional="false"/>
+    </service>
+    <service name="cancelPartyInvitation" engine="simple"
+            location="component://party/script/org/ofbiz/party/party/PartyInvitationServices.xml" invoke="cancelPartyInvitation">
+        <permission-service service-name="cancelPartyInvitationPermissionCheck"/>
+        <attribute name="partyInvitationId" type="String" mode="IN" optional="false"/>
+    </service>
 
     <!-- Permission checking services-->
     <service name="partyBasePermissionCheck" engine="simple"
@@ -943,5 +959,25 @@
         </description>
         <implements service="permissionInterface"/>
         <attribute name="partyId" type="String" mode="IN" optional="true"/>
+    </service>
+    <service name="accAndDecPartyInvitationPermissionCheck" engine="simple"
+            location="component://party/script/org/ofbiz/party/party/PartyPermissionServices.xml" invoke="accAndDecPartyInvitationPermissionCheck">
+        <description>
+            Performs accept and decline PartyInvitation security check. The userLogin partyId must equal the
+            partyIdTo in PartyInvitation OR partyId fetched using emailAdress in PartyInvitation.
+            The user with PARTYMGR_UPDATE permission can also perform this function.
+        </description>
+        <implements service="permissionInterface"/>
+        <attribute name="partyInvitationId" type="String" mode="IN" optional="false"/>
+    </service>
+    <service name="cancelPartyInvitationPermissionCheck" engine="simple"
+            location="component://party/script/org/ofbiz/party/party/PartyPermissionServices.xml" invoke="cancelPartyInvitationPermissionCheck">
+        <description>
+            Performs cancel PartyInvitation security check. The userLogin partyId must equal the
+            partyId/partyIdFrom in PartyInvitation OR partyId fetched using emailAdress in PartyInvitation.
+            The user with PARTYMGR_UPDATE permission can also perform this function.
+        </description>
+        <implements service="permissionInterface"/>
+        <attribute name="partyInvitationId" type="String" mode="IN" optional="false"/>
     </service>
 </services>