svn commit: r672477 - in /ofbiz/trunk/applications: ecommerce/config/ ecommerce/webapp/ecommerce/ ecommerce/webapp/ecommerce/WEB-INF/ ecommerce/webapp/ecommerce/images/ ecommerce/webapp/ecommerce/order/ ecommerce/widget/ order/webapp/ordermgr/entry/cart/

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

svn commit: r672477 - in /ofbiz/trunk/applications: ecommerce/config/ ecommerce/webapp/ecommerce/ ecommerce/webapp/ecommerce/WEB-INF/ ecommerce/webapp/ecommerce/images/ ecommerce/webapp/ecommerce/order/ ecommerce/widget/ order/webapp/ordermgr/entry/cart/

mor-2
Author: mor
Date: Sat Jun 28 01:39:55 2008
New Revision: 672477

URL: http://svn.apache.org/viewvc?rev=672477&view=rev
Log:
First draft for (Initial skeleton this time) one page checkout process feature in ecommerce app. Many more to come ahead .....
Refer to Jira issue OFBIZ-1462 (https://issues.apache.org/jira/browse/OFBIZ-1462) for more information. Many thanks to every one who has contributed on this Jira issue.

This and coming work is based on this issue but it's a totally fresh work contributed from
Sumit Pandit, Brajesh Patel, Rishi Solanki and Santosh Malviya. Many thanks to all of them.

This one page checkout process will have all the information on a single page with 5 collapsible panels namely
Step 1: Shopping Cart
Step 2 : Shipping and Personal Information
Step 3: Shipping Options
Step 4: Billing and Payment Information
Step 5: Submit Order

Added:
    ofbiz/trunk/applications/ecommerce/webapp/ecommerce/images/checkoutProcess.js   (with props)
    ofbiz/trunk/applications/ecommerce/webapp/ecommerce/order/OnePageCheckoutProcess.ftl   (with props)
Modified:
    ofbiz/trunk/applications/ecommerce/config/EcommerceUiLabels.xml
    ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/controller.xml
    ofbiz/trunk/applications/ecommerce/webapp/ecommerce/login.ftl
    ofbiz/trunk/applications/ecommerce/widget/OrderScreens.xml
    ofbiz/trunk/applications/order/webapp/ordermgr/entry/cart/minicart.ftl

Modified: ofbiz/trunk/applications/ecommerce/config/EcommerceUiLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/ecommerce/config/EcommerceUiLabels.xml?rev=672477&r1=672476&r2=672477&view=diff
==============================================================================
--- ofbiz/trunk/applications/ecommerce/config/EcommerceUiLabels.xml (original)
+++ ofbiz/trunk/applications/ecommerce/config/EcommerceUiLabels.xml Sat Jun 28 01:39:55 2008
@@ -2402,6 +2402,9 @@
         <value xml:lang="th">ยังไม่ทราบ</value>
         <value xml:lang="zh">未知</value>
     </property>
+    <property key="EcommerceOnePageCheckout">
+        <value xml:lang="en">One Page Checkout</value>
+    </property>    
     <property key="EcommerceOrderInLast">
         <value xml:lang="en">order(s) in the last</value>
         <value xml:lang="es">orden(s) en los últimos</value>

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=672477&r1=672476&r2=672477&view=diff
==============================================================================
--- ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/controller.xml (original)
+++ ofbiz/trunk/applications/ecommerce/webapp/ecommerce/WEB-INF/controller.xml Sat Jun 28 01:39:55 2008
@@ -1574,6 +1574,14 @@
         <security auth="false" https="false"/>
         <response name="success" type="view" value="ViewSimpleContent"/>
     </request-map>
+
+    <!-- ============== One Page Checkout Requests ============== -->
+    <request-map uri="onePageCheckout">
+        <security auth="false" https="true"/>
+        <response name="success" type="view" value="OnePageCheckout"/>
+        <response name="error" type="view" value="main"/>        
+    </request-map>
+    
     <!-- End of Request Mappings -->
 
     <!-- View Mappings -->
@@ -1701,5 +1709,8 @@
     <!-- PDFs  -->
     <view-map name="OrderPDF" type="screenfop" page="component://order/widget/ordermgr/OrderPrintScreens.xml#OrderPDF" content-type="application/pdf" encoding="none"/>
     <view-map name="InvoicePDF" type="screenfop" page="component://accounting/widget/AccountingPrintScreens.xml#InvoicePDF" content-type="application/pdf" encoding="none"/>
+
+    <!-- One Page Checkout -->
+    <view-map name="OnePageCheckout" type="screen" page="component://ecommerce/widget/OrderScreens.xml#OnePageCheckout"/>
     <!-- End of View Mappings -->
 </site-conf>

Added: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/images/checkoutProcess.js
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/ecommerce/webapp/ecommerce/images/checkoutProcess.js?rev=672477&view=auto
==============================================================================
--- ofbiz/trunk/applications/ecommerce/webapp/ecommerce/images/checkoutProcess.js (added)
+++ ofbiz/trunk/applications/ecommerce/webapp/ecommerce/images/checkoutProcess.js Sat Jun 28 01:39:55 2008
@@ -0,0 +1,18 @@
+/*
+ * 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.
+ */

Propchange: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/images/checkoutProcess.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/images/checkoutProcess.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/images/checkoutProcess.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/login.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/ecommerce/webapp/ecommerce/login.ftl?rev=672477&r1=672476&r2=672477&view=diff
==============================================================================
--- ofbiz/trunk/applications/ecommerce/webapp/ecommerce/login.ftl (original)
+++ ofbiz/trunk/applications/ecommerce/webapp/ecommerce/login.ftl Sat Jun 28 01:39:55 2008
@@ -94,6 +94,9 @@
           <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;">
+            <div align="center"><input type="submit" class="smallSubmit" value="${uiLabelMap.EcommerceOnePageCheckout}"/></div>
+          </form>          
         </div>
     </div>
     </#if>

Added: 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=672477&view=auto
==============================================================================
--- ofbiz/trunk/applications/ecommerce/webapp/ecommerce/order/OnePageCheckoutProcess.ftl (added)
+++ ofbiz/trunk/applications/ecommerce/webapp/ecommerce/order/OnePageCheckoutProcess.ftl Sat Jun 28 01:39:55 2008
@@ -0,0 +1,119 @@
+<#--
+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.
+-->
+
+  <div class="screenlet">
+    <div class="screenlet-header">
+      <div class="boxhead">${uiLabelMap.OrderCheckout}</div>
+    </div>
+    <div class="screenlet-body" style="text-align: center;">
+      <#if shoppingCart?has_content && shoppingCart.size() gt 0>
+        <div id="checkoutPanel" class="form-container" align="center" style="border: 1px solid #333333; height: auto;">
+          <div id="cartPanel" class="screenlet">
+            <div class="screenlet-header"><div class="boxhead" align="left">Step 1: ${uiLabelMap.PageTitleShoppingCart}</div></div>
+            <div id="cartSummaryPanel" style="display: none;">
+              <div align="left" style="width: auto; padding: 10px 40px 30px 40px;"><a href="javascript:void(0);" id="openCartPanel"><h3>Click here to edit</h3></a></div>
+              <div id="cartSummary" style="display: none;">
+                Shopping cart summary.
+              </div>
+            </div>
+            <div id="editCartPanel">
+              <form name="cartForm" id="cartForm" method="post" action="<@ofbizUrl></@ofbizUrl>">
+                Shopping cart information.
+              </form>
+              <div><h3><span class="editStep"><a href="javascript:void(0);" id="editShippingAndPersonalDetail"><h3>Continue for step 2</h3></a></span></h3></div>              
+            </div>
+          </div>
+
+          <div id="shippingPanel" class="screenlet">
+            <div class="screenlet-header"><div class="boxhead" align="left">Step 2: Shipping</div></div>
+            <div id="shippingSummaryPanel">
+              <div align="left" style="width: auto; padding: 10px 40px 30px 40px;"><a href="javascript:void(0);" id="openShippingPanel"><h3>Click here to edit</h3></a></div>
+              <div id="shippingSummary" style="display: none;">
+                Shipping Summary.
+              </div>
+            </div>
+            <div id="editShippingPanel" style="display: none;">
+             <form name="shippingForm" id="shippingForm" action="<@ofbizUrl></@ofbizUrl>" method="post">
+               Shipping Detail.
+             </form>
+              <div><h3><span class="editStep"><a href="javascript:void(0);" id="editShipmentOptions"><h3>Continue for step 3</h3></a></span></h3></div>              
+            </div>
+          </div>
+
+          <div id="shipmentOptionPanel" class="screenlet">
+            <div class="screenlet-header"><div class="boxhead" align="left">Step 3: Shipment Options</div></div>
+            <div id="shipmentOptionSummaryPanel">
+              <div align="left" style="width: auto; padding: 10px 40px 30px 40px;"><a href="javascript:void(0);" id="openShipmentOptionPanel"><h3>Click here to edit</h3></a></div>
+              <div id="shipmentOptionSummary" style="display: none;">
+               Shipping Methods summary.
+              </div>
+            </div>
+            <div id="editShipmentOptionPanel" style="display: none;">
+              <form name="shipmentOptionForm" id="shipmentOptionForm" action="<@ofbizUrl></@ofbizUrl>" method="post">
+                Shipping Methods.
+              </form>
+              <div><h3><span class="editStep"><a href="javascript:void(0);" id="editBillingAndPayment"><h3>Continue for step 4</h3></a></span></h3></div>
+            </div>
+          </div>
+
+          <div id="billingPanel" class="screenlet">
+            <div class="screenlet-header"><div class="boxhead" align="left">Step 4: Billing</div></div>
+            <div id="billingSummaryPanel">
+              <div align="left" style="width: auto; padding: 10px 40px 30px 40px;"><a href="javascript:void(0);" id="openBillingPanel"><h3>Click here to edit</h3></a></div>
+              <div id="billingSummary" style="display: none;">
+                Billing and Payment summary.
+              </div>
+            </div>
+            <div id="editBillingPanel" style="display: none;">
+              <form name="billingForm" id="billingForm" class="theform" action="<@ofbizUrl></@ofbizUrl>" method="post">
+                Billing and Payment Detail.
+              </form>
+              <div><h3><span class="editStep"><a href="javascript:void(0);" id=""><h3>Continue for step 5</h3></a></span></h3></div>
+            </div>
+          </div>
+
+          <div id="" class="screenlet">
+            <div class="screenlet-header"><div class="boxhead" align="left">Step 5: Submit Order</div></div>
+            <div id="orderSubmitPanel" style="display: none;">
+              <form name="orderSubmitForm" id="orderSubmitForm" action="<@ofbizUrl></@ofbizUrl>" method="post">
+              </form>
+              <div><h3><span class="editStep"><a href="javascript:void(0);" id=""><h3>Submit Order.</h3></a></span></h3></div>  
+            </div>
+          </div>
+        </div>
+      </#if>
+
+      <div id="emptyCartCheckoutPanel" align="center" <#if shoppingCart?has_content && shoppingCart.size() gt 0> style="display: none; border: 1px solid #333333; height: auto;"</#if>>
+        <div>${uiLabelMap.OrderCheckout}</div>
+        <div>
+          <div><span style="display: none"><a href="javascript:void(0);"><img src="<@ofbizContentUrl></@ofbizContentUrl>"></a></span></div>
+          <div>STEP 1: Confirm Totals</div><br>
+          <div>You currently have no items in your cart. Click <a href="<@ofbizUrl>main</@ofbizUrl>">here</a> to view our products.</div>
+        </div>
+        <div>
+          <div><span style="display: none"><a href="javascript:void(0);"><img src="<@ofbizContentUrl></@ofbizContentUrl>"></a></span></div>
+          <div>STEP 2: Shipping</div>
+        </div>
+        <div>
+          <div><span style="display: none"><a href="javascript:void(0);"><img src="<@ofbizContentUrl></@ofbizContentUrl>"></a></span></div>
+          <div>STEP 3: Billing</div>          
+        </div>
+      </div>
+    </div>
+  </div>
\ No newline at end of file

Propchange: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/order/OnePageCheckoutProcess.ftl
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/order/OnePageCheckoutProcess.ftl
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/applications/ecommerce/webapp/ecommerce/order/OnePageCheckoutProcess.ftl
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: ofbiz/trunk/applications/ecommerce/widget/OrderScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/ecommerce/widget/OrderScreens.xml?rev=672477&r1=672476&r2=672477&view=diff
==============================================================================
--- ofbiz/trunk/applications/ecommerce/widget/OrderScreens.xml (original)
+++ ofbiz/trunk/applications/ecommerce/widget/OrderScreens.xml Sat Jun 28 01:39:55 2008
@@ -607,5 +607,19 @@
             </widgets>
         </section>
     </screen>
-    
+
+    <screen name="OnePageCheckout">
+        <section>
+            <actions>
+                <script location="component://ecommerce/webapp/ecommerce/WEB-INF/actions/cart/showcart.bsh"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="quickAnonCheckoutDecorator">
+                    <decorator-section name="body">
+                        <platform-specific><html><html-template location="component://ecommerce/webapp/ecommerce/order/OnePageCheckoutProcess.ftl"/></html></platform-specific>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
 </screens>

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=672477&r1=672476&r2=672477&view=diff
==============================================================================
--- ofbiz/trunk/applications/order/webapp/ordermgr/entry/cart/minicart.ftl (original)
+++ ofbiz/trunk/applications/order/webapp/ordermgr/entry/cart/minicart.ftl Sat Jun 28 01:39:55 2008
@@ -68,6 +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>
           </#if>
         <#else>
           <div class="tabletext">${uiLabelMap.OrderShoppingCartEmpty}</div>