Author: hansbak
Date: Fri Oct 9 05:44:36 2009 New Revision: 823414 URL: http://svn.apache.org/viewvc?rev=823414&view=rev Log: move forward and eply actions together, closed the correct parent email, copy orginal and parent email id's Modified: ofbiz/trunk/applications/party/script/org/ofbiz/party/communication/CommunicationEventServices.xml Modified: ofbiz/trunk/applications/party/script/org/ofbiz/party/communication/CommunicationEventServices.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/script/org/ofbiz/party/communication/CommunicationEventServices.xml?rev=823414&r1=823413&r2=823414&view=diff ============================================================================== --- ofbiz/trunk/applications/party/script/org/ofbiz/party/communication/CommunicationEventServices.xml (original) +++ ofbiz/trunk/applications/party/script/org/ofbiz/party/communication/CommunicationEventServices.xml Fri Oct 9 05:44:36 2009 @@ -44,8 +44,24 @@ <clear-field field="newEntity.partyIdTo"/> <set field="newEntity.partyIdFrom" from-field="parameters.partyIdFrom"/> <set field="newEntity.subject" value="Forw: ${newEntity.subject}"/> + <set field="newEntity.origCommEventId" from-field="parameters.origCommEventId"/> + + <!-- Copy Attached Files For Forward Email--> + <entity-and entity-name="CommEventContentAssoc" list="commEventContentAssoc"> + <field-map field-name="communicationEventId" from-field="parameters.origCommEventId"/> + </entity-and> + <if-not-empty field="commEventContentAssoc"> + <iterate entry="createcommEventContentAssoc" list="commEventContentAssoc"> + <if-not-empty field="createcommEventContentAssoc"> + <set field="contentAssoc.contentId" from-field="createcommEventContentAssoc.contentId"/> + <set field="contentAssoc.communicationEventId" from-field="newEntity.communicationEventId"/> + <call-service service-name="createCommEventContentAssoc" in-map-name="contentAssoc"></call-service> + </if-not-empty> + </iterate> + </if-not-empty> </if-not-empty> </if-compare> + <if-empty field="newEntity"> <make-value value-field="newEntity" entity-name="CommunicationEvent"/> </if-empty> @@ -84,6 +100,7 @@ </if-compare> <set field="newEntity.partyIdFrom" from-field="parameters.partyIdFrom" default-value="parameters.userLogin.partyId"/> <set field="newEntity.partyIdTo" from-field="parentCommEvent.partyIdFrom"/> + <set field="newEntity.parentCommEventId" from-field="parentCommEvent.communicationEventId"/> <set field="newEntity.subject" value="RE: ${parentCommEvent.subject}"/> @@ -106,11 +123,29 @@ resultLine += "\n> " + localContent.substring(startChar, localContent.indexOf("\n",startChar)==-1 ? localContent.length() : localContent.indexOf("\n",startChar)); return(resultLine); }"/> + + <!-- copy all other parties on the role list when reply to all --> + <if-compare field="parameters.action" value="REPLYALL" operator="equals"> + <entity-condition entity-name="CommunicationEventRole" list="roles"> + <condition-list combine="and"> + <condition-expr field-name="communicationEventId" from-field="parentCommEvent.communicationEventId"/> + <condition-expr field-name="partyId" operator="not-equals" from-field="newEntity.partyIdTo"/> + <condition-expr field-name="partyId" operator="not-equals" from-field="newEntity.partyIdFrom"/> + </condition-list> + </entity-condition> + <if-not-empty field="roles"> + <iterate entry="role" list="roles"> + <set-service-fields service-name="createCommunicationEventRole" map="role" to-map="newRole"/> + <set field="newRole.communicationEventId" from-field="newEntity.communicationEventId"/> + <call-service service-name="createCommunicationEventRole" in-map-name="newRole"/> + </iterate> + </if-not-empty> + </if-compare> - <!-- set rolestatus from original email to completed --> + <!-- set role status from yhe parent commevent to completed --> <entity-and list="roles" entity-name="CommunicationEventRole"> <field-map field-name="communicationEventId" from-field="parentCommEvent.communicationEventId"/> - <field-map field-name="partyId" from-field="parentCommEvent.partyIdTo"/> + <field-map field-name="partyId" from-field="newEntity.partyIdFrom"/> </entity-and> <if-not-empty field="roles"> <first-from-list list="roles" entry="role"/> @@ -174,23 +209,6 @@ <now-timestamp field="newEntity.entryDate"/> <create-value value-field="newEntity"/> - <if-compare field="parameters.action" value="REPLYALL" operator="equals"> - <entity-condition entity-name="CommunicationEventRole" list="roles"> - <condition-list combine="and"> - <condition-expr field-name="communicationEventId" from-field="parentCommEvent.communicationEventId"/> - <condition-expr field-name="partyId" operator="not-equals" from-field="newEntity.partyIdTo"/> - <condition-expr field-name="partyId" operator="not-equals" from-field="newEntity.partyIdFrom"/> - </condition-list> - </entity-condition> - <if-not-empty field="roles"> - <iterate entry="role" list="roles"> - <set-service-fields service-name="createCommunicationEventRole" map="role" to-map="newRole"/> - <set field="newRole.communicationEventId" from-field="newEntity.communicationEventId"/> - <call-service service-name="createCommunicationEventRole" in-map-name="newRole"/> - </iterate> - </if-not-empty> - </if-compare> - <if-not-empty field="parameters.productId"> <make-value value-field="eventProduct" entity-name="CommunicationEventProduct"/> <set from-field="parameters.productId" field="eventProduct.productId"/> @@ -229,20 +247,6 @@ <call-service service-name="createCommunicationEventRoleWithoutPermission" in-map-name="commRole"/> </if-not-empty> - <!-- Check Attach File For Forward Email--> - <if-compare field="parameters.action" value="FORWARD" operator="equals"> - <entity-and entity-name="CommEventContentAssoc" list="commEventContentAssoc"> - <field-map field-name="communicationEventId" from-field="parameters.origCommEventId"/> - </entity-and> - <iterate entry="createcommEventContentAssoc" list="commEventContentAssoc"> - <if-not-empty field="createcommEventContentAssoc"> - <!-- Create communication event and content association --> - <set field="contentAssoc.contentId" from-field="createcommEventContentAssoc.contentId"/> - <set field="contentAssoc.communicationEventId" from-field="newEntity.communicationEventId"/> - <call-service service-name="createCommEventContentAssoc" in-map-name="contentAssoc"></call-service> - </if-not-empty> - </iterate> - </if-compare> </simple-method> <simple-method method-name="updateCommunicationEvent" |
Free forum by Nabble | Edit this page |