svn commit: r918909 [1/2] - in /ofbiz/trunk/specialpurpose/ebaystore: config/ script/org/ofbiz/ebaystore/ servicedef/ src/org/ofbiz/ebaystore/ webapp/ebaystore/WEB-INF/ widget/

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

svn commit: r918909 [1/2] - in /ofbiz/trunk/specialpurpose/ebaystore: config/ script/org/ofbiz/ebaystore/ servicedef/ src/org/ofbiz/ebaystore/ webapp/ebaystore/WEB-INF/ widget/

hansbak-2
Author: hansbak
Date: Thu Mar  4 09:20:47 2010
New Revision: 918909

URL: http://svn.apache.org/viewvc?rev=918909&view=rev
Log:
Ebaystore update: function to send a notification email to the winning buyer automatically.

Modified:
    ofbiz/trunk/specialpurpose/ebaystore/config/EbayStoreUiLabels.xml
    ofbiz/trunk/specialpurpose/ebaystore/script/org/ofbiz/ebaystore/EbayStoreEvents.xml
    ofbiz/trunk/specialpurpose/ebaystore/servicedef/services.xml
    ofbiz/trunk/specialpurpose/ebaystore/src/org/ofbiz/ebaystore/EbayStore.java
    ofbiz/trunk/specialpurpose/ebaystore/src/org/ofbiz/ebaystore/EbayStoreAutoPreferences.java
    ofbiz/trunk/specialpurpose/ebaystore/webapp/ebaystore/WEB-INF/controller.xml
    ofbiz/trunk/specialpurpose/ebaystore/widget/EbayEmailScreens.xml
    ofbiz/trunk/specialpurpose/ebaystore/widget/EbaySellingManagerForms.xml
    ofbiz/trunk/specialpurpose/ebaystore/widget/EbaySellingManagerScreens.xml

Modified: ofbiz/trunk/specialpurpose/ebaystore/config/EbayStoreUiLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/ebaystore/config/EbayStoreUiLabels.xml?rev=918909&r1=918908&r2=918909&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/ebaystore/config/EbayStoreUiLabels.xml (original)
+++ ofbiz/trunk/specialpurpose/ebaystore/config/EbayStoreUiLabels.xml Thu Mar  4 09:20:47 2010
@@ -261,9 +261,15 @@
         <value xml:lang="en">Edit Email Template</value>
     </property>
     <property key="EbayIncludePayNowButtonAndAcceptPaymentMethods">
-     <value xml:lang="en">Include the Pay Now button and accepted payment methods</value>
+        <value xml:lang="en">Include the Pay Now button and accepted payment methods</value>
     </property>
     <property key="EbayIncludeMyDefaultCrossPromotionInThisEmail">
-     <value xml:lang="en">Include my default cross-promotion in this email</value>
+        <value xml:lang="en">Include my default cross-promotion in this email</value>
+    </property>
+    <property key="EbayAutoSendWinBuyerEmail">
+        <value xml:lang="en">Automatic send notification email to winning buyer on auction items</value>
+    </property>
+    <property key="EbayCombineOrderSetting">
+        <value xml:lang="en">Combine Orders Setting</value>
     </property>
 </resource>
\ No newline at end of file

Modified: ofbiz/trunk/specialpurpose/ebaystore/script/org/ofbiz/ebaystore/EbayStoreEvents.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/ebaystore/script/org/ofbiz/ebaystore/EbayStoreEvents.xml?rev=918909&r1=918908&r2=918909&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/ebaystore/script/org/ofbiz/ebaystore/EbayStoreEvents.xml (original)
+++ ofbiz/trunk/specialpurpose/ebaystore/script/org/ofbiz/ebaystore/EbayStoreEvents.xml Thu Mar  4 09:20:47 2010
@@ -155,53 +155,94 @@
         </if-empty>
         <field-to-request field="parameters.productStoreId" request-name="productStoreId"/>
     </simple-method>
+
+    <simple-method method-name="settingWinningBuyerNotification" login-required="false" short-description="Set Automatic send winning buyer notification">
+        <entity-one entity-name="ProductStore" value-field="productStore" >
+            <field-map field-name="productStoreId" from-field="parameters.productStoreId"/>
+        </entity-one>
+        <if-empty field="productStore">
+            <add-error><fail-message message="No ProductStore found with id ${parameters.productStoreId}."/></add-error>
+            <check-errors/>
+        </if-empty>
+
+        <entity-one entity-name="EbayProductStorePref" value-field="ebayProdStorePref">
+            <field-map field-name="productStoreId" from-field="parameters.productStoreId"/>
+            <field-map field-name="autoPrefEnumId" value="EBAY_AUTO_WIN_EMAIL"/>
+        </entity-one>
+
+        <if-not-empty field="ebayProdStorePref">
+            <set field="parameters.productStoreId"  type="String" default-value="parameters.productStoreId" from-field="ebayProdStorePref.productStoreId"/>
+            <else>
+                <set field="parameters.productStoreId"  type="String" from-field="parameters.productStoreId"/>
+            </else>
+        </if-not-empty>
+        <set field="parameters.autoPrefEnumId"  type="String" value="EBAY_AUTO_WIN_EMAIL"/>
+        <if-not-empty field="ebayProdStorePref">
+            <if-not-empty field="ebayProdStorePref.autoPrefJobId">
+                <set field="parameters.autoPrefJobId"  type="String" from-field="ebayProdStorePref.autoPrefJobId"/>
+            </if-not-empty>
+        </if-not-empty>
+        <set field="parameters.enabled" default-value="N" type="String" from-field="parameters.isRunWinnerNotify"/>
+        <set field="parameters.serviceName" default-value="autoSendWinningBuyerNotification" type="String"/>
+        <session-to-field field="context.userLogin" session-name="userLogin"/>
+
+        <if-empty field="ebayProdStorePref">
+            <set-service-fields service-name="createEbayProductStorePref" map="parameters" to-map="ebayProductStorePref"/>
+            <call-service service-name="createEbayProductStorePref" in-map-name="ebayProductStorePref" ></call-service>
+            <else>
+                <set-service-fields service-name="updateEbayProductStorePref" map="parameters" to-map="ebayProductStorePref"/>
+                <call-service service-name="updateEbayProductStorePref" in-map-name="ebayProductStorePref"></call-service>
+            </else>
+        </if-empty>
+        <field-to-request field="parameters.productStoreId" request-name="productStoreId"/>
+    </simple-method>
+
     <simple-method method-name="createEmailTemplate" short-description="Create Email Template">
-     <!-- create content -->
-     <set field="parameters.dataTemplateTypeId" value="FTL"/>
-     <set-service-fields service-name="createElectronicText" to-map="newElectronicText" map="parameters"/>
-     <call-service service-name="createElectronicText" in-map-name="newElectronicText">
-     <result-to-field result-name="dataResourceId" field="parameters.dataResourceId"/>
-     </call-service>
-        
-     <set field="parameters.roleTypeId" value="OWNER"/>
-     <set field="parameters.contentTypeId" value="DOCUMENT"/>
-     <set field="parameters.ownerContentId" from-field="parameters.emailType"/>
-     <set-service-fields service-name="createContent" to-map="newContent" map="parameters"/>
-     <call-service service-name="createContent" in-map-name="newContent" >
-     <result-to-field result-name="contentId"/>
-     </call-service>
-    
-     <!-- create ProductStoreEmailSetting -->
-     <if-not-empty field="parameters.includePayment">
-     <set field="parameters.subject" value="${parameters.subject} INCLUDE_PAYMENT"/>
-     </if-not-empty>
-     <if-not-empty field="parameters.includeCrossPromotions">
-     <set field="parameters.subject" value="${parameters.includeCrossPromotions} INCLUDE_CROSS_PROMOTIONS"/>
-     </if-not-empty>
-     <set-service-fields service-name="createProductStoreEmailSetting" to-map="newEmailSetting" map="parameters"/>
-     <call-service service-name="createProductStoreEmailSetting" in-map-name="newEmailSetting" >
-     <result-to-field result-name="contentId"/>
-     </call-service>
-    
+        <!-- create content -->
+        <set field="parameters.dataTemplateTypeId" value="FTL"/>
+        <set-service-fields service-name="createElectronicText" to-map="newElectronicText" map="parameters"/>
+        <call-service service-name="createElectronicText" in-map-name="newElectronicText">
+            <result-to-field result-name="dataResourceId" field="parameters.dataResourceId"/>
+        </call-service>
+                
+        <set field="parameters.roleTypeId" value="OWNER"/>
+        <set field="parameters.contentTypeId" value="DOCUMENT"/>
+        <set field="parameters.ownerContentId" from-field="parameters.emailType"/>
+        <set-service-fields service-name="createContent" to-map="newContent" map="parameters"/>
+        <call-service service-name="createContent" in-map-name="newContent" >
+            <result-to-field result-name="contentId"/>
+        </call-service>
+        
+        <!-- create ProductStoreEmailSetting -->
+        <if-not-empty field="parameters.includePayment">
+            <set field="parameters.subject" value="${parameters.subject} INCLUDE_PAYMENT"/>
+        </if-not-empty>
+        <if-not-empty field="parameters.includeCrossPromotions">
+            <set field="parameters.subject" value="${parameters.includeCrossPromotions} INCLUDE_CROSS_PROMOTIONS"/>
+        </if-not-empty>
+        <set-service-fields service-name="createProductStoreEmailSetting" to-map="newEmailSetting" map="parameters"/>
+        <call-service service-name="createProductStoreEmailSetting" in-map-name="newEmailSetting" >
+            <result-to-field result-name="contentId"/>
+        </call-service>
     </simple-method>
- <simple-method method-name="updateEmailTemplate" short-description="Create Email Template">
-     <!-- update content -->
-     <set-service-fields service-name="updateElectronicText" to-map="updateElectronicText" map="parameters"/>
-     <call-service service-name="updateElectronicText" in-map-name="updateElectronicText">
-     <result-to-field result-name="dataResourceId" field="parameters.dataResourceId"/>
-     </call-service>
-    
-     <!-- update ProductStoreEmailSetting -->
-     <!--if-not-empty field="parameters.includePayment">
-     <set field="parameters.subject" value="${parameters.subject} INCLUDE_PAYMENT"/>
-     </if-not-empty>
-     <if-not-empty field="parameters.includeCrossPromotions">
-     <set field="parameters.subject" value="${parameters.subject} INCLUDE_CROSS_PROMOTIONS"/>
-     </if-not-empty-->
-     <set-service-fields service-name="updateProductStoreEmailSetting" to-map="updateEmailSetting" map="parameters"/>
-     <call-service service-name="updateProductStoreEmailSetting" in-map-name="updateEmailSetting" >
-     <result-to-field result-name="contentId"/>
-     </call-service>
-    
+
+    <simple-method method-name="updateEmailTemplate" short-description="Create Email Template">
+        <!-- update content -->
+        <set-service-fields service-name="updateElectronicText" to-map="updateElectronicText" map="parameters"/>
+        <call-service service-name="updateElectronicText" in-map-name="updateElectronicText">
+            <result-to-field result-name="dataResourceId" field="parameters.dataResourceId"/>
+        </call-service>
+
+        <!-- update ProductStoreEmailSetting -->
+        <!--if-not-empty field="parameters.includePayment">
+            <set field="parameters.subject" value="${parameters.subject} INCLUDE_PAYMENT"/>
+        </if-not-empty>
+        <if-not-empty field="parameters.includeCrossPromotions">
+            <set field="parameters.subject" value="${parameters.subject} INCLUDE_CROSS_PROMOTIONS"/>
+        </if-not-empty-->
+        <set-service-fields service-name="updateProductStoreEmailSetting" to-map="updateEmailSetting" map="parameters"/>
+        <call-service service-name="updateProductStoreEmailSetting" in-map-name="updateEmailSetting" >
+            <result-to-field result-name="contentId"/>
+        </call-service>
     </simple-method>
 </simple-methods>
\ No newline at end of file

Modified: ofbiz/trunk/specialpurpose/ebaystore/servicedef/services.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/ebaystore/servicedef/services.xml?rev=918909&r1=918908&r2=918909&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/ebaystore/servicedef/services.xml (original)
+++ ofbiz/trunk/specialpurpose/ebaystore/servicedef/services.xml Thu Mar  4 09:20:47 2010
@@ -303,7 +303,7 @@
         location="org.ofbiz.ebaystore.EbayStore" invoke="getEbayAllBidders" auth="true">
         <attribute name="productStoreId" mode="IN" type="String" optional="false"/>
         <attribute name="itemId" mode="IN" type="String" optional="false"/>
-        <attribute name="bidders" mode="OUT" type="List" optional="true"/>
+        <attribute name="allBidders" mode="OUT" type="List" optional="true"/>
     </service>
     <service name="verifyEbayAddSecondChanceItem" engine="java"  transaction-timeout="3600"
         location="org.ofbiz.ebaystore.EbayStore" invoke="verifyEbayAddSecondChanceItem" auth="true">
@@ -367,7 +367,14 @@
         <attribute name="jobId" mode="IN" type="String" optional="false"/>
     </service>
     <service name="runCombineOrders" engine="java" transaction-timeout="7200"
-        location="org.ofbiz.ebaystore.EbayStoreAutoPreferences" invoke="runCombineOrders" auth="true">
+        location="org.ofbiz.ebaystore.EbayStoreAutoPreferences" invoke="runCombineOrders" auth="false">
+        <description>Automatic service to combine orders from condition in automatically preferences screen</description>
+        <attribute name="jobId" mode="IN" type="String" optional="false"/>
+        <attribute name="productStoreId" mode="IN" type="String" optional="false"/>
+    </service>
+    <service name="autoSendWinningBuyerNotification" engine="java" transaction-timeout="7200"
+        location="org.ofbiz.ebaystore.EbayStoreAutoPreferences" invoke="autoSendWinningBuyerNotification" auth="false">
+        <description>Automatic service to send notification email to winning buyer on eBay</description>
         <attribute name="jobId" mode="IN" type="String" optional="false"/>
         <attribute name="productStoreId" mode="IN" type="String" optional="false"/>
     </service>

Modified: ofbiz/trunk/specialpurpose/ebaystore/src/org/ofbiz/ebaystore/EbayStore.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/ebaystore/src/org/ofbiz/ebaystore/EbayStore.java?rev=918909&r1=918908&r2=918909&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/ebaystore/src/org/ofbiz/ebaystore/EbayStore.java (original)
+++ ofbiz/trunk/specialpurpose/ebaystore/src/org/ofbiz/ebaystore/EbayStore.java Thu Mar  4 09:20:47 2010
@@ -235,14 +235,14 @@
                     categoryArrayType = new StoreCustomCategoryArrayType();
                     categoryArrayType.setCustomCategory(toStoreCustomCategoryTypeArray(listAdd));
                     req.setStoreCategories(categoryArrayType);
-                    result = excuteExportCategoryToEbayStore(call, req,StoreCategoryUpdateActionCodeType.ADD, delegator,context.get("partyId").toString(), catalogCategories);
+                    result = excuteExportCategoryToEbayStore(call, req, StoreCategoryUpdateActionCodeType.ADD, delegator,context.get("partyId").toString(), catalogCategories);
                 }
                 if (listEdit.size() > 0) {
                     req = new SetStoreCategoriesRequestType();
                     categoryArrayType = new StoreCustomCategoryArrayType();
                     categoryArrayType.setCustomCategory(toStoreCustomCategoryTypeArray(listEdit));
                     req.setStoreCategories(categoryArrayType);
-                    result = excuteExportCategoryToEbayStore(call, req,StoreCategoryUpdateActionCodeType.RENAME, delegator,context.get("partyId").toString(), catalogCategories);
+                    result = excuteExportCategoryToEbayStore(call, req, StoreCategoryUpdateActionCodeType.RENAME, delegator,context.get("partyId").toString(), catalogCategories);
                 }
 
                 //start at level 1 of categories
@@ -356,7 +356,7 @@
         return storeCustomCategoryTypeArry;
     }
 
-    public static Map<String, Object> excuteExportCategoryToEbayStore(SetStoreCategoriesCall  call,SetStoreCategoriesRequestType req,StoreCategoryUpdateActionCodeType actionCode,Delegator delegator,String partyId,List<GenericValue> catalogCategories) {
+    public static Map<String, Object> excuteExportCategoryToEbayStore(SetStoreCategoriesCall  call, SetStoreCategoriesRequestType req, StoreCategoryUpdateActionCodeType actionCode,Delegator delegator, String partyId,List<GenericValue> catalogCategories) {
         Map<String, Object> result = FastMap.newInstance();
         SetStoreCategoriesResponseType resp = null;
         try {
@@ -373,7 +373,7 @@
                             List<GenericValue> productCategoryList = delegator.findByAnd("ProductCategory", UtilMisc.toMap("categoryName",returnCategoryType.getName(),"productCategoryTypeId","EBAY_CATEGORY"));
                             for (GenericValue productCategory : productCategoryList) {
                                 if (EbayStoreHelper.veriflyCategoryInCatalog(delegator,catalogCategories,productCategory.getString("productCategoryId"))) {
-                                    if (EbayStoreHelper.createEbayCategoryIdByPartyId(delegator,productCategory.getString("productCategoryId"),partyId,String.valueOf(returnCategoryType.getCategoryID()))) {
+                                    if (EbayStoreHelper.createEbayCategoryIdByPartyId(delegator, productCategory.getString("productCategoryId"), partyId, String.valueOf(returnCategoryType.getCategoryID()))) {
                                         Debug.logInfo("Create new ProductCategoryRollup with partyId "+partyId+" categoryId "+productCategory.getString("productCategoryId")+ " and ebayCategoryId "+String.valueOf(returnCategoryType.getCategoryID()), module);
                                     }
                                     break;
@@ -556,7 +556,7 @@
                 List Store = UtilXml.childElementList(elemResponse, "Store");
                 Iterator StoreElemIter = Store.iterator();
                 while (StoreElemIter.hasNext()) {
-                    Element StoreElemIterElemIterElement = (Element)StoreElemIter.next();
+                    Element StoreElemIterElemIterElement = (Element) StoreElemIter.next();
                     // retrieve Custom Category Array
 
                     List customCategories = UtilXml.childElementList(StoreElemIterElemIterElement, "CustomCategories");
@@ -587,7 +587,7 @@
     }
 
     public static Map<String, Object> getEbayStoreUser(DispatchContext dctx, Map<String, ? extends Object> context) {
-        Map<String, Object>result = FastMap.newInstance();
+        Map<String, Object> result = FastMap.newInstance();
         String errorMsg = null;
         LocalDispatcher dispatcher = dctx.getDispatcher();
         GenericValue userLogin = (GenericValue) context.get("userLogin");
@@ -639,7 +639,7 @@
             } catch (GenericEntityException e1) {
                 e1.printStackTrace();
             }
-            Debug.log("userLoginId is "+userLoginId+" and productStoreId is "+context.get("productStoreId"));
+            Debug.log("userLoginId is "+userLoginId+" and productStoreId is "+ context.get("productStoreId"));
             GetStoreCall call = new GetStoreCall(EbayStoreHelper.getApiContext((String)context.get("productStoreId"), locale, delegator));
             //call.setSite(EbayHelper.getSiteCodeType((String)context.get("productStoreId"), locale, delegator));
             call.setCategoryStructureOnly(false);
@@ -652,7 +652,7 @@
                     result.put(ModelService.RESPONSE_MESSAGE, ModelService.RESPOND_SUCCESS);
                     //result.put(ModelService.SUCCESS_MESSAGE, UtilProperties.getMessage(resource, "EbayStoreLoadSuccess", locale));
                     // update product store in ofbiz
-                    updateProductStore(dctx, context,returnedStoreType,(String)context.get("productStoreId"));
+                    updateProductStore(dctx, context, returnedStoreType,(String) context.get("productStoreId"));
                     Map<String,Object> ebayResp = FastMap.newInstance();
                     ebayResp.put("storeName", returnedStoreType.getName());
                     ebayResp.put("storeUrl", returnedStoreType.getURL());
@@ -667,37 +667,37 @@
                     ebayResp.put("storeLogoURL", logoType.getURL());
 
                     StoreThemeType themeType = returnedStoreType.getTheme();
-                    ebayResp.put("storeThemeId",themeType.getThemeID());
-                    ebayResp.put("storeThemeName",themeType.getName());
+                    ebayResp.put("storeThemeId", themeType.getThemeID());
+                    ebayResp.put("storeThemeName", themeType.getName());
 
                     StoreColorSchemeType colorSchemeType = themeType.getColorScheme();
-                    ebayResp.put("storeColorSchemeId",colorSchemeType.getColorSchemeID());
+                    ebayResp.put("storeColorSchemeId", colorSchemeType.getColorSchemeID());
 
                     StoreColorType colorType = colorSchemeType.getColor();
-                    ebayResp.put("storeColorPrimary",colorType.getPrimary());
-                    ebayResp.put("storeColorAccent",colorType.getAccent());
-                    ebayResp.put("storeColorSecondary",colorType.getSecondary());
+                    ebayResp.put("storeColorPrimary", colorType.getPrimary());
+                    ebayResp.put("storeColorAccent", colorType.getAccent());
+                    ebayResp.put("storeColorSecondary", colorType.getSecondary());
 
                     StoreFontType fontType = colorSchemeType.getFont();
-                    ebayResp.put("storeDescColor",fontType.getDescColor());
-                    ebayResp.put("storeNameColor",fontType.getNameColor());
-                    ebayResp.put("storeTitleColor",fontType.getTitleColor());
+                    ebayResp.put("storeDescColor", fontType.getDescColor());
+                    ebayResp.put("storeNameColor", fontType.getNameColor());
+                    ebayResp.put("storeTitleColor", fontType.getTitleColor());
 
                     if (fontType != null) {// basic & advance theme
                         String themeId = themeType.getThemeID().toString().concat("-").concat(colorSchemeType.getColorSchemeID().toString());
                         context.put("themeId", themeId);
-                        Map<String,Object> results = retrieveThemeColorSchemeByThemeId(dctx,context);
+                        Map<String,Object> results = retrieveThemeColorSchemeByThemeId(dctx, context);
                         if (results != null) {
-                            Map<String,Object> storeFontScheme = (Map<String,Object>)results.get("storeFontScheme");
+                            Map<String,Object> storeFontScheme = (Map<String,Object>) results.get("storeFontScheme");
                             if (storeFontScheme != null) {
-                                ebayResp.put("storeDescFontFace",storeFontScheme.get("storeFontTypeFontDescValue"));
+                                ebayResp.put("storeDescFontFace", storeFontScheme.get("storeFontTypeFontDescValue"));
                                 ebayResp.put("storeDescSizeCode", storeFontScheme.get("storeDescSizeValue"));
 
-                                ebayResp.put("storeNameFontFace",storeFontScheme.get("storeFontTypeFontFaceValue"));
-                                ebayResp.put("storeNameFontFaceSize",storeFontScheme.get("storeFontTypeSizeFaceValue"));
+                                ebayResp.put("storeNameFontFace", storeFontScheme.get("storeFontTypeFontFaceValue"));
+                                ebayResp.put("storeNameFontFaceSize", storeFontScheme.get("storeFontTypeSizeFaceValue"));
 
-                                ebayResp.put("storeTitleFontFace",storeFontScheme.get("storeFontTypeFontTitleValue"));
-                                ebayResp.put("storeTitleFontFaceSize",storeFontScheme.get("storeFontSizeTitleValue"));
+                                ebayResp.put("storeTitleFontFace", storeFontScheme.get("storeFontTypeFontTitleValue"));
+                                ebayResp.put("storeTitleFontFaceSize", storeFontScheme.get("storeFontSizeTitleValue"));
                             }
                         }
                     }
@@ -711,8 +711,8 @@
                         while (i<storeHeaderStyleCodeList.length) {
                             Map<String,Object> storeHeaderStyleMap = FastMap.newInstance();
                             StoreHeaderStyleCodeType storeHeaderStyleCode = storeHeaderStyleCodeList[i];
-                            storeHeaderStyleMap.put("storeHeaderStyleName",storeHeaderStyleCode.name());
-                            storeHeaderStyleMap.put("storeHeaderStyleValue",storeHeaderStyleCode.value());
+                            storeHeaderStyleMap.put("storeHeaderStyleName", storeHeaderStyleCode.name());
+                            storeHeaderStyleMap.put("storeHeaderStyleValue", storeHeaderStyleCode.value());
                             storeHeaderStyleList.add(storeHeaderStyleMap);
                             i++;
                         }
@@ -730,8 +730,8 @@
                         while (i < storeItemListLayoutCodeTypeList.length) {
                             Map<String,Object> storeItemListLayoutCodeMap = FastMap.newInstance();
                             StoreItemListLayoutCodeType storeItemListLayoutCode = storeItemListLayoutCodeTypeList[i];
-                            storeItemListLayoutCodeMap.put("storeItemLayoutName",storeItemListLayoutCode.name());
-                            storeItemListLayoutCodeMap.put("storeItemLayoutValue",storeItemListLayoutCode.value());
+                            storeItemListLayoutCodeMap.put("storeItemLayoutName", storeItemListLayoutCode.name());
+                            storeItemListLayoutCodeMap.put("storeItemLayoutValue", storeItemListLayoutCode.value());
                             storeItemListLayoutCodeList.add(storeItemListLayoutCodeMap);
                             i++;
                         }
@@ -746,8 +746,8 @@
                         while (i < storeItemListSortOrderCodeTypeList.length) {
                             Map<String,Object> storeItemSortOrderCodeMap = FastMap.newInstance();
                             StoreItemListSortOrderCodeType storeItemListLayoutCode = storeItemListSortOrderCodeTypeList[i];
-                            storeItemSortOrderCodeMap.put("storeItemSortLayoutName",storeItemListLayoutCode.name());
-                            storeItemSortOrderCodeMap.put("storeItemSortLayoutValue",storeItemListLayoutCode.value());
+                            storeItemSortOrderCodeMap.put("storeItemSortLayoutName", storeItemListLayoutCode.name());
+                            storeItemSortOrderCodeMap.put("storeItemSortLayoutValue", storeItemListLayoutCode.value());
                             storeItemSortOrderCodeList.add(storeItemSortOrderCodeMap);
                             i++;
                         }
@@ -756,7 +756,7 @@
 
                     ebayResp.put("storeCustomHeader", returnedStoreType.getCustomHeader());
                     StoreCustomHeaderLayoutCodeType storeCustomHeaderLayoutCodeType = returnedStoreType.getCustomHeaderLayout();
-                    ebayResp.put("storeCustomHeaderLayout",storeCustomHeaderLayoutCodeType.value());
+                    ebayResp.put("storeCustomHeaderLayout", storeCustomHeaderLayoutCodeType.value());
                     StoreCustomHeaderLayoutCodeType[] storeCustomHeaderLayoutCodeTypeList = storeCustomHeaderLayoutCodeType.values();
                     if (storeCustomHeaderLayoutCodeTypeList != null) {
                         List<Map<String,Object>> storeCustomHeaderLayoutList  = FastList.newInstance();
@@ -764,8 +764,8 @@
                         while (i < storeCustomHeaderLayoutCodeTypeList.length) {
                             Map<String,Object> storeCustomHeaderLayoutMap = FastMap.newInstance();
                             StoreCustomHeaderLayoutCodeType StoreCustomHeaderLayoutCode = storeCustomHeaderLayoutCodeTypeList[i];
-                            storeCustomHeaderLayoutMap.put("storeCustomHeaderLayoutName",StoreCustomHeaderLayoutCode.name());
-                            storeCustomHeaderLayoutMap.put("storeCustomHeaderLayoutValue",StoreCustomHeaderLayoutCode.value());
+                            storeCustomHeaderLayoutMap.put("storeCustomHeaderLayoutName", StoreCustomHeaderLayoutCode.name());
+                            storeCustomHeaderLayoutMap.put("storeCustomHeaderLayoutValue", StoreCustomHeaderLayoutCode.value());
                             storeCustomHeaderLayoutList.add(storeCustomHeaderLayoutMap);
                             i++;
                         }
@@ -775,13 +775,13 @@
                     StoreCustomListingHeaderType storeCustomListingHeaderType = returnedStoreType.getCustomListingHeader();
                     if (storeCustomListingHeaderType != null) {
                         StoreCustomListingHeaderDisplayCodeType storeCustomListingHeaderDisplayCodeType = storeCustomListingHeaderType.getDisplayType();
-                        ebayResp.put("isLogo",storeCustomListingHeaderType.isLogo());
-                        ebayResp.put("isSearchBox",storeCustomListingHeaderType.isSearchBox());
-                        ebayResp.put("isAddToFavoriteStores",storeCustomListingHeaderType.isAddToFavoriteStores());
-                        ebayResp.put("isSignUpForStoreNewsletter",storeCustomListingHeaderType.isSignUpForStoreNewsletter());
+                        ebayResp.put("isLogo", storeCustomListingHeaderType.isLogo());
+                        ebayResp.put("isSearchBox", storeCustomListingHeaderType.isSearchBox());
+                        ebayResp.put("isAddToFavoriteStores", storeCustomListingHeaderType.isAddToFavoriteStores());
+                        ebayResp.put("isSignUpForStoreNewsletter", storeCustomListingHeaderType.isSignUpForStoreNewsletter());
 
-                        ebayResp.put("storeCustomListingHeaderDisplayName",storeCustomListingHeaderDisplayCodeType.name());
-                        ebayResp.put("storeCustomListingHeaderDisplayValue",storeCustomListingHeaderDisplayCodeType.value());
+                        ebayResp.put("storeCustomListingHeaderDisplayName", storeCustomListingHeaderDisplayCodeType.name());
+                        ebayResp.put("storeCustomListingHeaderDisplayValue", storeCustomListingHeaderDisplayCodeType.value());
                         StoreCustomListingHeaderDisplayCodeType[] storeCustomListingHeaderDisplayCodeTypeList = storeCustomListingHeaderDisplayCodeType.values();
                         if (storeCustomListingHeaderDisplayCodeTypeList != null) {
                             List<Map<String,Object>> storeCustomListingHeaderDisplayCodeList  = FastList.newInstance();
@@ -789,8 +789,8 @@
                             while (i < storeCustomListingHeaderDisplayCodeTypeList.length) {
                                 Map<String,Object> storeCustomListingHeaderDisplayCodeMap = FastMap.newInstance();
                                 StoreCustomListingHeaderDisplayCodeType storeCustomListingHeaderDisplayCode = storeCustomListingHeaderDisplayCodeTypeList[i];
-                                storeCustomListingHeaderDisplayCodeMap.put("storeCustomHeaderLayoutName",storeCustomListingHeaderDisplayCode.name());
-                                storeCustomListingHeaderDisplayCodeMap.put("storeCustomHeaderLayoutValue",storeCustomListingHeaderDisplayCode.value());
+                                storeCustomListingHeaderDisplayCodeMap.put("storeCustomHeaderLayoutName", storeCustomListingHeaderDisplayCode.name());
+                                storeCustomListingHeaderDisplayCodeMap.put("storeCustomHeaderLayoutValue", storeCustomListingHeaderDisplayCode.value());
                                 storeCustomListingHeaderDisplayCodeList.add(storeCustomListingHeaderDisplayCodeMap);
                                 i++;
                             }
@@ -808,8 +808,8 @@
                         while (i < merchDisplayCodeTypeList.length) {
                             Map<String,Object> merchDisplayCodeMap = FastMap.newInstance();
                             MerchDisplayCodeType merchDisplayCode = merchDisplayCodeTypeList[i];
-                            merchDisplayCodeMap.put("merchDisplayCodeName",merchDisplayCode.name());
-                            merchDisplayCodeMap.put("merchDisplayCodeValue",merchDisplayCode.value());
+                            merchDisplayCodeMap.put("merchDisplayCodeName", merchDisplayCode.name());
+                            merchDisplayCodeMap.put("merchDisplayCodeValue", merchDisplayCode.value());
                             merchDisplayCodeList.add(merchDisplayCodeMap);
                             i++;
                         }
@@ -818,7 +818,7 @@
 
                     Calendar calendar = returnedStoreType.getLastOpenedTime();
                     ebayResp.put("storeLastOpenedTime", calendar.getTime().toString());
-                    ebayResp.put("storeSubscriptionLevel",returnedStoreType.getSubscriptionLevel().value());
+                    ebayResp.put("storeSubscriptionLevel", returnedStoreType.getSubscriptionLevel().value());
                     StoreSubscriptionLevelCodeType[] storeSubscriptionlevelList = returnedStoreType.getSubscriptionLevel().values();
                     if (storeSubscriptionlevelList != null) {
                         List<Map<String,Object>> storeSubscriptionLevelCodeList = FastList.newInstance();
@@ -837,7 +837,7 @@
                     result.put("ebayStore", ebayResp);
                 } else {
                     result.put(ModelService.RESPONSE_MESSAGE, ModelService.RESPOND_ERROR);
-                    result.put(ModelService.ERROR_MESSAGE,resp.getAck().toString()+":"+resp.getMessage());
+                    result.put(ModelService.ERROR_MESSAGE, resp.getAck().toString() +":"+ resp.getMessage());
                 }
             } catch (ApiException e) {
                 result.put(ModelService.RESPONSE_MESSAGE, ModelService.RESPOND_ERROR);
@@ -862,7 +862,7 @@
                 inMap.put("storeName", returnStoreType.getName());
                 inMap.put("subtitle", returnStoreType.getDescription());
                 inMap.put("title", returnStoreType.getName());
-                inMap.put("userLogin",context.get("userLogin"));
+                inMap.put("userLogin", context.get("userLogin"));
                 dispatcher.runSync("updateProductStore", inMap);
             }
         } catch (Exception e) {
@@ -898,7 +898,7 @@
 
                     Map<String,Object> storeColorSchemeMap = null;
                     while (i < storeBasicTheme.length) {
-                        StoreThemeType storeThemeType = (StoreThemeType)storeBasicTheme[i];
+                        StoreThemeType storeThemeType = (StoreThemeType) storeBasicTheme[i];
                         if (themeId.equals(storeThemeType.getThemeID().toString())) {
                             StoreColorSchemeType colorSchemeType = storeThemeType.getColorScheme();
                             if (colorSchemeType != null) {
@@ -906,21 +906,21 @@
                                     // get font,size and color
                                     storeColorSchemeMap = FastMap.newInstance();
                                     StoreFontType storeFontType = colorSchemeType.getFont();
-                                    storeColorSchemeMap.put("storeFontTypeFontFaceValue",storeFontType.getNameFace().value());
-                                    storeColorSchemeMap.put("storeFontTypeSizeFaceValue",storeFontType.getNameSize().value());
+                                    storeColorSchemeMap.put("storeFontTypeFontFaceValue", storeFontType.getNameFace().value());
+                                    storeColorSchemeMap.put("storeFontTypeSizeFaceValue", storeFontType.getNameSize().value());
 
-                                    storeColorSchemeMap.put("storeFontTypeFontTitleValue",storeFontType.getTitleFace().value());
-                                    storeColorSchemeMap.put("storeFontSizeTitleValue",storeFontType.getTitleSize().value());
+                                    storeColorSchemeMap.put("storeFontTypeFontTitleValue", storeFontType.getTitleFace().value());
+                                    storeColorSchemeMap.put("storeFontSizeTitleValue", storeFontType.getTitleSize().value());
 
-                                    storeColorSchemeMap.put("storeFontTypeFontDescValue",storeFontType.getDescFace().value());
-                                    storeColorSchemeMap.put("storeDescSizeValue",storeFontType.getDescSize().value());
+                                    storeColorSchemeMap.put("storeFontTypeFontDescValue", storeFontType.getDescFace().value());
+                                    storeColorSchemeMap.put("storeDescSizeValue", storeFontType.getDescSize().value());
                                     break;
                                 }
                             }
                         }
                         i++;
                     }
-                    result.put("storeFontScheme",storeColorSchemeMap);
+                    result.put("storeFontScheme", storeColorSchemeMap);
                 }
             }
         } catch (ApiException e) {
@@ -954,7 +954,7 @@
                     List<Map<String,Object>> logoList = FastList.newInstance();
                     while (i < returnedLogoArray.getLogoLength()) {
                         Map<String,Object> logo  = FastMap.newInstance();
-                        StoreLogoType storeLogoType = (StoreLogoType)returnedLogoArray.getLogo(i);
+                        StoreLogoType storeLogoType = (StoreLogoType) returnedLogoArray.getLogo(i);
                         logo.put("storeLogoId", storeLogoType.getLogoID());
                         logo.put("storeLogoName", storeLogoType.getName());
                         logo.put("storeLogoURL", storeLogoType.getURL());
@@ -996,7 +996,7 @@
                     List<Map<String,Object>> themeList = FastList.newInstance();
                     while (i < returnedBasicThemeArray.getThemeLength()) {
                         Map<String,Object> basictheme  = FastMap.newInstance();
-                        StoreThemeType storeBasicThemeType = (StoreThemeType)returnedBasicThemeArray.getTheme(i);
+                        StoreThemeType storeBasicThemeType = (StoreThemeType) returnedBasicThemeArray.getTheme(i);
                         basictheme.put("storeThemeId", storeBasicThemeType.getThemeID());
                         basictheme.put("storeThemeName", storeBasicThemeType.getName());
 
@@ -1059,7 +1059,7 @@
                     List<Map<String,Object>> themeColorList = FastList.newInstance();
                     while (j < storeColorSchemeTypes.length) {
                         Map<String,Object> advanceColorTheme = FastMap.newInstance();
-                        StoreColorSchemeType storeColorSchemeType = (StoreColorSchemeType)storeColorSchemeTypes[j];
+                        StoreColorSchemeType storeColorSchemeType = (StoreColorSchemeType) storeColorSchemeTypes[j];
                         advanceColorTheme.put("storeColorSchemeId", storeColorSchemeType.getColorSchemeID());
                         advanceColorTheme.put("storeColorName", storeColorSchemeType.getName());
                         themeColorList.add(advanceColorTheme);
@@ -1103,7 +1103,7 @@
                     StoreColorSchemeType[] storeColorSchemeTypes = returnedThemeArray.getGenericColorSchemeArray().getColorScheme();
                     while (i < storeColorSchemeTypes.length) {
 
-                        StoreColorSchemeType storeColorSchemeType = (StoreColorSchemeType)storeColorSchemeTypes[i];
+                        StoreColorSchemeType storeColorSchemeType = (StoreColorSchemeType) storeColorSchemeTypes[i];
                         StoreFontType storeFontType =  storeColorSchemeType.getFont();
                         advanceFontTheme.put("storeFontTypeNameFaceColor",storeFontType.getNameColor());
                         int j = 0;
@@ -1111,9 +1111,9 @@
                         List<Map<String,Object>> nameFaces = FastList.newInstance();
                         while (j < storeFontNameFaceCodeTypes.length) {
                             Map<String,Object> storeFontNameFaceCodeTypeMap = FastMap.newInstance();
-                            StoreFontFaceCodeType storeFontNameFaceCodeType = (StoreFontFaceCodeType)storeFontNameFaceCodeTypes[j];
-                            storeFontNameFaceCodeTypeMap.put("storeFontValue",storeFontNameFaceCodeType.value());
-                            storeFontNameFaceCodeTypeMap.put("storeFontName",storeFontNameFaceCodeType.name());
+                            StoreFontFaceCodeType storeFontNameFaceCodeType = (StoreFontFaceCodeType) storeFontNameFaceCodeTypes[j];
+                            storeFontNameFaceCodeTypeMap.put("storeFontValue", storeFontNameFaceCodeType.value());
+                            storeFontNameFaceCodeTypeMap.put("storeFontName", storeFontNameFaceCodeType.name());
                             nameFaces.add(storeFontNameFaceCodeTypeMap);
                             j++;
                         }
@@ -1123,23 +1123,23 @@
                         List<Map<String,Object>> sizeFaces = FastList.newInstance();
                         while (j < storeFontSizeCodeTypes.length) {
                             Map<String,Object> storeFontSizeCodeTypeMap = FastMap.newInstance();
-                            StoreFontSizeCodeType storeFontSizeCodeType = (StoreFontSizeCodeType)storeFontSizeCodeTypes[j];
-                            storeFontSizeCodeTypeMap.put("storeFontSizeValue",storeFontSizeCodeType.value());
-                            storeFontSizeCodeTypeMap.put("storeFontSizeName",storeFontSizeCodeType.name());
+                            StoreFontSizeCodeType storeFontSizeCodeType = (StoreFontSizeCodeType) storeFontSizeCodeTypes[j];
+                            storeFontSizeCodeTypeMap.put("storeFontSizeValue", storeFontSizeCodeType.value());
+                            storeFontSizeCodeTypeMap.put("storeFontSizeName", storeFontSizeCodeType.name());
                             sizeFaces.add(storeFontSizeCodeTypeMap);
                             j++;
                         }
-                        advanceFontTheme.put("storeFontTypeSizeFaceList",sizeFaces);
+                        advanceFontTheme.put("storeFontTypeSizeFaceList", sizeFaces);
 
-                        advanceFontTheme.put("storeFontTypeTitleColor",storeFontType.getTitleColor());
+                        advanceFontTheme.put("storeFontTypeTitleColor", storeFontType.getTitleColor());
                         j = 0;
                         StoreFontFaceCodeType[] storeFontTypeTitleFaces = storeFontType.getTitleFace().values();
                         List<Map<String,Object>> titleFaces = FastList.newInstance();
                         while (j < storeFontTypeTitleFaces.length) {
                             Map<String,Object> storeFontTypeTitleFaceMap = FastMap.newInstance();
-                            StoreFontFaceCodeType storeFontTypeTitleFace = (StoreFontFaceCodeType)storeFontTypeTitleFaces[j];
-                            storeFontTypeTitleFaceMap.put("storeFontValue",storeFontTypeTitleFace.value());
-                            storeFontTypeTitleFaceMap.put("storeFontName",storeFontTypeTitleFace.name());
+                            StoreFontFaceCodeType storeFontTypeTitleFace = (StoreFontFaceCodeType) storeFontTypeTitleFaces[j];
+                            storeFontTypeTitleFaceMap.put("storeFontValue", storeFontTypeTitleFace.value());
+                            storeFontTypeTitleFaceMap.put("storeFontName", storeFontTypeTitleFace.name());
                             titleFaces.add(storeFontTypeTitleFaceMap);
                             j++;
                         }
@@ -1150,24 +1150,24 @@
                         List<Map<String,Object>> titleSizes = FastList.newInstance();
                         while (j < storeTitleSizeCodeTypes.length) {
                             Map<String,Object> storeFontSizeCodeTypeMap = FastMap.newInstance();
-                            StoreFontSizeCodeType storeFontSizeCodeType = (StoreFontSizeCodeType)storeTitleSizeCodeTypes[j];
-                            storeFontSizeCodeTypeMap.put("storeFontSizeValue",storeFontSizeCodeType.value());
-                            storeFontSizeCodeTypeMap.put("storeFontSizeName",storeFontSizeCodeType.name());
+                            StoreFontSizeCodeType storeFontSizeCodeType = (StoreFontSizeCodeType) storeTitleSizeCodeTypes[j];
+                            storeFontSizeCodeTypeMap.put("storeFontSizeValue", storeFontSizeCodeType.value());
+                            storeFontSizeCodeTypeMap.put("storeFontSizeName", storeFontSizeCodeType.name());
                             titleSizes.add(storeFontSizeCodeTypeMap);
                             j++;
                         }
                         advanceFontTheme.put("storeFontSizeTitleList",titleSizes);
 
 
-                        advanceFontTheme.put("storeFontTypeDescColor",storeFontType.getDescColor());
+                        advanceFontTheme.put("storeFontTypeDescColor", storeFontType.getDescColor());
                         j = 0;
                         StoreFontFaceCodeType[] storeFontTypeDescFaces = storeFontType.getDescFace().values();
                         List<Map<String,Object>> descFaces = FastList.newInstance();
                         while (j < storeFontTypeDescFaces.length) {
                             Map<String,Object> storeFontTypeDescFaceMap = FastMap.newInstance();
-                            StoreFontFaceCodeType storeFontTypeDescFace = (StoreFontFaceCodeType)storeFontTypeDescFaces[j];
-                            storeFontTypeDescFaceMap.put("storeFontValue",storeFontTypeDescFace.value());
-                            storeFontTypeDescFaceMap.put("storeFontName",storeFontTypeDescFace.name());
+                            StoreFontFaceCodeType storeFontTypeDescFace = (StoreFontFaceCodeType) storeFontTypeDescFaces[j];
+                            storeFontTypeDescFaceMap.put("storeFontValue", storeFontTypeDescFace.value());
+                            storeFontTypeDescFaceMap.put("storeFontName", storeFontTypeDescFace.name());
                             descFaces.add(storeFontTypeDescFaceMap);
                             j++;
                         }
@@ -1178,9 +1178,9 @@
                         List<Map<String,Object>> descSizes = FastList.newInstance();
                         while (j < storeDescSizeCodeTypes.length) {
                             Map<String,Object> storeFontSizeCodeTypeMap = FastMap.newInstance();
-                            StoreFontSizeCodeType storeFontSizeCodeType = (StoreFontSizeCodeType)storeDescSizeCodeTypes[j];
-                            storeFontSizeCodeTypeMap.put("storeFontSizeValue",storeFontSizeCodeType.value());
-                            storeFontSizeCodeTypeMap.put("storeFontSizeName",storeFontSizeCodeType.name());
+                            StoreFontSizeCodeType storeFontSizeCodeType = (StoreFontSizeCodeType) storeDescSizeCodeTypes[j];
+                            storeFontSizeCodeTypeMap.put("storeFontSizeValue", storeFontSizeCodeType.value());
+                            storeFontSizeCodeTypeMap.put("storeFontSizeName", storeFontSizeCodeType.name());
                             descSizes.add(storeFontSizeCodeTypeMap);
                             j++;
                         }
@@ -1251,7 +1251,7 @@
                         String storeThemeId = null;
                         String storeColorSchemeId = null;
                         if (storeBasicTheme.indexOf("-") != -1) {
-                            storeThemeId = storeBasicTheme.substring(0,storeBasicTheme.indexOf("-"));
+                            storeThemeId = storeBasicTheme.substring(0, storeBasicTheme.indexOf("-"));
                             storeColorSchemeId = storeBasicTheme.substring(storeBasicTheme.indexOf("-")+1);
                         }
                         if (storeColorSchemeId != null) storeColorScheme.setColorSchemeID(Integer.parseInt(storeColorSchemeId));
@@ -1324,7 +1324,7 @@
     }
 
     public static Map<String, Object> getEbayActiveItems(DispatchContext dctx, Map<String, ? extends Object> context) {
-        Map<String, Object>result = FastMap.newInstance();
+        Map<String, Object> result = FastMap.newInstance();
         LocalDispatcher dispatcher = dctx.getDispatcher();
         GenericValue userLogin = (GenericValue) context.get("userLogin");
         Delegator delegator = dctx.getDelegator();
@@ -1336,7 +1336,7 @@
             inMap.put("productStoreId", productStoreId);
             inMap.put("userLogin", userLogin);
             Map<String, Object> resultUser = dispatcher.runSync("getEbayStoreUser", inMap);
-            String userID = (String)resultUser.get("userLoginId");
+            String userID = (String) resultUser.get("userLoginId");
             ApiContext apiContext = EbayStoreHelper.getApiContext(productStoreId, locale, delegator);
             GetMyeBaySellingCall getMyeBaySellingCall = new GetMyeBaySellingCall(apiContext);
             ItemListCustomizationType activeList = new ItemListCustomizationType();
@@ -1397,7 +1397,7 @@
     }
 
     public static Map<String, Object> getEbaySoldItems(DispatchContext dctx, Map<String, ? extends Object> context) {
-        Map<String, Object>result = FastMap.newInstance();
+        Map<String, Object> result = FastMap.newInstance();
         LocalDispatcher dispatcher = dctx.getDispatcher();
         GenericValue userLogin = (GenericValue) context.get("userLogin");
         Delegator delegator = dctx.getDelegator();
@@ -1409,7 +1409,7 @@
             inMap.put("productStoreId", productStoreId);
             inMap.put("userLogin", userLogin);
             Map<String, Object> resultUser = dispatcher.runSync("getEbayStoreUser", inMap);
-            String userID = (String)resultUser.get("userLoginId");
+            String userID = (String) resultUser.get("userLoginId");
             ApiContext apiContext = EbayStoreHelper.getApiContext(productStoreId, locale, delegator);
             GetSellingManagerSoldListingsCall sellingManagerSoldListings = new GetSellingManagerSoldListingsCall(apiContext);
             sellingManagerSoldListings.getSellingManagerSoldListings();
@@ -1436,6 +1436,11 @@
                                 buyer  = sellingManagerSoldOrder.getBuyerID();
                             }
                             entry.put("buyer", buyer);
+                            String buyerEmail = null;
+                            if (sellingManagerSoldOrder.getBuyerID() != null) {
+                             buyerEmail  = sellingManagerSoldOrder.getBuyerEmail();
+                            }
+                            entry.put("buyerEmail", buyerEmail);
                             GetItemCall api = new GetItemCall(apiContext);
                             api.setItemID(sellingManagerSoldTransaction.getItemID());
                             DetailLevelCodeType[] detailLevels = new DetailLevelCodeType[] {
@@ -1475,6 +1480,8 @@
                             }
                             Date paidTime = null;
                             String checkoutStatus = null;
+                            String shippedStatus = null;
+                            Date shippedTime = null;
                             if (sellingManagerSoldOrder.getOrderStatus() != null) {
                                 if (sellingManagerSoldOrder.getOrderStatus().getPaidTime() != null) {
                                     paidTime  = sellingManagerSoldOrder.getOrderStatus().getPaidTime().getTime();
@@ -1482,9 +1489,17 @@
                                 if (sellingManagerSoldOrder.getOrderStatus().getCheckoutStatus() != null) {
                                     checkoutStatus  = sellingManagerSoldOrder.getOrderStatus().getCheckoutStatus().value();
                                 }
+                                if (sellingManagerSoldOrder.getOrderStatus().getShippedStatus() != null) {
+                                    shippedStatus = sellingManagerSoldOrder.getOrderStatus().getShippedStatus().value();
+                                }
+                                if (sellingManagerSoldOrder.getOrderStatus().getShippedTime() != null) {
+                                 shippedTime = sellingManagerSoldOrder.getOrderStatus().getShippedTime().getTime();
+                                }
                             }
                             entry.put("paidTime", paidTime);
                             entry.put("checkoutStatus", checkoutStatus);
+                            entry.put("shippedStatus", shippedStatus);
+                            entry.put("shippedTime", shippedTime);
                             soldItems.add(entry);
                         }
                     }
@@ -1518,7 +1533,7 @@
                     for (int i = 0; i < returnedSellingManagerProductType.length; i++) {
                        SellingManagerProductInventoryStatusType sellingProductInventory = returnedSellingManagerProductType[i].getSellingManagerProductInventoryStatus();
                        SellingManagerProductDetailsType prodDetailType = returnedSellingManagerProductType[i].getSellingManagerProductDetails();
-                       Long productID = (Long)prodDetailType.getProductID();
+                       Long productID = (Long) prodDetailType.getProductID();
                        int qty = prodDetailType.getQuantityAvailable();
 
                        if (qty == 0) {
@@ -1573,7 +1588,7 @@
         Map<String, Object> eBayConfigResult = EbayHelper.buildEbayConfig(context, delegator);
         Map response = null;
         try {
-            GenericValue product = delegator.findByPrimaryKey("Product", UtilMisc.toMap("productId",context.get("productId").toString()));
+            GenericValue product = delegator.findByPrimaryKey("Product", UtilMisc.toMap("productId", context.get("productId").toString()));
             int intAtp = 1;
             String facilityId = "";
             if (UtilValidate.isNotEmpty(context.get("requireEbayInventory")) && "on".equals(context.get("requireEbayInventory").toString())) {
@@ -1622,7 +1637,7 @@
                 if (UtilValidate.isNotEmpty(context.get("listingTypeAuc")) && "on".equals(context.get("listingTypeAuc").toString())) {
                     context.put("listingFormat", "Chinese");
                     context.put("listingDuration",  context.get("listingDurationAuc").toString());
-                    
+
                     StringBuffer dataItemsXml = new StringBuffer();
                     Map resultMap = ProductsExportToEbay.buildDataItemsXml(dctx, context, dataItemsXml, eBayConfigResult.get("token").toString(), product);
                     if (!ServiceUtil.isFailure(resultMap)) {
@@ -1664,7 +1679,7 @@
                     Map<String,Object> inMap = FastMap.newInstance();
                     inMap.put("productStoreId", context.get("productStoreId").toString());
                     inMap.put("facilityId", facilityId);
-                    inMap.put("productId",context.get("productId"));
+                    inMap.put("productId", context.get("productId"));
                     inMap.put("availableToPromiseListing", new BigDecimal(newAtp));
                     inMap.put("userLogin", context.get("userLogin"));
                     dispatcher.runSync("updateEbayProductStoreInventory", inMap);
@@ -1728,7 +1743,7 @@
     }
 
     public static Map<String, Object> addEbayDispute(DispatchContext dctx, Map<String, ? extends Object> context) {
-        Map<String, Object>result = FastMap.newInstance();
+        Map<String, Object> result = FastMap.newInstance();
         LocalDispatcher dispatcher = dctx.getDispatcher();
         GenericValue userLogin = (GenericValue) context.get("userLogin");
         Delegator delegator = dctx.getDelegator();
@@ -1762,7 +1777,7 @@
     }
 
     public static Map<String, Object> verifyEbayAddSecondChanceItem(DispatchContext dctx, Map<String, ? extends Object> context) {
-        Map<String, Object>result = FastMap.newInstance();
+        Map<String, Object> result = FastMap.newInstance();
         boolean checkVerify = false;
         LocalDispatcher dispatcher = dctx.getDispatcher();
         GenericValue userLogin = (GenericValue) context.get("userLogin");
@@ -1782,15 +1797,15 @@
             verify.setDetailLevel(detailLevels);
 
             verify.setDuration(SecondChanceOfferDurationCodeType.DAYS_1);
-            Map<String, Object>serviceMap = FastMap.newInstance();
+            Map<String, Object> serviceMap = FastMap.newInstance();
             serviceMap.put("itemId", itemID);
             serviceMap.put("productStoreId", productStoreId);
             serviceMap.put("locale", locale);
             serviceMap.put("userLogin", userLogin);
-            Map<String, Object>bidderTest = (Map)getEbayAllBidders(dctx, serviceMap);
-            List<Map>test = (List)bidderTest.get("allBidders");
+            Map<String, Object> bidderTest = (Map) getEbayAllBidders(dctx, serviceMap);
+            List<Map> test = (List) bidderTest.get("allBidders");
             if (test.size() != 0) {
-                verify.setRecipientBidderUserID((String)test.get(0).get("userId"));
+                verify.setRecipientBidderUserID((String) test.get(0).get("userId"));
             }
             VerifyAddSecondChanceItemResponseType verifyResult = verify.verifyAddSecondChanceItem();
             result.put("checkVerify", true);
@@ -1804,8 +1819,8 @@
     }
 
     public static Map<String, Object> getEbayAllBidders(DispatchContext dctx, Map<String, ? extends Object> context) {
-        Map<String, Object>result = FastMap.newInstance();
-        List<Map>allBidders = FastList.newInstance();
+        Map<String, Object> result = FastMap.newInstance();
+        List<Map> allBidders = FastList.newInstance();
         LocalDispatcher dispatcher = dctx.getDispatcher();
         GenericValue userLogin = (GenericValue) context.get("userLogin");
         Delegator delegator = dctx.getDelegator();
@@ -1826,9 +1841,10 @@
             OfferType[] bidders = api.getAllBidders();
 
             for (int count = 0; count < bidders.length; count++) {
-                Map<String, Object>entry = FastMap.newInstance();
+                Map<String, Object> entry = FastMap.newInstance();
                 OfferType offer = bidders[count];
                 entry.put("userId", offer.getUser().getUserID());
+                entry.put("bidder", offer.getUser());
                 allBidders.add(entry);
               }
             result.put("allBidders", allBidders);
@@ -1841,7 +1857,7 @@
     }
 
     public static Map<String, Object> addEbaySecondChanceOffer(DispatchContext dctx, Map<String, ? extends Object> context) {
-        Map<String, Object>result = FastMap.newInstance();
+        Map<String, Object> result = FastMap.newInstance();
         LocalDispatcher dispatcher = dctx.getDispatcher();
         GenericValue userLogin = (GenericValue) context.get("userLogin");
         Delegator delegator = dctx.getDelegator();

Modified: ofbiz/trunk/specialpurpose/ebaystore/src/org/ofbiz/ebaystore/EbayStoreAutoPreferences.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/ebaystore/src/org/ofbiz/ebaystore/EbayStoreAutoPreferences.java?rev=918909&r1=918908&r2=918909&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/ebaystore/src/org/ofbiz/ebaystore/EbayStoreAutoPreferences.java (original)
+++ ofbiz/trunk/specialpurpose/ebaystore/src/org/ofbiz/ebaystore/EbayStoreAutoPreferences.java Thu Mar  4 09:20:47 2010
@@ -41,12 +41,14 @@
 import org.ofbiz.base.util.UtilDateTime;
 import org.ofbiz.base.util.UtilHttp;
 import org.ofbiz.base.util.UtilMisc;
+import org.ofbiz.base.util.UtilProperties;
 import org.ofbiz.base.util.UtilValidate;
 import org.ofbiz.entity.Delegator;
 import org.ofbiz.entity.GenericEntityException;
 import org.ofbiz.entity.GenericValue;
 import org.ofbiz.entity.condition.EntityCondition;
 import org.ofbiz.entity.condition.EntityOperator;
+import org.ofbiz.product.store.ProductStoreWorker;
 import org.ofbiz.service.DispatchContext;
 import org.ofbiz.service.GenericServiceException;
 import org.ofbiz.service.LocalDispatcher;
@@ -270,8 +272,9 @@
     /* start automatically service send a Feedback Reminder email if feedback has not been received. and check how many days after shipping you want this email sent? */
     public static Map<String, Object> autoSendFeedbackReminderEmail(DispatchContext dctx, Map<String, ? extends Object> context) throws ApiException, SdkException, Exception {
         Delegator delegator = dctx.getDelegator();
+        LocalDispatcher dispatcher = dctx.getDispatcher();
         Locale locale = (Locale) context.get("locale");
-
+        GenericValue userLogin = (GenericValue) context.get("userLogin");
         if (UtilValidate.isEmpty(context.get("productStoreId")) && UtilValidate.isEmpty(context.get("jobId"))) {
             return ServiceUtil.returnFailure("Required productStoreId for get api context to connect with ebay site.");
         }
@@ -323,15 +326,30 @@
                         }
 
                         // call service send email (get template follow productStoreId)
-                        GetUserCall getUserCall = new GetUserCall(apiContext);
-                        String sellerUser = getUserCall.getUser().getUserID();
                         for (SellingManagerSoldOrderType item : items) {
-                            // start leave feedbacks
-                            SellingManagerSoldTransactionType[] soldTrans = item.getSellingManagerSoldTransaction();
-                            if (UtilValidate.isNotEmpty(soldTrans)) {
-                                for (SellingManagerSoldTransactionType soldTran : soldTrans) {
-                                    // call send
-                                }
+                            // call send
+                            Map<String, Object> sendMap = FastMap.newInstance();
+                            GenericValue productStoreEmail = delegator.findByPrimaryKey("ProductStoreEmailSetting", UtilMisc.toMap("productStoreId", productStoreId, "emailType", "EBAY_FEEBACK_REMIN"));
+                            String bodyScreenLocation = productStoreEmail.getString("bodyScreenLocation");
+                            sendMap.put("bodyScreenUri", bodyScreenLocation);
+                            String subjectString = productStoreEmail.getString("subject");
+                            sendMap.put("userLogin", userLogin);
+                            sendMap.put("subject", subjectString);
+                            sendMap.put("contentType", productStoreEmail.get("contentType"));
+                            sendMap.put("sendFrom", productStoreEmail.get("fromAddress"));
+                            sendMap.put("sendCc", productStoreEmail.get("ccAddress"));
+                            sendMap.put("sendBcc", productStoreEmail.get("bccAddress"));
+                            sendMap.put("sendTo", item.getBuyerEmail());
+
+                            Map<String, Object> bodyParameters = FastMap.newInstance();
+                            bodyParameters.put("buyerUserId", item.getBuyerID());
+                            sendMap.put("bodyParameters", bodyParameters);
+
+                            try {
+                                dispatcher.runAsync("sendMailFromScreen", sendMap);
+                            } catch (Exception e) {
+                                Debug.logError(e, module);
+                                return ServiceUtil.returnError(e.getMessage());
                             }
                         }
                     }
@@ -615,6 +633,7 @@
     /* start automatically service send an email when ebay seller has been received payment from ebay buyer */
     public static Map<String, Object> autoSendPaymentReceivedEmail(DispatchContext dctx, Map<String, ? extends Object> context) throws ApiException, SdkException, Exception {
         Delegator delegator = dctx.getDelegator();
+        LocalDispatcher dispatcher = dctx.getDispatcher();
         Locale locale = (Locale) context.get("locale");
         GenericValue userLogin = delegator.findOne("UserLogin", false, "userLoginId", "system");
 
@@ -659,12 +678,29 @@
                         GetUserCall getUserCall = new GetUserCall(apiContext);
                         String sellerUser = getUserCall.getUser().getUserID();
                         for (SellingManagerSoldOrderType item : items) {
-                            // start leave feedbacks
-                            SellingManagerSoldTransactionType[] soldTrans = item.getSellingManagerSoldTransaction();
-                            if (UtilValidate.isNotEmpty(soldTrans)) {
-                                for (SellingManagerSoldTransactionType soldTran : soldTrans) {
-                                    // call send
-                                }
+                            // call send
+                            Map<String, Object> sendMap = FastMap.newInstance();
+                            GenericValue productStoreEmail = delegator.findByPrimaryKey("ProductStoreEmailSetting", UtilMisc.toMap("productStoreId", productStoreId, "emailType", "EBAY_PAY_RECIEVED"));
+                            String bodyScreenLocation = productStoreEmail.getString("bodyScreenLocation");
+                            sendMap.put("bodyScreenUri", bodyScreenLocation);
+                            String subjectString = productStoreEmail.getString("subject");
+                            sendMap.put("userLogin", userLogin);
+                            sendMap.put("subject", subjectString);
+                            sendMap.put("contentType", productStoreEmail.get("contentType"));
+                            sendMap.put("sendFrom", productStoreEmail.get("fromAddress"));
+                            sendMap.put("sendCc", productStoreEmail.get("ccAddress"));
+                            sendMap.put("sendBcc", productStoreEmail.get("bccAddress"));
+                            sendMap.put("sendTo", item.getBuyerEmail());
+
+                            Map<String, Object> bodyParameters = FastMap.newInstance();
+                            bodyParameters.put("buyerUserId", item.getBuyerID());
+                            sendMap.put("bodyParameters", bodyParameters);
+
+                            try {
+                                dispatcher.runAsync("sendMailFromScreen", sendMap);
+                            } catch (Exception e) {
+                                Debug.logError(e, module);
+                                return ServiceUtil.returnError(e.getMessage());
                             }
                         }
                     }
@@ -861,4 +897,74 @@
             }
         }
     }
+
+    public static Map<String, Object> autoSendWinningBuyerNotification(DispatchContext dctx, Map<String, Object> context) {
+        Map<String, Object> result = FastMap.newInstance();
+        LocalDispatcher dispatcher = dctx.getDispatcher();
+        GenericValue userLogin = (GenericValue) context.get("userLogin");
+        Delegator delegator = dctx.getDelegator();
+        Locale locale = (Locale) context.get("locale");
+        String productStoreId = (String) context.get("productStoreId");
+        try {
+            Map<String, Object> resultSold =  dispatcher.runSync("getEbaySoldItems", UtilMisc.toMap("productStoreId", productStoreId, "userLogin", userLogin));
+            List soldItems = (List) resultSold.get("soldItems");
+            if (soldItems.size() != 0) {
+                for (int i = 0; i < soldItems.size(); i++) {
+                    Map<String, Object> item = (Map<String, Object>) soldItems.get(i);
+                    Timestamp lastestTime = UtilDateTime.getDayStart(UtilDateTime.nowTimestamp(), 1);
+                    Date creationDate = (Date) item.get("creationTime");
+                    Timestamp creationTime = UtilDateTime.toTimestamp(creationDate);
+
+                    if (creationTime.equals(lastestTime) && (item.get("listingType").toString().equals("Chinese"))) {
+                        Map<String, Object> serviceMap = FastMap.newInstance();
+                        serviceMap.put("userLogin", userLogin);
+                        serviceMap.put("locale", locale);
+                        serviceMap.put("productStoreId", productStoreId);
+                        serviceMap.put("itemId", item.get("itemId").toString());
+                        Map<String, Object> resultBid =  dispatcher.runSync("getEbayAllBidders", serviceMap);
+                        List<Map> allBidders =  (List<Map>) resultBid.get("allBidders");
+
+                        if (allBidders.size() != 0) {
+                            // call to send email to bidder
+                            for (int j = 0; j < allBidders.size(); j++) {
+                                Map<String, Object> bidder = (Map<String, Object>) allBidders.get(j);
+                                UserType user = (UserType) bidder.get("bidder");
+                                String buyerUserId = bidder.get("userId").toString();
+
+                                Map<String, Object> sendMap = FastMap.newInstance();
+                                GenericValue productStoreEmail = delegator.findByPrimaryKey("ProductStoreEmailSetting", UtilMisc.toMap("productStoreId", productStoreId, "emailType", "EBAY_WIN_BUYER_NOTI"));
+                                String bodyScreenLocation = productStoreEmail.getString("bodyScreenLocation");
+                                sendMap.put("bodyScreenUri", bodyScreenLocation);
+                                String subjectString = productStoreEmail.getString("subject");
+                                sendMap.put("userLogin", userLogin);
+                                sendMap.put("subject", subjectString);
+                                sendMap.put("contentType", productStoreEmail.get("contentType"));
+                                sendMap.put("sendFrom", productStoreEmail.get("fromAddress"));
+                                sendMap.put("sendCc", productStoreEmail.get("ccAddress"));
+                                sendMap.put("sendBcc", productStoreEmail.get("bccAddress"));
+                                sendMap.put("sendTo", user.getEmail());
+
+                                Map<String, Object> bodyParameters = FastMap.newInstance();
+                                bodyParameters.put("buyerUserId", buyerUserId);
+                                sendMap.put("bodyParameters", bodyParameters);
+
+                                try {
+                                    dispatcher.runAsync("sendMailFromScreen", sendMap);
+                                } catch (Exception e) {
+                                    Debug.logError(e, module);
+                                    return ServiceUtil.returnError(e.getMessage());
+                                }
+                            }
+                        }
+                    }
+                }
+            }
+            result = ServiceUtil.returnSuccess();
+        } catch (GenericServiceException e) {
+            result = ServiceUtil.returnError(e.getMessage());
+        } catch (Exception e) {
+            return ServiceUtil.returnError(e.getMessage());
+        }
+        return result;
+    }
 }

Modified: ofbiz/trunk/specialpurpose/ebaystore/webapp/ebaystore/WEB-INF/controller.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/ebaystore/webapp/ebaystore/WEB-INF/controller.xml?rev=918909&r1=918908&r2=918909&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/ebaystore/webapp/ebaystore/WEB-INF/controller.xml (original)
+++ ofbiz/trunk/specialpurpose/ebaystore/webapp/ebaystore/WEB-INF/controller.xml Thu Mar  4 09:20:47 2010
@@ -181,6 +181,12 @@
         <response name="success" type="request-redirect" value="automationPreferences"/>
         <response name="error" type="view" value="AutomationPreferences"/>
     </request-map>
+    <request-map uri="settingWinningBuyerNotification">
+        <security https="true" auth="true"/>
+        <event type="simple" path="component://ebaystore/script/org/ofbiz/ebaystore/EbayStoreEvents.xml" invoke="settingWinningBuyerNotification"/>
+        <response name="success" type="request-redirect" value="automationPreferences"/>
+        <response name="error" type="view" value="AutomationPreferences"/>
+    </request-map>
     <!-- Block item out of stock -->
     <request-map uri="blockItemOutOfStock">
         <security https="true" auth="true"/>

Modified: ofbiz/trunk/specialpurpose/ebaystore/widget/EbayEmailScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/ebaystore/widget/EbayEmailScreens.xml?rev=918909&r1=918908&r2=918909&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/ebaystore/widget/EbayEmailScreens.xml (original)
+++ ofbiz/trunk/specialpurpose/ebaystore/widget/EbayEmailScreens.xml Thu Mar  4 09:20:47 2010
@@ -22,84 +22,84 @@
     <screen name="EbayEmailTemplate">
         <section>
             <actions>
-             <service service-name="getEbayStoreUser" result-map="result">
+                <service service-name="getEbayStoreUser" result-map="result">
                     <field-map field-name="productStoreId" from-field="parameters.productStoreId"/>
                 </service>
                 <service service-name="getEbayUser" result-map="ebayUser">
- <field-map field-name="productStoreId" from-field="parameters.productStoreId"/>
- </service>
+                    <field-map field-name="productStoreId" from-field="parameters.productStoreId"/>
+                </service>
                 <set field="userLoginId" from-field="result.userLoginId"/>
                 <set field="emailType" from-field="parameters.emailType"/>
                 <entity-one value-field="emailSetting" entity-name="ProductStoreEmailSetting">
-                 <field-map field-name="productStoreId" from-field="parameters.productStoreId"/>
-                 <field-map field-name="emailType" from-field="emailType"/>
+                    <field-map field-name="productStoreId" from-field="parameters.productStoreId"/>
+                    <field-map field-name="emailType" from-field="emailType"/>
                 </entity-one>
                 <set field="subject" from-field="emailSetting.subject"/>
                 <set field="bodyScreenLocation" value="component://ebaystore/widget/EbayEmailScreens.xml#EbayEmailTemplate"/>
-               <set field="fromAddress" from-field="ebayUser.email"/>
-               <entity-one value-field="userLoginCheck" entity-name="UserLogin">
-               <field-map field-name="userLoginId" from-field="userLoginId"/>
-               </entity-one>
-               <set field="partyId" from-field="userLoginCheck.partyId"/>
-               <script location="component://ebaystore/webapp/ebaystore/WEB-INF/actions/email/GetProductStoreEmailTemplate.groovy"/>
-               <entity-one value-field="templateContent" entity-name="Content"/>
-               <get-related-one value-field="templateContent" relation-name="DataResource" to-value-field="templateDataResource"/>
-               <get-related-one value-field="templateDataResource" relation-name="ElectronicText" to-value-field="templateData"/>
-               <set field="textData" from-field="templateData.textData"/>
-               <set field="dataResourceId" from-field="templateData.dataResourceId"/>
-             <script location="component://ebaystore/webapp/ebaystore/WEB-INF/actions/email/GetEmailOptions.groovy"/>
-             <!-- set all parameters -->
-             <set field="emailType" from-field="parameters.emailType"/>
-             <set field="buyerUserId" from-field="parameters.buyerUserId" default-value="None"/>
-             <set field="buyerName" from-field="parameters.buyerName" default-value="None"/>
-             <set field="buyerFirstName" from-field="parameters.buyerFirstName" default-value="None"/>
-             <set field="buyerLastName" from-field="parameters.buyerLastName" default-value="None"/>
-             <set field="buyerStreet1" from-field="parameters.buyerStreet1" default-value="None"/>
-             <set field="buyerStreet2" from-field="parameters.itemId" default-value="None"/>
-             <set field="buyerCity" from-field="parameters.buyerCity" default-value="None"/>
-             <set field="buyerState" from-field="parameters.buyerState" default-value="None"/>
-             <set field="buyerZipCode" from-field="parameters.buyerZipCode" default-value="None"/>
-             <set field="buyerCountry" from-field="parameters.buyerCountry" default-value="None"/>
-             <set field="itemTitle" from-field="parameters.itemTitle" default-value="None"/>
-             <set field="linkToListing" from-field="parameters.Quantity" default-value="None"/>
-             <set field="favoriteslist" from-field="parameters.favoriteslist" default-value="None"/>
-             <set field="feedbackLink" from-field="parameters.feedbackLink" default-value="None"/>
-             <set field="closingDateTime" from-field="parameters.closingDateTime" default-value="None"/>
-             <set field="totalPrice" from-field="parameters.totalPrice" default-value="None"/>
-             <set field="closingPrice" from-field="parameters.closingPrice" default-value="None"/>
-             <set field="SHFee" from-field="parameters.SHFee" default-value="None"/>
-             <set field="insuranceCost" from-field="parameters.insuranceCost" default-value="None"/>
-             <set field="insuranceOption" from-field="parameters.insuranceOption" default-value="None"/>
-             <set field="tax" from-field="parameters.tax" default-value="None"/>
-             <set field="taxState" from-field="parameters.taxState" default-value="None"/>
-             <set field="paymentAcceped" from-field="parameters.paymentAcceped" default-value="None"/>
-             <set field="paymentInstructions" from-field="parameters.paymentInstructions" default-value="None"/>
-             <set field="sellerUserId" from-field="parameters.sellerUserId" default-value="None"/>
-             <set field="sellerName" from-field="parameters.sellerName" default-value="None"/>
-             <set field="sellerFirstName" from-field="parameters.sellerFirstName" default-value="None"/>
-             <set field="sellerLastName" from-field="parameters.sellerLastName" default-value="None"/>
-             <set field="sellerStreet1" from-field="parameters.sellerStreet1" default-value="None"/>
-             <set field="sellerStreet2" from-field="parameters.sellerStreet2" default-value="None"/>
-             <set field="sellerCity" from-field="parameters.sellerCity" default-value="None"/>
-             <set field="sellerState" from-field="parameters.sellerState" default-value="None"/>
-             <set field="sellerZipCode" from-field="parameters.sellerZipCode" default-value="None"/>
-             <set field="sellerCountry" from-field="parameters.sellerCountry" default-value="None"/>
-             <set field="sellerEmail" from-field="parameters.sellerEmail" default-value="None"/>
-             <set field="sellerPhone" from-field="parameters.sellerPhone" default-value="None"/>
-             <set field="salesRecordNumber" from-field="parameters.salesRecordNumber" default-value="None"/>
-             <set field="shippedDate" from-field="parameters.shippedDate" default-value="None"/>
-             <set field="transactionTable" from-field="parameters.transactionTable" default-value="None"/>
-             <set field="checkoutLink" from-field="parameters.checkoutLink" default-value="None"/>
-             <set field="shippingCalculator" from-field="parameters.shippingCalculator" default-value="None"/>
-             <set field="trackShipmentLink" from-field="parameters.trackShipmentLink" default-value="None"/>
-             <set field="shippingOptions" from-field="parameters.shippingOptions" default-value="None"/>
-             <set field="notesToBuyer" from-field="parameters.notesToBuyer" default-value="None"/>
-             <set field="DiscountsOrCharges" from-field="parameters.DiscountsOrCharges" default-value="None"/>
-             <set field="refundAmount" from-field="parameters.refundAmount" default-value="None"/>
-             <set field="variationDetails" from-field="parameters.variationDetails" default-value="None"/>
+                   <set field="fromAddress" from-field="ebayUser.email"/>
+                   <entity-one value-field="userLoginCheck" entity-name="UserLogin">
+                       <field-map field-name="userLoginId" from-field="userLoginId"/>
+                   </entity-one>
+                   <set field="partyId" from-field="userLoginCheck.partyId"/>
+                   <script location="component://ebaystore/webapp/ebaystore/WEB-INF/actions/email/GetProductStoreEmailTemplate.groovy"/>
+                   <entity-one value-field="templateContent" entity-name="Content"/>
+                   <get-related-one value-field="templateContent" relation-name="DataResource" to-value-field="templateDataResource"/>
+                   <get-related-one value-field="templateDataResource" relation-name="ElectronicText" to-value-field="templateData"/>
+                   <set field="textData" from-field="templateData.textData"/>
+                   <set field="dataResourceId" from-field="templateData.dataResourceId"/>
+                <script location="component://ebaystore/webapp/ebaystore/WEB-INF/actions/email/GetEmailOptions.groovy"/>
+                <!-- set all parameters -->
+                <set field="emailType" from-field="parameters.emailType"/>
+                <set field="buyerUserId" from-field="parameters.buyerUserId" default-value="None"/>
+                <set field="buyerName" from-field="parameters.buyerName" default-value="None"/>
+                <set field="buyerFirstName" from-field="parameters.buyerFirstName" default-value="None"/>
+                <set field="buyerLastName" from-field="parameters.buyerLastName" default-value="None"/>
+                <set field="buyerStreet1" from-field="parameters.buyerStreet1" default-value="None"/>
+                <set field="buyerStreet2" from-field="parameters.itemId" default-value="None"/>
+                <set field="buyerCity" from-field="parameters.buyerCity" default-value="None"/>
+                <set field="buyerState" from-field="parameters.buyerState" default-value="None"/>
+                <set field="buyerZipCode" from-field="parameters.buyerZipCode" default-value="None"/>
+                <set field="buyerCountry" from-field="parameters.buyerCountry" default-value="None"/>
+                <set field="itemTitle" from-field="parameters.itemTitle" default-value="None"/>
+                <set field="linkToListing" from-field="parameters.Quantity" default-value="None"/>
+                <set field="favoriteslist" from-field="parameters.favoriteslist" default-value="None"/>
+                <set field="feedbackLink" from-field="parameters.feedbackLink" default-value="None"/>
+                <set field="closingDateTime" from-field="parameters.closingDateTime" default-value="None"/>
+                <set field="totalPrice" from-field="parameters.totalPrice" default-value="None"/>
+                <set field="closingPrice" from-field="parameters.closingPrice" default-value="None"/>
+                <set field="SHFee" from-field="parameters.SHFee" default-value="None"/>
+                <set field="insuranceCost" from-field="parameters.insuranceCost" default-value="None"/>
+                <set field="insuranceOption" from-field="parameters.insuranceOption" default-value="None"/>
+                <set field="tax" from-field="parameters.tax" default-value="None"/>
+                <set field="taxState" from-field="parameters.taxState" default-value="None"/>
+                <set field="paymentAcceped" from-field="parameters.paymentAcceped" default-value="None"/>
+                <set field="paymentInstructions" from-field="parameters.paymentInstructions" default-value="None"/>
+                <set field="sellerUserId" from-field="parameters.sellerUserId" default-value="None"/>
+                <set field="sellerName" from-field="parameters.sellerName" default-value="None"/>
+                <set field="sellerFirstName" from-field="parameters.sellerFirstName" default-value="None"/>
+                <set field="sellerLastName" from-field="parameters.sellerLastName" default-value="None"/>
+                <set field="sellerStreet1" from-field="parameters.sellerStreet1" default-value="None"/>
+                <set field="sellerStreet2" from-field="parameters.sellerStreet2" default-value="None"/>
+                <set field="sellerCity" from-field="parameters.sellerCity" default-value="None"/>
+                <set field="sellerState" from-field="parameters.sellerState" default-value="None"/>
+                <set field="sellerZipCode" from-field="parameters.sellerZipCode" default-value="None"/>
+                <set field="sellerCountry" from-field="parameters.sellerCountry" default-value="None"/>
+                <set field="sellerEmail" from-field="parameters.sellerEmail" default-value="None"/>
+                <set field="sellerPhone" from-field="parameters.sellerPhone" default-value="None"/>
+                <set field="salesRecordNumber" from-field="parameters.salesRecordNumber" default-value="None"/>
+                <set field="shippedDate" from-field="parameters.shippedDate" default-value="None"/>
+                <set field="transactionTable" from-field="parameters.transactionTable" default-value="None"/>
+                <set field="checkoutLink" from-field="parameters.checkoutLink" default-value="None"/>
+                <set field="shippingCalculator" from-field="parameters.shippingCalculator" default-value="None"/>
+                <set field="trackShipmentLink" from-field="parameters.trackShipmentLink" default-value="None"/>
+                <set field="shippingOptions" from-field="parameters.shippingOptions" default-value="None"/>
+                <set field="notesToBuyer" from-field="parameters.notesToBuyer" default-value="None"/>
+                <set field="DiscountsOrCharges" from-field="parameters.DiscountsOrCharges" default-value="None"/>
+                <set field="refundAmount" from-field="parameters.refundAmount" default-value="None"/>
+                <set field="variationDetails" from-field="parameters.variationDetails" default-value="None"/>
             </actions>
             <widgets>
- <content content-id="${contentId}"/>
+                <content content-id="${contentId}"/>
             </widgets>
         </section>
     </screen>