This is a good point. Data preparation scripts should not be putting results in the parameters Map, they should always go into the context Map. The parameters Map is meant to be just the data coming into a screen/service/whatever.

Changing the inputs is allowed, but should be carefully done and well separated from other things.

-David


On Aug 1, 2008, at 4:03 PM, Scott Gray wrote:

Hi Vikas

Why are the groovy scripts putting all their output variables into the
parameters map rather than straight into the context?  I only ask
because I've converted a lot of bsh scripts to groovy and I'm not used
to seeing that done.

Thanks
Scott

2008/8/2  <[EMAIL PROTECTED]>:
Author: mor
Date: Fri Aug  1 10:04:44 2008
New Revision: 681750

URL: http://svn.apache.org/viewvc?rev=681750&view=rev
Log:
From now One Page Checkout supports registered process. Thanks to Sumit Pandit, Jyotsna Rathore, Brajesh Patel and Rishi Solanki their efforts ...

Added:
ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/ actions/customer/EditBillingAddress.groovy (with props) ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/ actions/customer/EditEmailAndTelecomNumber.groovy (with props) ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/ actions/customer/EditShippingAddress.groovy (with props)
Modified:
ofbiz/trunk/applications/ecommerce/script/org/ofbiz/ecommerce/ customer/CustomerEvents.xml ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/ controller.xml
  ofbiz/trunk/applications/ecommerce/webapp/ecommerce/login.ftl
ofbiz/trunk/applications/ecommerce/webapp/ecommerce/order/ OnePageCheckoutProcess.ftl
  ofbiz/trunk/applications/ecommerce/widget/OrderScreens.xml
ofbiz/trunk/applications/order/webapp/ordermgr/entry/cart/ minicart.ftl

Modified: ofbiz/trunk/applications/ecommerce/script/org/ofbiz/ ecommerce/customer/CustomerEvents.xml
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/ecommerce/script/org/ofbiz/ecommerce/customer/CustomerEvents.xml?rev=681750&r1=681749&r2=681750&view=diff
= = = = = = = = = ===================================================================== --- ofbiz/trunk/applications/ecommerce/script/org/ofbiz/ecommerce/ customer/CustomerEvents.xml (original) +++ ofbiz/trunk/applications/ecommerce/script/org/ofbiz/ecommerce/ customer/CustomerEvents.xml Fri Aug 1 10:04:44 2008
@@ -1023,8 +1023,8 @@
processor-name="shipToAddress" in-map-name="parameters" out-map-name="shipToAddressCtx"/>
       <check-errors/>
       <set field="shipToAddressCtx.partyId" from-field="partyId"/>
+ <set field="shipToAddressCtx.contactMechPurposeTypeId" value="SHIPPING_LOCATION"/>
       <if-empty field="parameters.shipToContactMechId">
- <set field="shipToAddressCtx.contactMechPurposeTypeId" value="SHIPPING_LOCATION"/> <call-service service-name="createPartyPostalAddress" in- map-name="shipToAddressCtx"> <result-to-field result-name="contactMechId" field- name="parameters.shipToContactMechId"/>
           </call-service>
@@ -1042,7 +1042,6 @@
<set-service-fields service- name="deletePartyContactMechPurposeIfExists" map-name="pcmp" to-map- name="deletePartyContactMechPurposeCtx"/> <call-service service- name="deletePartyContactMechPurposeIfExists" in-map- name="deletePartyContactMechPurposeCtx"/>
               </if-not-empty>
- <set field="shipToAddressCtx.contactMechPurposeTypeId" value="SHIPPING_LOCATION"/> <call-service service- name="createPartyPostalAddress" in-map-name="shipToAddressCtx"> <result-to-field result-name="contactMechId" field-name="parameters.shipToContactMechId"/>
               </call-service>
@@ -1194,130 +1193,131 @@
       </if-not-empty>
       <set-current-user-login value-name="userLogin"/>

- <!--=================== Validate Bill and Payment settings ================--> - <call-map-processor xml-resource="org/ofbiz/accounting/ payment/PaymentMapProcs.xml" - processor-name="createCreditCard" in-map- name="parameters" out-map-name="creditCardContext"/> + <call-simple-method method- name="createUpdateBillingAddress"/>
+        <call-simple-method method-name="createUpdateCreditCard"/>
+
+        <!--============== Set Payment Method ================-->
+ <set field="paymentMethodId" from- field="parameters.paymentMethodId"/> + <set field="cardSecurityCode" from- field="parameters.cardSecurityCode"/> + <field-to-session field-name="userLogin" session- name="userLogin"/>
+        <call-bsh>
+            <![CDATA[
+                import org.ofbiz.order.shoppingcart.ShoppingCart;
+ checkOutHelper = new org.ofbiz.order.shoppingcart.CheckOutHelper(dispatcher, delegator, shoppingCart); + callResult = checkOutHelper.finalizeOrderEntryPayment(paymentMethodId, null, false, false); + ShoppingCart.CartPaymentInfo cpi = shoppingCart.getPaymentInfo(paymentMethodId, null, null, null, true);
+                cpi.securityCode = cardSecurityCode;
+            ]]>
+        </call-bsh>
+    </simple-method>
+
+ <simple-method method-name="createUpdateBillingAddress" short- description="create and update billing address">

<if-compare field="parameters.useShippingAddressForBilling" operator="not-equals" value="Y"> - <set field="parameters.billToName" value="$ {parameters.firstNameOnCard} ${parameters.lastNameOnCard}"/> <call-map-processor xml-resource="org/ofbiz/ecommerce/ customer/CheckoutMapProcs.xml" - processor-name="billToAddress" in-map- name="parameters" out-map-name="billToAddressContext"/> - <map-to-map map-name="billToAddressContext" to-map- name="billToAddressAndCreditCardCtx"/> - <map-to-map map-name="creditCardContext" to-map- name="billToAddressAndCreditCardCtx"/> - <if-compare field="parameters.billToCountryGeoId" value="USA" operator="equals"> - <if-empty field="parameters.billToStateProvinceGeoId"> - <set field="tempErrorMessage" value="State is missing, and is required for an address in the United States."/> - <field-to-list field-name="tempErrorMessage" list-name="error_list"/>
-                </if-empty>
-            </if-compare>
-            <check-errors/>
- <set field="billToAddressAndCreditCardCtx.partyId" from-field="partyId"/> - <set field="creditCardContext.partyId" from- field="partyId"/> - <set field="creditCardContext.userLogin" from- field="userLogin"/> + processor-name="billToAddress" in-map- name="parameters" out-map-name="billToAddressCtx"/>
+        </if-compare>
+        <check-errors/>
+ <set field="billToAddressCtx.contactMechPurposeTypeId" value="BILLING_LOCATION"/>
+        <set field="billToAddressCtx.partyId" from-field="partyId"/>
+
+ <if-compare field="parameters.useShippingAddressForBilling" operator="equals" value="Y"> + <set field="billToAddressCtx.contactMechId" from- field="parameters.shipToContactMechId"/>
           <if-empty field="parameters.billToContactMechId">
- <entity-and entity-name="PartyContactMechPurpose" list-name="pcmpList" filter-by-date="true"> - <field-map field-name="partyId" env- name="userLogin.partyId"/> - <field-map field- name="contactMechPurposeTypeId" value="BILLING_LOCATION"/>
-                </entity-and>
- <first-from-list list-name="pcmpList" entry- name="pcmp"/>
-                <if-not-empty field="pcmp">
- <set-service-fields service- name="deletePartyContactMechPurposeIfExists" map-name="pcmp" to-map- name="deletePartyContactMechPurposeCtx"/> - <call-service service- name="deletePartyContactMechPurposeIfExists" in-map- name="deletePartyContactMechPurposeCtx"/>
-                </if-not-empty>
- <entity-and entity-name="PaymentMethod" list- name="paymentMethodList" filter-by-date="true"> - <field-map field-name="partyId" env- name="parameters.partyId"/>
-                    <order-by field-name="-fromDate"/>
-                </entity-and>
- <first-from-list list-name="paymentMethodList" entry-name="paymentMethod"/> - <set field="billToAddressAndCreditCardCtx.paymentMethodId" from- field="paymentMethod.paymentMethodId"/>
-                <!-- Create Credit Card and Address -->
- <call-service service- name="createCreditCardAndAddress" in-map- name="billToAddressAndCreditCardCtx"> - <result-to-field result-name="contactMechId" field-name="parameters.billToContactMechId"/> - <result-to-field result-name="paymentMethodId" field-name="parameters.paymentMethodId"/>
-                </call-service>
+ <call-service service- name="createPartyContactMechPurpose" in-map-name="billToAddressCtx"/>
           <else>
-                <!-- Update Credit Card and Address -->
- <set field="billToAddressAndCreditCardCtx.contactMechId" from- field="parameters.billToContactMechId"/> - <set field="billToAddressAndCreditCardCtx.paymentMethodId" from- field="parameters.paymentMethodId"/> - <call-service service- name="updateCreditCardAndAddress" in-map- name="billToAddressAndCreditCardCtx"> - <result-to-field result-name="contactMechId" field-name="parameters.billToContactMechId"/> - <result-to-field result-name="paymentMethodId" field-name="parameters.paymentMethodId"/>
-                </call-service>
- <entity-and entity-name="PartyContactMechPurpose" list-name="pcmpList" filter-by-date="true"> - <field-map field-name="partyId" env- name="userLogin.partyId"/> - <field-map field- name="contactMechPurposeTypeId" value="BILLING_LOCATION"/>
-                </entity-and>
- <first-from-list list-name="pcmpList" entry- name="pcmp"/> - <if-compare-field field="parameters.billToContactMechId" operator="not-equals" to- field="pcmp.contactMechId">
-                    <if-not-empty field="pcmp">
+ <if-compare-field field="parameters.shipToContactMechId" operator="not-equals" to- field="parameters.billToContactMechId"> + <entity-and entity- name="PartyContactMechPurpose" list-name="pcmpList"> + <field-map field-name="contactMechId" env- name="parameters.billToContactMechId"/> + <field-map field-name="partyId" env- name="partyId"/> + <field-map field- name="contactMechPurposeTypeId" value="BILLING_LOCATION"/>
+                    </entity-and>
+                    <filter-list-by-date list-name="pcmpList"/>
+                    <iterate list-name="pcmpList" entry-name="pcmp">
<set-service-fields service- name="deletePartyContactMechPurposeIfExists" map-name="pcmp" to-map- name="deletePartyContactMechPurposeCtx"/> <call-service service- name="deletePartyContactMechPurposeIfExists" in-map- name="deletePartyContactMechPurposeCtx"/> - <set-service-fields service- name="deletePartyContactMech" map-name="pcmp" to-map- name="serviceInMap"/> - <call-service service- name="deletePartyContactMech" in-map-name="serviceInMap"/>
-                     </if-not-empty>
+                    </iterate>
+ <call-service service- name="createPartyContactMechPurpose" in-map-name="billToAddressCtx"/> + <log level="info" message="Billing address updated with contactMechId ${parameters.billToContactMechId}"/>
               </if-compare-field>
           </else>
           </if-empty>
- <field-to-request field- name="parameters.paymentMethodId" request-name="paymentMethodId"/> - <field-to-request field- name="parameters.billToContactMechId" request- name="billToContactMechId"/> + <set field="parameters.billToContactMechId" from- field="parameters.shipToContactMechId"/>
       </if-compare>
-
- <if-compare field="parameters.useShippingAddressForBilling" operator="equals" value="Y"> - <entity-and entity-name="PartyContactMechPurpose" list- name="pcmpList" filter-by-date="true"> - <field-map field-name="partyId" env- name="userLogin.partyId"/> - <field-map field-name="contactMechPurposeTypeId" value="BILLING_LOCATION"/>
-            </entity-and>
- <first-from-list list-name="pcmpList" entry- name="pcmp"/> - <if-compare-field field="parameters.shipToContactMechId" operator="not-equals" to- field="pcmp.contactMechId">
-                <if-not-empty field="pcmp">
- <set-service-fields service- name="deletePartyContactMechPurposeIfExists" map-name="pcmp" to-map- name="deletePartyContactMechPurposeCtx"/> - <call-service service- name="deletePartyContactMechPurposeIfExists" in-map- name="deletePartyContactMechPurposeCtx"/> - <set-service-fields service- name="deletePartyContactMech" map-name="pcmp" to-map- name="serviceInMap"/> - <call-service service- name="deletePartyContactMech" in-map-name="serviceInMap"/>
-                </if-not-empty>
- <set field="createPartyContactMechPurposeCtx.partyId" from- field="userLogin.partyId"/> - <set field="createPartyContactMechPurposeCtx.contactMechId" from- field="parameters.shipToContactMechId"/> - <set field="createPartyContactMechPurposeCtx.contactMechPurposeTypeId" value="BILLING_LOCATION"/> - <call-service service- name="createPartyContactMechPurpose" in-map- name="createPartyContactMechPurposeCtx"/>
-            </if-compare-field>
- <field-to-request field- name="parameters.shipToContactMechId" request- name="billToContactMechId"/>
-
- <set field="creditCardContext.contactMechId" from- field="parameters.shipToContactMechId"/>
-            <if-empty field="parameters.paymentMethodId">
-                <!-- Create Credit Card -->
- <call-service service-name="createCreditCard" in- map-name="creditCardContext"> - <result-to-field result-name="paymentMethodId" field-name="parameters.paymentMethodId"/> + <if-compare field="parameters.useShippingAddressForBilling" operator="not- equals" value="Y">
+            <if-empty field="parameters.billToContactMechId">
+ <call-service service- name="createPartyPostalAddress" in-map-name="billToAddressCtx"> + <result-to-field result-name="contactMechId" field-name="parameters.billToContactMechId"/>
               </call-service>
+ <log level="info" message="Billing address created with contactmechId ${parameters.billToContactMechId}"/>
           <else>
- <entity-and entity-name="PaymentMethod" list- name="paymentMethodList" filter-by-date="true"> - <field-map field-name="partyId" env- name="parameters.partyId"/>
-                    <order-by field-name="-fromDate"/>
+ <entity-and entity-name="PartyContactMechPurpose" list-name="pcmpList"> + <field-map field-name="contactMechId" env- name="parameters.billToContactMechId"/> + <field-map field-name="partyId" env- name="partyId"/> + <field-map field- name="contactMechPurposeTypeId" value="BILLING_LOCATION"/>
               </entity-and>
- <first-from-list list-name="paymentMethodList" entry-name="paymentMethod"/> - <set field="creditCardContext.paymentMethodId" from-field="paymentMethod.paymentMethodId"/>
-                <!-- Update Credit Card -->
- <set field="creditCardContext.paymentMethodId" from-field="parameters.paymentMethodId"/> - <call-service service-name="updateCreditCard" in- map-name="creditCardContext"> - <result-to-field result-name="paymentMethodId" field-name="parameters.paymentMethodId"/>
-                </call-service>
+                <filter-list-by-date list-name="pcmpList"/>
+ <if-compare-field field="parameters.shipToContactMechId" operator="equals" to- field="parameters.billToContactMechId">
+                    <iterate list-name="pcmpList" entry-name="pcmp">
+ <set-service-fields service- name="deletePartyContactMechPurposeIfExists" map-name="pcmp" to-map- name="deletePartyContactMechPurposeCtx"/> + <call-service service- name="deletePartyContactMechPurposeIfExists" in-map- name="deletePartyContactMechPurposeCtx"/>
+                    </iterate>
+ <call-service service- name="createPartyPostalAddress" in-map-name="billToAddressCtx"> + <result-to-field result- name="contactMechId" field-name="parameters.billToContactMechId"/>
+                    </call-service>
+ <log level="info" message="Billing address updated with contactMechId ${parameters.billToContactMechId}"/>
+                <else>
+ <first-from-list list-name="pcmpList" entry- name="pcmp"/> + <if-compare-field field="parameters.billToContactMechId" operator="equals" to- field="pcmp.contactMechId"> + <call-service service- name="updatePartyPostalAddress" in-map-name="billToAddressCtx"> + <result-to-field result- name="contactMechId" field-name="parameters.billToContactMechId"/>
+                        </call-service>
+ <log level="info" message="Billing Postal Address Updated billToContactMechId is $ {parameters.billToContactMechId}"/>
+                     <else>
+                        <if-not-empty field="pcmp">
+ <set-service-fields service- name="deletePartyContactMechPurposeIfExists" map-name="pcmp" to-map- name="deletePartyContactMechPurposeCtx"/> + <call-service service- name="deletePartyContactMechPurposeIfExists" in-map- name="deletePartyContactMechPurposeCtx"/>
+                        </if-not-empty>
+ <call-service service- name="createPartyPostalAddress" in-map-name="billToAddressCtx"> + <result-to-field result- name="contactMechId" field-name="parameters.billToContactMechId"/>
+                        </call-service>
+ <log level="info" message="Billing Postal Address created billToContactMechId is $ {parameters.billToContactMechId}"/>
+                    </else>
+                    </if-compare-field>
+                </else>
+                </if-compare-field>
           </else>
           </if-empty>
- <field-to-request field- name="parameters.paymentMethodId" request-name="paymentMethodId"/>
-        </if-compare>
+        </if-compare>
+ <field-to-request field- name="parameters.billToContactMechId" request- name="billToContactMechId"/>
+    </simple-method>

-        <!--============== Set Payment Method ================-->
+ <simple-method method-name="createUpdateCreditCard" short- description="create and update credit card"> + <call-map-processor xml-resource="org/ofbiz/accounting/ payment/PaymentMapProcs.xml" + processor-name="createCreditCard" in-map- name="parameters" out-map-name="creditCardContext"/>
+        <check-errors/>
+ <set field="creditCardContext.partyId" from- field="partyId"/> + <set field="creditCardContext.contactMechId" from- field="parameters.billToContactMechId"/>
+        <if-empty field="parameters.paymentMethodId">
+            <!-- call create Credit Card -->
+ <call-service service-name="createCreditCard" in-map- name="creditCardContext"> + <result-to-field result-name="paymentMethodId" field-name="parameters.paymentMethodId"/>
+            </call-service>
+        <else>
+            <!-- call update Credit Card -->
+ <entity-and entity-name="PaymentMethod" list- name="paymentMethodList" filter-by-date="true">
+                <field-map field-name="partyId" env-name="partyId"/>
+                   <order-by field-name="-fromDate"/>
+               </entity-and>
+ <first-from-list list-name="paymentMethodList" entry-name="paymentMethod"/> + <set field="creditCardContext.paymentMethodId" from- field="paymentMethod.paymentMethodId"/> + <call-service service-name="updateCreditCard" in-map- name="creditCardContext"> + <result-to-field result-name="paymentMethodId" field-name="parameters.paymentMethodId"/>
+            </call-service>
+        </else>
+        </if-empty>
<set field="paymentMethodId" from- field="parameters.paymentMethodId"/> - <set field="cardSecurityCode" from- field="parameters.cardSecurityCode"/> - <field-to-session field-name="userLogin" session- name="userLogin"/>
-        <call-bsh>
-            <![CDATA[
-                import org.ofbiz.order.shoppingcart.ShoppingCart;
- checkOutHelper = new org.ofbiz.order.shoppingcart.CheckOutHelper(dispatcher, delegator, shoppingCart); - callResult = checkOutHelper.finalizeOrderEntryPayment(paymentMethodId, null, false, false); - ShoppingCart.CartPaymentInfo cpi = shoppingCart.getPaymentInfo(paymentMethodId, null, null, null, true);
-                cpi.securityCode = cardSecurityCode;
-            ]]>
-        </call-bsh>
+ <field-to-request field-name="parameters.paymentMethodId" request-name="paymentMethodId"/>
   </simple-method>

</simple-methods>

Added: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/ actions/customer/EditBillingAddress.groovy
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/actions/customer/EditBillingAddress.groovy?rev=681750&view=auto
= = = = = = = = = ===================================================================== --- ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/ actions/customer/EditBillingAddress.groovy (added) +++ ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/ actions/customer/EditBillingAddress.groovy Fri Aug 1 10:04:44 2008
@@ -0,0 +1,60 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.ofbiz.entity.util.EntityUtil;
+import org.ofbiz.party.contact.ContactHelper;
+import org.ofbiz.entity.condition.EntityCondition;
+
+if (userLogin) {
+    party = userLogin.getRelatedOne("Party");
+ contactMech = EntityUtil.getFirst(ContactHelper.getContactMech(party, "BILLING_LOCATION", "POSTAL_ADDRESS", false));
+    if (contactMech) {
+        postalAddress = contactMech.getRelatedOne("PostalAddress");
+ parameters.billToContactMechId = postalAddress.contactMechId;
+        parameters.billToAddress1 = postalAddress.address1;
+        parameters.billToAddress2 = postalAddress.address2;
+        parameters.billToCity = postalAddress.city;
+        parameters.billToPostalCode = postalAddress.postalCode;
+ parameters.billToStateProvinceGeoId = postalAddress.stateProvinceGeoId;
+        parameters.billToCountryGeoId = postalAddress.countryGeoId;
+ billToStateProvinceGeo = delegator.findByPrimaryKey("Geo", [geoId : postalAddress.stateProvinceGeoId]);
+        if (billToStateProvinceGeo) {
+ parameters.billToStateProvinceGeo = billToStateProvinceGeo.geoName;
+        }
+ billToCountryProvinceGeo = delegator.findByPrimaryKey("Geo", [geoId : postalAddress.countryGeoId]);
+        if (billToCountryProvinceGeo) {
+ parameters.billToCountryProvinceGeo = billToCountryProvinceGeo.geoName;
+        }
+    }
+
+    creditCards = [];
+ paymentMethod = EntityUtil .getFirst (EntityUtil.filterByDate(delegator.findList("PaymentMethod", EntityCondition.makeCondition([partyId : party.partyId]), null, ["fromDate"], null, null)));
+    if (paymentMethod) {
+        creditCard = paymentMethod.getRelatedOne("CreditCard");
+        if (creditCard) {
+            parameters.paymentMethodTypeId = "CREDIT_CARD";
+            parameters.cardNumber = creditCard.cardNumber;
+            parameters.paymentMethodId = creditCard.paymentMethodId;
+            parameters.firstNameOnCard = creditCard.firstNameOnCard;
+            parameters.lastNameOnCard = creditCard.lastNameOnCard;
+ parameters.expMonth = (creditCard.expireDate).substring(0, 2); + parameters.expYear = (creditCard.expireDate).substring(3);
+       }
+    }
+}
\ No newline at end of file

Propchange: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB- INF/actions/customer/EditBillingAddress.groovy
------------------------------------------------------------------------------
  svn:eol-style = native

Propchange: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB- INF/actions/customer/EditBillingAddress.groovy
------------------------------------------------------------------------------
  svn:keywords = "Date Rev Author URL Id"

Propchange: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB- INF/actions/customer/EditBillingAddress.groovy
------------------------------------------------------------------------------
  svn:mime-type = text/plain

Added: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/ actions/customer/EditEmailAndTelecomNumber.groovy
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/actions/customer/EditEmailAndTelecomNumber.groovy?rev=681750&view=auto
= = = = = = = = = ===================================================================== --- ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/ actions/customer/EditEmailAndTelecomNumber.groovy (added) +++ ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/ actions/customer/EditEmailAndTelecomNumber.groovy Fri Aug 1 10:04:44 2008
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.ofbiz.entity.util.EntityUtil;
+import org.ofbiz.party.contact.ContactHelper;
+
+if (userLogin) {
+    party = userLogin.getRelatedOne("Party");
+
+ contactMech = EntityUtil.getFirst(ContactHelper.getContactMech(party, "PRIMARY_EMAIL", "EMAIL_ADDRESS", false));
+    if (contactMech) {
+        parameters.emailContactMechId = contactMech.contactMechId;
+        parameters.emailAddress = contactMech.infoString;
+    }
+
+ contactMech = EntityUtil.getFirst(ContactHelper.getContactMech(party, "PRIMARY_PHONE", "TELECOM_NUMBER", false));
+       if (contactMech) {
+ partyContactMech = EntityUtil.getFirst(delegator.findByAnd("PartyContactMech", [partyId : party.partyId, contactMechId : contactMech.contactMechId]));
+           if (partyContactMech) {
+ telecomNumber = partyContactMech.getRelatedOne("TelecomNumber"); + parameters.phoneContactMechId = telecomNumber.contactMechId;
+               parameters.countryCode = telecomNumber.countryCode;
+               parameters.areaCode = telecomNumber.areaCode;
+ parameters.contactNumber = telecomNumber.contactNumber;
+               parameters.extension = partyContactMech.extension;
+           }
+       }
+}
\ No newline at end of file

Propchange: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB- INF/actions/customer/EditEmailAndTelecomNumber.groovy
------------------------------------------------------------------------------
  svn:eol-style = native

Propchange: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB- INF/actions/customer/EditEmailAndTelecomNumber.groovy
------------------------------------------------------------------------------
  svn:keywords = "Date Rev Author URL Id"

Propchange: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB- INF/actions/customer/EditEmailAndTelecomNumber.groovy
------------------------------------------------------------------------------
  svn:mime-type = text/plain

Added: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/ actions/customer/EditShippingAddress.groovy
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/actions/customer/EditShippingAddress.groovy?rev=681750&view=auto
= = = = = = = = = ===================================================================== --- ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/ actions/customer/EditShippingAddress.groovy (added) +++ ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/ actions/customer/EditShippingAddress.groovy Fri Aug 1 10:04:44 2008
@@ -0,0 +1,48 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.ofbiz.entity.util.EntityUtil;
+import org.ofbiz.party.contact.ContactHelper;
+
+if (userLogin) {
+    party = userLogin.getRelatedOne("Party");
+ contactMech = EntityUtil.getFirst(ContactHelper.getContactMech(party, "SHIPPING_LOCATION", "POSTAL_ADDRESS", false));
+    if (contactMech) {
+        postalAddress = contactMech.getRelatedOne("PostalAddress");
+ parameters.shipToContactMechId = postalAddress.contactMechId;
+
+        parameters.shipToAddress1 = postalAddress.address1;
+        parameters.shipToAddress2 = postalAddress.address2;
+        parameters.shipToCity = postalAddress.city;
+        parameters.shipToPostalCode = postalAddress.postalCode;
+ parameters.shipToStateProvinceGeoId = postalAddress.stateProvinceGeoId;
+        parameters.shipToCountryGeoId = postalAddress.countryGeoId;
+ shipToStateProvinceGeo = delegator.findByPrimaryKey("Geo", [geoId : postalAddress.stateProvinceGeoId]);
+        if (shipToStateProvinceGeo) {
+ parameters.shipToStateProvinceGeo = shipToStateProvinceGeo.geoName;
+        }
+ shipToCountryProvinceGeo = delegator.findByPrimaryKey("Geo", [geoId : postalAddress.countryGeoId]);
+        if (shipToCountryProvinceGeo) {
+ parameters.shipToCountryProvinceGeo = shipToCountryProvinceGeo.geoName;
+        }
+ person = delegator.findByPrimaryKey("Person", [partyId : partyId]);
+        parameters.firstName = person.firstName;
+        parameters.lastName = person.lastName;
+    }
+}
\ No newline at end of file

Propchange: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB- INF/actions/customer/EditShippingAddress.groovy
------------------------------------------------------------------------------
  svn:eol-style = native

Propchange: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB- INF/actions/customer/EditShippingAddress.groovy
------------------------------------------------------------------------------
  svn:keywords = "Date Rev Author URL Id"

Propchange: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB- INF/actions/customer/EditShippingAddress.groovy
------------------------------------------------------------------------------
  svn:mime-type = text/plain

Modified: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB- INF/controller.xml
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/controller.xml?rev=681750&r1=681749&r2=681750&view=diff
= = = = = = = = = ===================================================================== --- ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/ controller.xml (original) +++ ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/ controller.xml Fri Aug 1 10:04:44 2008
@@ -1580,12 +1580,19 @@

   <!-- ============== One Page Checkout Requests ============== -->
   <request-map uri="onePageCheckout">
-        <security https="true" auth="false"/>
+        <security https="true" auth="true"/>
<event type="java" path="org.ofbiz.order.shoppingcart.CheckOutEvents" invoke="cartNotEmpty"/>
       <response name="success" type="view" value="OnePageCheckout"/>
       <response name="error" type="view" value="main"/>
   </request-map>

+    <request-map uri="anonOnePageCheckout">
+        <security https="true" auth="false"/>
+ <event type="java" path="org.ofbiz.order.shoppingcart.CheckOutEvents" invoke="cartNotEmpty"/> + <response name="success" type="view" value="OnePageCheckout"/>
+        <response name="error" type="view" value="main"/>
+    </request-map>
+
   <request-map uri="getCountryList">
       <event type="jsonservice" invoke="getCountryList"/>
       <response name="success" type="none"/>

Modified: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/ login.ftl
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/ecommerce/webapp/ecommerce/login.ftl?rev=681750&r1=681749&r2=681750&view=diff
= = = = = = = = = ===================================================================== --- ofbiz/trunk/applications/ecommerce/webapp/ecommerce/login.ftl (original) +++ ofbiz/trunk/applications/ecommerce/webapp/ecommerce/login.ftl Fri Aug 1 10:04:44 2008
@@ -94,7 +94,7 @@
<form method="post" action="<@ofbizUrl>quickAnonCheckout</ @ofbizUrl>" style="margin: 0;"> <div align="center"><input type="submit" class="smallSubmit" value="${uiLabelMap.OrderCheckoutQuick}"/></div>
         </form>
- <form method="post" action="<@ofbizUrl>onePageCheckout</ @ofbizUrl>" style="margin: 0;"> + <form method="post" action="<@ofbizUrl>anonOnePageCheckout</@ofbizUrl>" style="margin: 0;"> <div align="center"><input type="submit" class="smallSubmit" value="${uiLabelMap.EcommerceOnePageCheckout}"/ ></div>
         </form>
       </div>

Modified: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/order/ OnePageCheckoutProcess.ftl
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/ecommerce/webapp/ecommerce/order/OnePageCheckoutProcess.ftl?rev=681750&r1=681749&r2=681750&view=diff
= = = = = = = = = ===================================================================== --- ofbiz/trunk/applications/ecommerce/webapp/ecommerce/order/ OnePageCheckoutProcess.ftl (original) +++ ofbiz/trunk/applications/ecommerce/webapp/ecommerce/order/ OnePageCheckoutProcess.ftl Fri Aug 1 10:04:44 2008
@@ -282,11 +282,11 @@
<div id="editShippingPanel" class="screenlet-body" style="display: none;"> <form name="shippingForm" id="shippingForm" action="<@ofbizUrl>createUpdateShippingAddress</@ofbizUrl>" method="post"> <input type="hidden" id="shipToContactMechId" name="shipToContactMechId" value="${parameters.shipToContactMechId? if_exists}"/> - <input type="hidden" name="contactMechPurposeTypeId" value="SHIPPING_LOCATION"/> <input type="hidden" id="shippingPartyId" name="partyId" value="${parameters.partyId?if_exists}"/> <input type="hidden" name="userLogin" value="$ {parameters.userLogin?if_exists}"/> <input type="hidden" id="phoneContactMechId" name="phoneContactMechId" value="${parameters.phoneContactMechId? if_exists}"/> <input type="hidden" id="emailContactMechId" name="emailContactMechId" value="${parameters.emailContactMechId? if_exists}"/> + <input type="hidden" name="roleTypeId" value="CUSTOMER"/> <div id="shippingFormServerError" class="errorMessage"></div>
                         <table>
                           <tr><td width="40%" valign="top">
@@ -297,7 +297,7 @@
                                    </label>
                                 </div>
                                 <div class="field-widget">
- <input id="firstName" name="firstName" class="inputBox required" type="text" value="$ {parameters.firstName?if_exists}"/> + <input id="firstName" name="firstName" class="inputBox required" type="text" value="$ {(parameters.firstName)?if_exists}"/>
                                 </div>
                               </div>
                               <div class="form-row">
@@ -307,7 +307,7 @@
                                   </label>
                                 </div>
                                 <div class="field-widget">
- <input id="lastName" name="lastName" class="inputBox required" type="text" value="$ {parameters.lastName?if_exists}"/> + <input id="lastName" name="lastName" class="inputBox required" type="text" value="$ {(parameters.lastName)?if_exists}"/>
                                 </div>
                               </div>
                               <div class="form-row">
@@ -373,8 +373,8 @@
                             </div>
                             <div class="field-widget">
                               <div>
- <input name="shipToCountryGeo" id="shipToCountryGeo" size="30" class="inputBox required" type="text" value="${parameters.shipToCountryGeo?if_exists}"/> - <input name="countryGeoId" id="shipToCountryGeoId" type="hidden" value="$ {parameters.countryGeoId?if_exists}"/> + <input name="shipToCountryGeo" id="shipToCountryGeo" size="30" class="inputBox required" type="text" value="${parameters.shipToCountryProvinceGeo? if_exists}"/> + <input name="countryGeoId" id="shipToCountryGeoId" type="hidden" value="$ {parameters.shipToCountryGeoId?if_exists}"/> <div id="shipToCountries" class="autocomplete" style="display:none"></div>
                               </div>
                             </div>
@@ -482,10 +482,11 @@
<input type="hidden" id ="billToContactMechId" name="billToContactMechId" value="${parameters.billToContactMechId? if_exists}"/> <input type="hidden" id="shipToContactMechIdInBillingForm" name="shipToContactMechId" value="${parameters.shipToContactMechId?if_exists}"/> <input type="hidden" id="paymentMethodId" name="paymentMethodId" value="${parameters.paymentMethodId? if_exists}"/> - <input type="hidden" id="paymentMethodTypeId" name="paymentMethodTypeId" value="CREDIT_CARD"/> + <input type="hidden" id="paymentMethodTypeId" name="paymentMethodTypeId" value="${parameters.paymentMethodTypeId? if_exists}"/> <input type="hidden" id="billingPartyId" name="partyId" value="${parameters.partyId?if_exists}"/> <input type="hidden" name="userLogin" value="$ {parameters.userLogin?if_exists}"/> <input type="hidden" name="expireDate" value="$ {parameters.expireDate?if_exists}"/> + <input type="hidden" name="roleTypeId" value="CUSTOMER"/> <div id="billingFormServerError" class="errorMessage"></div>
                 <table>
                   <tr><td valign="top">
@@ -528,10 +529,10 @@
                       </div>
                       <div class="form-row">
                         <div class="field-label">
- <label for="CVV2">CVV2<span>*</ span><span id="advice-required-CVV2" style="display:none" class="errorMessage"> (required)</span></label>
+                            <label for="CVV2">CVV2</label>
                         </div>
                         <div class="field-widget">
- <input id="CVV2" autocomplete="off" name="cardSecurityCode" class="inputBox required" size="4" type="text" maxlength="4" value=""/> + <input id="CVV2" autocomplete="off" name="cardSecurityCode" class="inputBox" size="4" type="text" maxlength="4" value=""/>
                         </div>
                       </div>
                       <div class="form-row">
@@ -610,8 +611,8 @@
                           <div class="field-widget">
<select name="countryGeoId" id="billToCountryGeoId" class="required selectBox">
                               <#if (parameters.countryGeoId)?exists>
- <option>$ {parameters.countryGeoId}</option> - <option value="$ {parameters.countryGeoId}">---</option> + <option>$ {parameters.billToCountryProvinceGeo}</option> + <option value="$ {parameters.billToCountryGeoId}">---</option>
                               </#if>
${screens.render("component://common/ widget/CommonScreens.xml#countries")}
                             </select>
@@ -624,7 +625,7 @@
                           <div class="field-widget">
<select id="billToStateProvinceGeoId" name="billToStateProvinceGeoId" class="required selectBox"> <#if parameters.billToStateProvinceGeoId?has_content> - <option>$ {parameters.billToStateProvinceGeoId}</option> + <option>$ {parameters.billToStateProvinceGeo}</option> <option value="$ {parameters.billToStateProvinceGeoId}">---</option>
                               <#else>
<option value="">$ {uiLabelMap.PartyNoState}</option>

Modified: ofbiz/trunk/applications/ecommerce/widget/OrderScreens.xml
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/ecommerce/widget/OrderScreens.xml?rev=681750&r1=681749&r2=681750&view=diff
= = = = = = = = = ===================================================================== --- ofbiz/trunk/applications/ecommerce/widget/OrderScreens.xml (original) +++ ofbiz/trunk/applications/ecommerce/widget/OrderScreens.xml Fri Aug 1 10:04:44 2008
@@ -618,6 +618,10 @@
<set field="layoutSettings.javaScripts[]" value="/ images/prototypejs/controls.js" global="true"/> <set field="layoutSettings.javaScripts[]" value="/ ecommerce/images/checkoutProcess.js" global="true"/> <script location="component://ecommerce/webapp/ ecommerce/WEB-INF/actions/cart/ShowCart.groovy"/> + <script location="component://ecommerce/webapp/ ecommerce/WEB-INF/actions/customer/EditShippingAddress.groovy"/> + <script location="component://ecommerce/webapp/ ecommerce/WEB-INF/actions/customer/EditBillingAddress.groovy"/> + <script location="component://ecommerce/webapp/ ecommerce/WEB-INF/actions/customer/ EditEmailAndTelecomNumber.groovy"/>
+
           </actions>
           <widgets>
<decorator-screen name="main-decorator" location="$ {parameters.mainDecoratorLocation}">

Modified: ofbiz/trunk/applications/order/webapp/ordermgr/entry/cart/ minicart.ftl
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/webapp/ordermgr/entry/cart/minicart.ftl?rev=681750&r1=681749&r2=681750&view=diff
= = = = = = = = = ===================================================================== --- ofbiz/trunk/applications/order/webapp/ordermgr/entry/cart/ minicart.ftl (original) +++ ofbiz/trunk/applications/order/webapp/ordermgr/entry/cart/ minicart.ftl Fri Aug 1 10:04:44 2008
@@ -68,7 +68,7 @@
         <#if hidebottomlinks?default("N") != "Y">
<div><a href="<@ofbizUrl>view/showcart</@ofbizUrl>" class="buttontext">${uiLabelMap.OrderViewCart}</a>&nbsp;<a href="<@ofbizUrl>checkoutoptions</@ofbizUrl>" class="buttontext">$ {uiLabelMap.OrderCheckout}</a></div> <div style="margin-top: 4px;"><a href="<@ofbizUrl>quickcheckout</@ofbizUrl>" class="buttontext">$ {uiLabelMap.OrderCheckoutQuick}</a></div> - <div style="margin-top: 4px;"><a href="<@ofbizUrl>checkoutoptions</@ofbizUrl>" class="buttontext">$ {uiLabelMap.EcommerceOnePageCheckout}</a></div> + <div style="margin-top: 4px;"><a href="<@ofbizUrl>onePageCheckout</@ofbizUrl>" class="buttontext">$ {uiLabelMap.EcommerceOnePageCheckout}</a></div>
         </#if>
       <#else>
         <div>${uiLabelMap.OrderShoppingCartEmpty}</div>




Reply via email to