svn commit: r774585 - in /ofbiz/trunk/applications/marketing: script/org/ofbiz/marketing/contact/ContactListServices.xml servicedef/secas.xml

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

svn commit: r774585 - in /ofbiz/trunk/applications/marketing: script/org/ofbiz/marketing/contact/ContactListServices.xml servicedef/secas.xml

jaz-3
Author: jaz
Date: Wed May 13 23:06:25 2009
New Revision: 774585

URL: http://svn.apache.org/viewvc?rev=774585&view=rev
Log:
update contact list comm status now triggered using the parent comm event ID; auto marks bounced mails and triggers the invalidation of email addresses from list when a bounce happens.

Modified:
    ofbiz/trunk/applications/marketing/script/org/ofbiz/marketing/contact/ContactListServices.xml
    ofbiz/trunk/applications/marketing/servicedef/secas.xml

Modified: ofbiz/trunk/applications/marketing/script/org/ofbiz/marketing/contact/ContactListServices.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/marketing/script/org/ofbiz/marketing/contact/ContactListServices.xml?rev=774585&r1=774584&r2=774585&view=diff
==============================================================================
--- ofbiz/trunk/applications/marketing/script/org/ofbiz/marketing/contact/ContactListServices.xml (original)
+++ ofbiz/trunk/applications/marketing/script/org/ofbiz/marketing/contact/ContactListServices.xml Wed May 13 23:06:25 2009
@@ -311,13 +311,18 @@
     </simple-method>
     
     <simple-method method-name="updateCommStatusFromCommEvent" short-description="Update ContactList Comm Status from CommunicationEvent">
-        <entity-and list="clcs" entity-name="ContactListCommStatus">
-            <field-map field-name="communicationEventId" from-field="parameters.communicationEventId"/>
-        </entity-and>
-        <iterate entry="commStatus" list="clcs">
-            <set-service-fields service-name="updateContactListCommStatus" to-map="updateStatusCtx" map="commStatus"/>
-            <set field="updateStatusCtx.statusId" from-field="parameters.statusId"/>
-            <call-service service-name="updateContactListCommStatus" in-map-name="updateStatusCtx"/>
-        </iterate>                
+        <entity-one entity-name="CommunicationEvent" value-field="commEvent"/>
+        <if-not-empty field="commEvent">
+            <entity-and list="clcs" entity-name="ContactListCommStatus">
+                <field-map field-name="communicationEventId" from-field="commEvent.parentCommEventId"/>
+                <field-map field-name="partyId" from-field="commEvent.partyIdTo"/>
+                <field-map field-name="contactMechId" from-field="commEvent.contactMechIdTo"/>
+            </entity-and>
+            <iterate entry="commStatus" list="clcs">
+                <set-service-fields service-name="updateContactListCommStatus" to-map="updateStatusCtx" map="commStatus"/>
+                <set field="updateStatusCtx.statusId" from-field="parameters.statusId"/>
+                <call-service service-name="updateContactListCommStatus" in-map-name="updateStatusCtx"/>
+            </iterate>
+        </if-not-empty>                                      
     </simple-method>      
 </simple-methods>

Modified: ofbiz/trunk/applications/marketing/servicedef/secas.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/marketing/servicedef/secas.xml?rev=774585&r1=774584&r2=774585&view=diff
==============================================================================
--- ofbiz/trunk/applications/marketing/servicedef/secas.xml (original)
+++ ofbiz/trunk/applications/marketing/servicedef/secas.xml Wed May 13 23:06:25 2009
@@ -37,6 +37,7 @@
     <!--  update contact list party for bounced messages -->
     <eca service="updateContactListCommStatus" event="commit">
         <condition field-name="statusId" operator="equals" value="COM_BOUNCED"/>
+        <condition field-name="contactMechId" operator="is-not-empty"/>
         <condition field-name="partyId" operator="is-not-empty"/>
         <set field-name="statusId" value="CLPT_INVALID"/>
         <action service="updateContactListParty" mode="sync"/>