Author: jleroux
Date: Sat Oct 13 12:00:03 2007 New Revision: 584440 URL: http://svn.apache.org/viewvc?rev=584440&view=rev Log: A patch from Chris Howe "Ofbiz with Google checkout." (https://issues.apache.org/jira/browse/OFBIZ-71) - OFBIZ-71 All is explained in http://docs.ofbiz.org/display/OFBIZ/Google+Checkout+Integration and in the Readme I added Added: ofbiz/trunk/specialpurpose/googleCheckout/ ofbiz/trunk/specialpurpose/googleCheckout/README (with props) ofbiz/trunk/specialpurpose/googleCheckout/config/ ofbiz/trunk/specialpurpose/googleCheckout/config/googleCheckout.properties (with props) ofbiz/trunk/specialpurpose/googleCheckout/ofbiz-component.xml (with props) ofbiz/trunk/specialpurpose/googleCheckout/script/ ofbiz/trunk/specialpurpose/googleCheckout/script/org/ ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/ ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/ ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/PrepareXMLTemplate.xml (with props) ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/ShoppingCartServices.xml (with props) ofbiz/trunk/specialpurpose/googleCheckout/servicedef/ ofbiz/trunk/specialpurpose/googleCheckout/servicedef/services.xml (with props) ofbiz/trunk/specialpurpose/googleCheckout/webapp/ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/redirect/ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/redirect/redirectHeader.ftl (with props) ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/CheckoutShoppingCart.ftl (with props) ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport.ftl (with props) ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/merchantCalculations.ftl (with props) ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/requestPhone.ftl (with props) ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/shippingMethods.ftl (with props) ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/simpleFlow.ftl (with props) ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/taxTables.ftl (with props) ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/orderProcessingSupport.ftl (with props) ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart.ftl (with props) ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/expiration.ftl (with props) ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/items.ftl (with props) ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/privateData.ftl (with props) ofbiz/trunk/specialpurpose/googleCheckout/widget/ ofbiz/trunk/specialpurpose/googleCheckout/widget/GoogleCheckoutScreens.xml (with props) Added: ofbiz/trunk/specialpurpose/googleCheckout/README URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/README?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/README (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/README Sat Oct 13 12:00:03 2007 @@ -0,0 +1 @@ +To use Google checkout please check http://docs.ofbiz.org/display/OFBIZ/Google+Checkout+Integration. \ No newline at end of file Propchange: ofbiz/trunk/specialpurpose/googleCheckout/README ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/README ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/googleCheckout/config/googleCheckout.properties URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/config/googleCheckout.properties?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/config/googleCheckout.properties (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/config/googleCheckout.properties Sat Oct 13 12:00:03 2007 @@ -0,0 +1,47 @@ +##################################################################### +# 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. +##################################################################### + +####Required Parameters:#### +##your merchantId - sandbox will be different than live +merchantId = +#your merchantKey - sandbox will be different than live +merchantKey = +## URL to edit cart +editCartUrl = +## continue shopping url after payment +continueShoppingUrl = + +####Integration Parameters#### +##location of template +xmlTemplateUri = component://googlecheckout/widget/GoogleCheckoutScreens.xml#CheckoutShoppingCart +##Does customer need to enter a phone number in order to complete order? true/false +requestPhone = false + +####Google Specific Parameters#### +##Production URL +#basePostUrl = http://checkout.google.com/checkout/cws/v2/Merchant/ +##Sandbox URL +basePostUrl = https://sandbox.google.com/checkout/cws/v2/Merchant/ +checkout = /checkout +request = /request +diagnose = /diagnose + + + + Propchange: ofbiz/trunk/specialpurpose/googleCheckout/config/googleCheckout.properties ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/config/googleCheckout.properties ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/config/googleCheckout.properties ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/googleCheckout/ofbiz-component.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/ofbiz-component.xml?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/ofbiz-component.xml (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/ofbiz-component.xml Sat Oct 13 12:00:03 2007 @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + 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. +--> + +<ofbiz-component name="googlecheckout" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:noNamespaceSchemaLocation="http://www.ofbiz.org/dtds/ofbiz-component.xsd"> + <resource-loader name="main" type="component"/> + <classpath type="dir" location="script"/> + <classpath type="dir" location="config"/> + + <service-resource type="model" loader="main" location="servicedef/services.xml"/> + +</ofbiz-component> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/ofbiz-component.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/ofbiz-component.xml ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/ofbiz-component.xml ------------------------------------------------------------------------------ svn:mime-type = text/xml Added: ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/PrepareXMLTemplate.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/PrepareXMLTemplate.xml?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/PrepareXMLTemplate.xml (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/PrepareXMLTemplate.xml Sat Oct 13 12:00:03 2007 @@ -0,0 +1,266 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + 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. +--> + +<simple-methods xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:noNamespaceSchemaLocation="http://www.ofbiz.org/dtds/simple-methods.xsd"> + + + <simple-method method-name="transmitRequest" short-description=""> + <!-- Connect, there may be ofbiz HttpClient.java that may handle this well --> + <call-simple-method method-name="connectWithRedirectHack"/> + <log level="info" message="step 1 done"/> + <!-- Get the Content --> + <call-simple-method method-name="createXMLOutput"/> + <log level="info" message="step 2 done"/> + <!-- Setup the Content --> + <call-simple-method method-name="setupContent"/> + <log level="info" message="step 3 done ${content}"/> + <!-- Get Response --> + <call-simple-method method-name="getResponse"/> + <log level="info" message="step 4 done"/> + <!-- Get Redirect from xml document response --> + <log level="info" message="${response}"/> + <call-simple-method method-name="getReDirectFromXmlDoc"/> + <log level="info" message="step 5 done"/> + <field-to-result field-name="redirect"/> + </simple-method> +<!-- Step 1 --> + <simple-method method-name="connectWithRedirectHack" short-description=""> + <call-simple-method method-name="createRequestUrl"/> + <call-simple-method method-name="getHttpAuth"/> + <call-bsh><![CDATA[ + HttpURLConnection conn = (HttpURLConnection)url.openConnection(); + conn.setDoInput (true); + conn.setDoOutput (true); + conn.setUseCaches (false); + conn.setFollowRedirects(true); + conn.setInstanceFollowRedirects(false); + conn.setRequestMethod("POST"); + conn.setRequestProperty("Authorization", HttpAuth); + conn.setRequestProperty("Host", conn.getURL().getHost()); + conn.setRequestProperty("content-type", "application/xml"); + conn.setRequestProperty("accept", "application/xml"); + conn.connect(); + return org.ofbiz.base.util.UtilMisc.toMap("conn", conn); + ]]></call-bsh> + </simple-method> + <simple-method method-name="createRequestUrl" short-description=""> + <!-- Setup Url spec --> + <property-to-field resource="googleCheckout" property="basePostUrl" field-name="basePostUrl"/> + <property-to-field resource="googleCheckout" property="merchantId" field-name="merchantId"/> + <property-to-field resource="googleCheckout" property="request" field-name="request"/> + <set field="urlSpec" value="${basePostUrl}${merchantId}${request}"/> + <create-object class-name="java.net.URL" field-name="url"> + <field field-name="urlSpec"/> + </create-object> + </simple-method> + <simple-method method-name="getHttpAuth" short-description=""> + <property-to-field resource="googleCheckout" property="merchantId" field-name="merchantId"/> + <property-to-field resource="googleCheckout" property="merchantKey" field-name="merchantKey"/> + <set field="userNameAndPass" value="${merchantId}:${merchantKey}"/> + <call-class-method method-name="base64Encode" class-name="org.ofbiz.base.util.Base64" ret-field-name="encodedValue"> + <field field-name="userNameAndPass"/> + </call-class-method> + <set field="HttpAuth" value="Basic ${encodedValue}"/> + </simple-method> +<!-- Step 2 --> + <simple-method method-name="createXMLOutput" short-description=""> + <!-- create writer --> + <create-object class-name="java.io.StringWriter" field-name="XMLWriter"/> + <!-- create screen context --> + <call-class-method method-name="create" class-name="org.ofbiz.base.util.collections.MapStack" ret-field-name="xscreenContext"/> + <!-- Add the shoppingCart to the MapStack --> + <set field="inMap.shoppingCart" from-field="parameters.shoppingCart"/> + <set-service-fields map-name="inMap" service-name="ConvertOfbizCartToGoogle" to-map-name="serMap"/> + <call-service service-name="ConvertOfbizCartToGoogle" in-map-name="serMap"> + <result-to-field result-name="googleCart"/> + <result-to-field result-name="flowSupport"/> + <result-to-field result-name="sendInitialAuthDetails"/> + </call-service> + <set field="xscreenContext.googleCart" from-field="googleCart"/> + <set field="xscreenContext.flowSupport" from-field="flowSupport"/> + <set field="xscreenContext.sendInitialAuthDetails" from-field="sendInitialAuthDetails"/> + <set field="xscreenContext.shoppingCart" from-field="parameters.shoppingCart"/> + <!-- create string renderer --> + <create-object class-name="org.ofbiz.widget.html.HtmlScreenRenderer" field-name="xhtmlStringRenderer"></create-object> + <!-- create screen renderer --> + <create-object class-name="org.ofbiz.widget.screen.ScreenRenderer" field-name="screens"> + <field field-name="XMLWriter" type="java.io.Writer"/> + <field field-name="xscreenContext" type="org.ofbiz.base.util.collections.MapStack"/> + <field field-name="xhtmlStringRenderer" type="org.ofbiz.widget.screen.ScreenStringRenderer"/> + </create-object> + <set field="xscreenContext.screens" from-field="screens"/> + <create-object class-name="org.ofbiz.widget.screen.ScreenRenderer" field-name="xscreens"> + <field field-name="XMLWriter" type="java.io.Writer"/> + <field field-name="xscreenContext" type="org.ofbiz.base.util.collections.MapStack"/> + <field field-name="xhtmlStringRenderer" type="org.ofbiz.widget.screen.ScreenStringRenderer"/> + </create-object> + <!-- get uri --> + <property-to-field resource="googleCheckout" property="xmlTemplateUri" field-name="screenUri"/> + <call-object-method method-name="render" obj-field-name="xscreens"> + <field field-name="screenUri" type="String"/> + </call-object-method> + <set field="content" value="${bsh:XMLWriter.toString()}"/> + </simple-method> +<!-- Step 3 --> + <simple-method method-name="setupContent" short-description=""> + <call-bsh><![CDATA[ + sWriter = new OutputStreamWriter(conn.getOutputStream()); + return org.ofbiz.base.util.UtilMisc.toMap("sWriter", sWriter); + ]]></call-bsh> + <create-object class-name="java.io.BufferedWriter" field-name="writer"> + <field field-name="sWriter" type="java.io.Writer"/> + </create-object> + <call-object-method method-name="write" obj-field-name="writer"> + <field field-name="content" type="String"/> + </call-object-method> + <call-object-method method-name="close" obj-field-name="writer"/> + </simple-method> +<!-- Step 4 --> + <simple-method method-name="getResponse" short-description=""> + <clear-field field-name="sReader"/> + <call-bsh><![CDATA[ + try { + sReader = new InputStreamReader(conn.getInputStream()); + } catch (IOException ex) { + sReader = new InputStreamReader(conn.getErrorStream()); + } + return org.ofbiz.base.util.UtilMisc.toMap("sReader", sReader); + ]]></call-bsh> + + <create-object class-name="java.io.BufferedReader" field-name="reader"> + <field field-name="sReader" type="java.io.Reader"/> + </create-object> + <call-bsh><![CDATA[ + StringBuffer buffer = new StringBuffer(); + String line = null; + while (null != (line = reader.readLine())) { + buffer.append(line); + } + return org.ofbiz.base.util.UtilMisc.toMap("buffer", buffer); + ]]></call-bsh> + <set field="response" value="${bsh:buffer.toString()}"/> + </simple-method> +<!-- Step 5 --> + <simple-method method-name="getReDirectFromXmlDoc" short-description=""> + <call-bsh><![CDATA[ + document = org.ofbiz.base.util.UtilXml.readXmlDocument(response, false); + return org.ofbiz.base.util.UtilMisc.toMap("document", document); + ]]></call-bsh> + <call-object-method method-name="getDocumentElement" obj-field-name="document" ret-field-name="rootElement"/> + <!-- May want to get the serial number to store eventually; would be an attribute of this rootElement, + Skipping for now --> + <call-simple-method method-name="getRedirectFromRootElement"/> + </simple-method> + <simple-method method-name="getRedirectFromRootElement" short-description=""> + <call-class-method method-name="childElementList" class-name="org.ofbiz.base.util.UtilXml" ret-field-name="childList"> + <field field-name="rootElement" type="org.w3c.dom.Element"/> + </call-class-method> + <call-bsh><![CDATA[ + redirect = null; + childListIter = childList.iterator(); + while (childListIter.hasNext()){ + child = childListIter.next(); + org.ofbiz.base.util.Debug.logInfo("child =" + child,null); + nodeName = child.getNodeName(); + if ("redirect-url".equals(nodeName)){ + redirect = org.ofbiz.base.util.UtilXml.elementValue(child); + } else { + redirect = document; + } + + } + return org.ofbiz.base.util.UtilMisc.toMap("redirect", redirect.toString()); + ]]></call-bsh> + </simple-method> + + + + + + + + + + + + <simple-method method-name="setupHeaders" short-description=""> + <set field="true" value="true" type="Boolean"/> + <set field="false" value="false" type="Boolean"/> + + <call-object-method method-name="setDoInput" obj-field-name="conn"> + <field field-name="true" type="boolean"/> + </call-object-method> + + <call-object-method method-name="setDoOutput" obj-field-name="conn"> + <field field-name="true" type="boolean"/> + </call-object-method> + + <call-object-method method-name="setUseCaches" obj-field-name="conn"> + <field field-name="false" type="boolean"/> + </call-object-method> + + <call-object-method method-name="setFollowRedirects" obj-field-name="conn"> + <field field-name="true" type="boolean"/> + </call-object-method> + + <call-object-method method-name="setInstanceFollowRedirects" obj-field-name="conn"> + <field field-name="true" type="boolean"/> + </call-object-method> + + <call-object-method method-name="setRequestMethod" obj-field-name="conn"> + <string value="POST"/> + </call-object-method> + + <call-simple-method method-name="getHttpAuth"/> + <call-object-method method-name="setRequestProperty" obj-field-name="conn"> + <string value="Authorization"/> + <field field-name="HttpAuth"/> + </call-object-method> + + <call-simple-method method-name="getHttpHost"/> + <call-object-method method-name="setRequestProperty" obj-field-name="conn"> + <string value="Host"/> + <field field-name="HttpHost"/> + </call-object-method> + + <call-object-method method-name="setRequestProperty" obj-field-name="conn"> + <string value="content-type"/> + <string value="application/xml"/> + </call-object-method> + + <call-object-method method-name="setRequestProperty" obj-field-name="conn"> + <string value="accept"/> + <string value="application/xml"/> + </call-object-method> + + </simple-method> + <simple-method method-name="getHttpHost" short-description=""> + <call-bsh><![CDATA[ + HttpHost = conn.getURL().getHost(); + return org.ofbiz.base.util.UtilMisc.toMap("HttpHost", HttpHost); + ]]></call-bsh> + </simple-method> + +</simple-methods> + + + + Propchange: ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/PrepareXMLTemplate.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/PrepareXMLTemplate.xml ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/PrepareXMLTemplate.xml ------------------------------------------------------------------------------ svn:mime-type = text/xml Added: ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/ShoppingCartServices.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/ShoppingCartServices.xml?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/ShoppingCartServices.xml (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/ShoppingCartServices.xml Sat Oct 13 12:00:03 2007 @@ -0,0 +1,149 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + 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. +--> + +<simple-methods xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:noNamespaceSchemaLocation="http://www.ofbiz.org/dtds/simple-methods.xsd"> + + <simple-method method-name="ConvertOfbizCartToGoogle" short-description=""> + <set field="cart" from-field="parameters.shoppingCart"/> + <call-simple-method method-name="createShoppingCart"/> + <field-to-result field-name="googleCart"/> + + <call-simple-method method-name="createCheckoutFlowSupport"/> + <field-to-result field-name="flowSupport"/> + + <call-simple-method method-name="createorderProcessingSupport"/> + <field-to-result field-name="sendInitialAuthDetails"/> + + </simple-method> + <simple-method method-name="createShoppingCart" short-description=""> + <call-simple-method method-name="setupItems"/> + <set field="googleCart.items" from-field="items"/> + + <call-simple-method method-name="setupExpiration"/> + <set field="googleCart.cartExpiration" from-field="cartExpiration" type="Date"/> + + <call-simple-method method-name="setupPrivateData"/> + <set field="googleCart.merchantPrivateData" from-field="merchantPrivateData"/> + + </simple-method> + <simple-method method-name="createCheckoutFlowSupport" short-description=""> + <property-to-field resource="googleCheckout" property="editCartUrl" field-name="editCartUrl" map-name="flowSupport"/> + <property-to-field resource="googleCheckout" property="continueShoppingUrl" field-name="continueShoppingUrl" map-name="flowSupport"/> + <property-to-field resource="googleCheckout" property="requestPhone" field-name="requestPhone" map-name="flowSupport"/> + + <call-simple-method method-name="getTaxTables"/> + <set field="flowSupport.taxTables" from-field="taxTables"/> + + <call-simple-method method-name="getShippingMethods"/> + <set field="flowSupport.shippingMethods" from-field="shippingMethods"/> + + <call-simple-method method-name="getMerchantCalculations"/> + <set field="flowSupport.merchantCalculations" from-field="merchantCalculations"/> + + + </simple-method> + <simple-method method-name="createorderProcessingSupport" + short-description="holding method for improvement; must return sendInitialAuthDetails"> + <set field="sendInitialAuthDetails" value="false" type="Boolean"/> + </simple-method> + <simple-method method-name="setupItems" short-description=""> + <!-- Get Items from Cart --> + <call-object-method method-name="items" obj-field-name="cart" ret-field-name="cartItems"/> + <iterate entry-name="item" list-name="cartItems"> + <!-- itemName --> + <call-object-method method-name="getProductId" obj-field-name="item" ret-field-name="itemName" ret-map-name="thisItem"/> + <!-- itemDesc --> + <call-object-method method-name="getName" obj-field-name="item" ret-field-name="description" ret-map-name="thisItem"/> + <!-- unitPrice --> + <call-object-method method-name="getBasePrice" obj-field-name="item" ret-field-name="unitPrice" ret-map-name="thisItem"/> + <!-- quantity --> + <call-object-method method-name="getQuantity" obj-field-name="item" ret-field-name="quantity" ret-map-name="thisItem"/> + <!-- merchantItemId --> + <call-simple-method method-name="getMerchantItemId"/> + <!-- merchant private item data --> + <call-simple-method method-name="getMerchantPrivateItemData"/> + <!-- tax table for item--> + <call-simple-method method-name="getItemTaxTable"/> + <field-to-list field-name="thisItem" list-name="items"/> + <clear-field field-name="thisItem"/> + </iterate> + </simple-method> + <simple-method method-name="setupExpiration" + short-description="holding method for improvement; must return cartExpiration"> + + </simple-method> + <simple-method method-name="setupPrivateData" + short-description="holding method for improvemnt; must return merchantPrivateData"> + + </simple-method> + <simple-method method-name="getMerchantPrivateItemData" + short-description="holding method for improvement; must return thisItem.merchantPrivateItemData + as a list of maps (name, value)"> + </simple-method> + <simple-method method-name="getItemTaxTable" + short-description="holding method for improvement; must return thisItem.taxTable as a string "> + + </simple-method> + <simple-method method-name="getMerchantItemId" + short-description="holding method for improvement; must return thisItem.merchantItemId"> + + </simple-method> + <simple-method method-name="getTaxTables" short-description=""> + <call-simple-method method-name="isMerchantCalculated"/> + <set field="taxTables.merchantCalculated" from-field="merchantCalculated"/> + + <call-simple-method method-name="getDefaultTable"/> + <set field="taxTables.default" from-field="default"/> + + <call-simple-method method-name="getAlternateTables"/> + <set field="taxTables.alternateTaxTables" from-field="alternateTaxTables"/> + + </simple-method> + <simple-method method-name="getDefaultTable" short-description="must return map default"> + + <call-simple-method method-name="getDefaultTaxRules"/> + <set field="default.rules" from-field="defaultRules"/> + + </simple-method> + <simple-method method-name="getAlternateTables" + short-description="holding method for improvement; must return list alternateTaxTables"> + + </simple-method> + <simple-method method-name="getShippingMethods" short-description=""> + + <iterate entry-name="" list-name=""> + + <field-to-list field-name="" list-name="shippingMethods"/> + </iterate> + </simple-method> + <simple-method method-name="getDefaultTaxRules" short-description=""> + + <field-to-list field-name="" list-name="defaultRules"/> + </simple-method> + <simple-method method-name="isMerchantCalculated" + short-description=""> + <set field="isMerchantCalculated" value="false" type="Boolean"/> + </simple-method> + <simple-method method-name="getMerchantCalculations" + short-description=""> + + </simple-method> +</simple-methods> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/ShoppingCartServices.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/ShoppingCartServices.xml ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/script/org/ofbiz/googleCheckout/ShoppingCartServices.xml ------------------------------------------------------------------------------ svn:mime-type = text/xml Added: ofbiz/trunk/specialpurpose/googleCheckout/servicedef/services.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/servicedef/services.xml?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/servicedef/services.xml (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/servicedef/services.xml Sat Oct 13 12:00:03 2007 @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + 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. +--> + +<services xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:noNamespaceSchemaLocation="http://www.ofbiz.org/dtds/services.xsd"> + + <service name="ConvertOfbizCartToGoogle" engine="simple" invoke="ConvertOfbizCartToGoogle" + location="org/ofbiz/googleCheckout/ShoppingCartServices.xml"> + <attribute name="shoppingCart" type="org.ofbiz.order.shoppingcart.ShoppingCart" mode="IN" optional="false"/> + <attribute name="googleCart" mode="OUT" type="Map" optional="false"/> + <attribute name="flowSupport" mode="OUT" type="Map" optional="false"/> + <attribute name="sendInitialAuthDetails" mode="OUT" type="Boolean" optional="false"/> + </service> + <service name="createXMLOutput" engine="simple" invoke="createXMLOutput" + location="org/ofbiz/googleCheckout/PrepareXMLTemplate.xml"> + <attribute name="shoppingCart" type="org.ofbiz.order.shoppingcart.ShoppingCart" mode="IN" optional="false"/> + </service> + <service name="transmitRequest" engine="simple" invoke="transmitRequest" + location="org/ofbiz/googleCheckout/PrepareXMLTemplate.xml"> + <attribute name="shoppingCart" type="org.ofbiz.order.shoppingcart.ShoppingCart" mode="IN" optional="false"/> + <attribute name="redirect" mode="OUT" type="String" optional="false"/> + </service> +</services> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/servicedef/services.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/servicedef/services.xml ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/servicedef/services.xml ------------------------------------------------------------------------------ svn:mime-type = text/xml Added: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/redirect/redirectHeader.ftl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/redirect/redirectHeader.ftl?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/redirect/redirectHeader.ftl (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/redirect/redirectHeader.ftl Sat Oct 13 12:00:03 2007 @@ -0,0 +1,29 @@ +<#-- +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. +--> + +<#if parameters.redirect?exists> +<html> +<head> +<meta HTTP-EQUIV="REFRESH" content="0; url=${parameters.redirect}"> +</head> +</html> + +<#else> +Woops, screwed up. ${context} +</#if> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/redirect/redirectHeader.ftl ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/redirect/redirectHeader.ftl ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/redirect/redirectHeader.ftl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/CheckoutShoppingCart.ftl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/CheckoutShoppingCart.ftl?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/CheckoutShoppingCart.ftl (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/CheckoutShoppingCart.ftl Sat Oct 13 12:00:03 2007 @@ -0,0 +1,25 @@ +<#-- +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. +--> + +<?xml version="1.0" encoding="UTF-8"?> +<checkout-shopping-cart xmlns="http://checkout.google.com/schema/2"> +${screens.render("component://googlecheckout/widget/GoogleCheckoutScreens.xml#shoppingCart")} +${screens.render("component://googlecheckout/widget/GoogleCheckoutScreens.xml#checkoutFlowSupport")} +${screens.render("component://googlecheckout/widget/GoogleCheckoutScreens.xml#orderProcessingSupport")} +</checkout-shopping-cart> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/CheckoutShoppingCart.ftl ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/CheckoutShoppingCart.ftl ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/CheckoutShoppingCart.ftl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport.ftl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport.ftl?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport.ftl (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport.ftl Sat Oct 13 12:00:03 2007 @@ -0,0 +1,28 @@ +<#-- +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. +--> + +<checkout-flow-support> + <merchant-checkout-flow-support> + ${screens.render("component://googlecheckout/widget/GoogleCheckoutScreens.xml#simpleFlow")} + ${screens.render("component://googlecheckout/widget/GoogleCheckoutScreens.xml#taxTables")} + ${screens.render("component://googlecheckout/widget/GoogleCheckoutScreens.xml#shippingMethods")} + ${screens.render("component://googlecheckout/widget/GoogleCheckoutScreens.xml#merchantCalculations")} + ${screens.render("component://googlecheckout/widget/GoogleCheckoutScreens.xml#requestPhone")} + </merchant-checkout-flow-support> +</checkout-flow-support> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport.ftl ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport.ftl ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport.ftl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/merchantCalculations.ftl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/merchantCalculations.ftl?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/merchantCalculations.ftl (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/merchantCalculations.ftl Sat Oct 13 12:00:03 2007 @@ -0,0 +1,26 @@ +<#-- +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. +--> + +<#if flowSupport.merchantCalculations?exists> +<merchant-calculations> + <merchant-calculations-url>${flowSupport.merchantCalulations.url}</merchant-calculations-url> + <accept-merchant-coupons>${flowSupport.merchantCalculations.acceptCoupons?default("false")}</accept-merchant-coupons> + <accept-gift-certificates>${flowSupport.merchantCalculations.acceptGC?default("false")}</accept-gift-certificates> +</merchant-calculations> +</#if> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/merchantCalculations.ftl ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/merchantCalculations.ftl ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/merchantCalculations.ftl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/requestPhone.ftl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/requestPhone.ftl?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/requestPhone.ftl (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/requestPhone.ftl Sat Oct 13 12:00:03 2007 @@ -0,0 +1,20 @@ +<#-- +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. +--> + +<request-buyer-phone-number>${flowSupport.requestPhone?default("false")}</request-buyer-phone-number> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/requestPhone.ftl ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/requestPhone.ftl ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/requestPhone.ftl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/shippingMethods.ftl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/shippingMethods.ftl?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/shippingMethods.ftl (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/shippingMethods.ftl Sat Oct 13 12:00:03 2007 @@ -0,0 +1,137 @@ +<#-- +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. +--> + +<#--TODO: merchant-calculated-shipping cannot be mixed with flat-shipping or pickup, change accordingly --> + +<#if flowSupport.shippingMethods?exists> +<shipping-methods> +<#list flowSupport.shippingMethods as shippingMethod> + <#if shippingMethod.type="flatRate"> + <flat-rate-shipping name="${shippingMethod.name}"> + <price currency="USD">${shippingMethod.price}</price> + <#if shippingMethod.restrictions?exists> + <#list shippingMethod.restrictions as restriction> + <shipping-restrictions> + <#if restriction.allowed?exists> + <allowed-areas> + <#list resitriction.allowed as allow> + <#if allow.type="state"> + <us-state-area> + <#list allow.areas as area> + <state>${area}</state> + </#list> + </us-state-area> + <#elseif allow.type="zip"> + <us-zip-area> + <#list allow.areas as area> + <zip-pattern>${area}</zip-pattern> + </#list> + </us-zip-area> + <#elseif allow.type="country"> + <us-country-area country-area="<#list allow.area as area>${area}</#list>"/> + </#if> + </#list> + </allowed-areas> + </#if> + <#if restriction.excluded?exists> + <excluded-areas> + <#list resitriction.excluded as exclude> + <#if exclude.type="state"> + <us-state-area> + <#list exclude.areas as area> + <state>${area}</state> + </#list> + </us-state-area> + <#elseif exclude.type="zip"> + <us-zip-area> + <#list exclude.areas as area> + <zip-pattern>${area}</zip-pattern> + </#list> + </us-zip-area> + <#elseif exclude.type="country"> + <us-country-area country-area="<#list exclude.area as area>${area}</#list>"/> + </#if> + </#list> + </excludedd-areas> + </#if> + </shipping-restrictions> + </#list> + </#if> + </flat-rate-shipping> + <#elseif shippingMethod.type="merchantCalculated"> + <merchant-calculated-shipping name="${shippingMethod.name}"> + <price currency="USD">${shippingMethod.price}</price> + <#if shippingMethod.restrictions?exists> + <#list shippingMethod.restrictions as restriction> + <shipping-restrictions> + <#if restriction.allowed?exists> + <allowed-areas> + <#list resitriction.allowed as allow> + <#if allow.type="state"> + <us-state-area> + <#list allow.areas as area> + <state>${area}</state> + </#list> + </us-state-area> + <#elseif allow.type="zip"> + <us-zip-area> + <#list allow.areas as area> + <zip-pattern>${area}</zip-pattern> + </#list> + </us-zip-area> + <#elseif allow.type="country"> + <us-country-area country-area="<#list allow.area as area>${area}</#list>"/> + </#if> + </#list> + </allowed-areas> + </#if> + <#if restriction.excluded?exists> + <excluded-areas> + <#list resitriction.excluded as exclude> + <#if exclude.type="state"> + <us-state-area> + <#list exclude.areas as area> + <state>${area}</state> + </#list> + </us-state-area> + <#elseif exclude.type="zip"> + <us-zip-area> + <#list exclude.areas as area> + <zip-pattern>${area}</zip-pattern> + </#list> + </us-zip-area> + <#elseif exclude.type="country"> + <us-country-area country-area="<#list exclude.area as area>${area}</#list>"/> + </#if> + </#list> + </excludedd-areas> + </#if> + </shipping-restrictions> + </#list> + </#if> + + </merchant-calculated-shipping> + <#elseif shippingMethod.type="pickup"> + <pickup name="${shippingMethod.name}"> + <price currency="USD">${shippingMethod.price}</price> + </pickup> + </#if> +</#list> +</shipping-methods> +</#if> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/shippingMethods.ftl ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/shippingMethods.ftl ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/shippingMethods.ftl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/simpleFlow.ftl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/simpleFlow.ftl?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/simpleFlow.ftl (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/simpleFlow.ftl Sat Oct 13 12:00:03 2007 @@ -0,0 +1,25 @@ +<#-- +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. +--> + +<#if flowSupport.editCartUrl?exists> +<edit-cart-url>${flowSupport.editCartUrl}</edit-cart-url> +</#if> +<#if flowSupport.continueShoppingUrl?exists> +<continue-shopping-url>${flowSupport.continueShoppingUrl}</continue-shopping-url> +</#if> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/simpleFlow.ftl ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/simpleFlow.ftl ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/simpleFlow.ftl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/taxTables.ftl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/taxTables.ftl?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/taxTables.ftl (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/taxTables.ftl Sat Oct 13 12:00:03 2007 @@ -0,0 +1,134 @@ +<#-- +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. +--> + +<tax-tables merchant-calculated=${flowSupport.taxTables.merchantCalculated?default("false")}> + <default-tax-table> + <tax-rules> + <#list flowSupport.taxTables.default.rules as rule> + <default-tax-rule> + <#if rule.shippingTaxed?exists> + <shipping-taxed>${rule.shippingTaxed}</shipping-taxed> + </#if> + <rate>${rule.rate}</rate> + <tax-area> + <#if rule.areaType="states"> + <#if rule.allowedAreas?exists> + <allowed-areas> + <us-state-area> + <#list rule.allowedAreas as allowed> + <state>${allowed}</state> + </#list> + </us-state-area> + </allowed-areas> + </#if> + <#if rule.excludedAreas?exists> + <excluded-areas> + <us-state-area> + <#list rule.excludedAreas as excluded> + <state>${excluded}</state> + </#list> + </us-state-area> + </excluded-areas> + </#if> + <#elseif rule.areaType="zips"> + <#if rule.allowedAreas?exists> + <allowed-areas> + <us-zip-area> + <#list rule.allowedAreas as allowed> + <zip-pattern>${allowed}</zip-pattern> + </#list> + </us-zip-area> + </allowed-areas> + </#if> + <#if rule.excludedAreas?exists> + <excluded-areas> + <us-zip-area> + <#list rule.excludedAreas as excluded> + <zip-pattern>${excluded}</zip-pattern> + </#list> + </us-zip-area> + </excluded-areas> + </#if> + <#elseif rule.areaType="country"> + <us-country-area country-area="${rule.country}"/> + </#if> + <tax-area> + </default-tax-rule> + </#list> + </tax-rules> + </default-tax-table> + <#if flowSupport.taxTables.alternateTaxTables?exists> + <alternate-tax-tables> + <#list flowSupport.taxTables.alternateTaxTables as altTaxTable> + <alternate-tax-table name="${altTaxTable.name}" standalone="${altTaxTable.standalone}"> + <alternate-tax-rules> + <#list altTaxTable.rules as altRule> + <alternate-tax-rule> + <rate>${altRule.rate}</rate> + <tax-area> + <#if altRule.areaType="states"> + <#if altRule.allowedAreas?exists> + <allowed-areas> + <us-state-area> + <#list altRule.allowedAreas as altAllowed> + <state>${altAllowed}</state> + </#list> + </us-state-area> + </allowed-areas> + </#if> + <#if altRule.excludedAreas?exists> + <excluded-areas> + <us-state-area> + <#list altRule.excludedAreas as altExcluded> + <state>${altExcluded}</state> + </#list> + </us-state-area> + </excluded-areas> + </#if> + <#elseif rule.areaType="zips"> + <#if altRule.allowedAreas?exists> + <allowed-areas> + <us-zip-area> + <#list altRule.allowedAreas as altAllowed> + <zip-pattern>${altAllowed}</zip-pattern> + </#list> + </us-zip-area> + </allowed-areas> + </#if> + <#if altRule.excludedAreas?exists> + <excluded-areas> + <us-zip-area> + <#list altRule.excludedAreas as altExcluded> + <zip-pattern>${altExcluded}</zip-pattern> + </#list> + </us-zip-area> + </excluded-areas> + </#if> + <#elseif altRule.areaType="country"> + <us-country-area country-area="${altRule.country}"/> + </#if> + </tax-area> + </alternate-tax-rule> + </#list> + </alternate-tax-rules> + </alternate-tax-table> + </#list> + </alternate-tax-tables> + </#if> +</tax-tables> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/taxTables.ftl ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/taxTables.ftl ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/checkoutFlowSupport/taxTables.ftl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/orderProcessingSupport.ftl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/orderProcessingSupport.ftl?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/orderProcessingSupport.ftl (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/orderProcessingSupport.ftl Sat Oct 13 12:00:03 2007 @@ -0,0 +1,22 @@ +<#-- +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. +--> + +<order-processing-support> + <request-initial-auth-details>${sendInitialAuthDetails?string}</request-initial-auth-details> +</order-processing-support> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/orderProcessingSupport.ftl ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/orderProcessingSupport.ftl ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/orderProcessingSupport.ftl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart.ftl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart.ftl?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart.ftl (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart.ftl Sat Oct 13 12:00:03 2007 @@ -0,0 +1,24 @@ +<#-- +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. +--> + +<shopping-cart> +${screens.render("component://googlecheckout/widget/GoogleCheckoutScreens.xml#items")} +${screens.render("component://googlecheckout/widget/GoogleCheckoutScreens.xml#expiration")} +${screens.render("component://googlecheckout/widget/GoogleCheckoutScreens.xml#privateData")} +</shopping-cart> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart.ftl ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart.ftl ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart.ftl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/expiration.ftl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/expiration.ftl?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/expiration.ftl (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/expiration.ftl Sat Oct 13 12:00:03 2007 @@ -0,0 +1,22 @@ +<#-- +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. +--> + +<cart-expiration> + <good-until-date>${googleCart.cartExpiration?string("yyyy-MM-dd'THH:mm:ss'Z")}</good-until-date> +</cart-expiration> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/expiration.ftl ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/expiration.ftl ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/expiration.ftl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/items.ftl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/items.ftl?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/items.ftl (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/items.ftl Sat Oct 13 12:00:03 2007 @@ -0,0 +1,43 @@ +<#-- +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. +--> + +<items> +<#list googleCart.items as item> + <item> + <item-name>${item.itemName}</item-name> + <item-description>${item.description}</item-description> + <unit-price currency="USD">${item.unitPrice}</unit-price> + <quantity>${item.quantity}</quantity> + + <#if item.merchantItemId?exists> + <merchantItemId>${item.merchantItemId}</merchantItemId> + </#if> + <#if item.merchantPrivateItemData?exists> + <merchant-private-item-data> + <#list item.merchantPrivateItemData as itemData> + <${itemData.name}>${itemData.value}</${itemData.name}> + </#list> + </merchant-private-item-data> + </#if> + <#if item.taxTable?exists> + <tax-table-selector>${taxTable}</tax-table-selector> + </#if> + </item> +</#list> +</items> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/items.ftl ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/items.ftl ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/items.ftl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/privateData.ftl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/privateData.ftl?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/privateData.ftl (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/privateData.ftl Sat Oct 13 12:00:03 2007 @@ -0,0 +1,24 @@ +<#-- +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. +--> + +<merchant-private-data> + <#list googleCart.merchantPrivateData as data> + <${data.name}>${data.value}</${data.name}> + </#list> +</merchant-private-data> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/privateData.ftl ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/privateData.ftl ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/webapp/google/templates/shoppingCart/privateData.ftl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/googleCheckout/widget/GoogleCheckoutScreens.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/googleCheckout/widget/GoogleCheckoutScreens.xml?rev=584440&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/googleCheckout/widget/GoogleCheckoutScreens.xml (added) +++ ofbiz/trunk/specialpurpose/googleCheckout/widget/GoogleCheckoutScreens.xml Sat Oct 13 12:00:03 2007 @@ -0,0 +1,136 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + 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. +--> + +<screens xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:noNamespaceSchemaLocation="http://www.ofbiz.org/dtds/widget-screen.xsd"> + + <screen name="CheckoutShoppingCart"> + <section> + <widgets> + <platform-specific><html><html-template location="component://googlecheckout/webapp/google/templates/CheckoutShoppingCart.ftl"/></html></platform-specific> + </widgets> + </section> + </screen> + <screen name="shoppingCart"> + <section> + <widgets> + <platform-specific><html><html-template location="component://googlecheckout/webapp/google/templates/shoppingCart.ftl"/></html></platform-specific> + </widgets> + </section> + </screen> + <screen name="checkoutFlowSupport"> + <section> + <widgets> + <platform-specific><html><html-template location="component://googlecheckout/webapp/google/templates/checkoutFlowSupport.ftl"/></html></platform-specific> + </widgets> + </section> + </screen> + <screen name="orderProcessingSupport"> + <section> + <widgets> + <platform-specific><html><html-template location="component://googlecheckout/webapp/google/templates/orderProcessingSupport.ftl"/></html></platform-specific> + </widgets> + </section> + </screen> + + <screen name="items"> + <section> + <widgets> + <platform-specific><html><html-template location="component://googlecheckout/webapp/google/templates/shoppingCart/items.ftl"/></html></platform-specific> + </widgets> + </section> + </screen> + <screen name="expiration"> + <section> + <condition> + <not><if-empty field-name="googleCart.cartExpiration"/></not> + </condition> + <widgets> + <platform-specific><html><html-template location="component://googlecheckout/webapp/google/templates/shoppingCart/expiration.ftl"/></html></platform-specific> + </widgets> + </section> + </screen> + <screen name="privateData"> + <section> + <condition> + <not><if-empty field-name="googleCart.merchantPrivateData"/></not> + </condition> + <widgets> + <platform-specific><html><html-template location="component://googlecheckout/webapp/google/templates/shoppingCart/privateData.ftl"/></html></platform-specific> + </widgets> + </section> + </screen> + <screen name="merchantCalculations"> + <section> + <condition> + <not><if-empty field-name="merchantCalculations"/></not> + </condition> + <widgets> + <platform-specific><html><html-template location="component://googlecheckout/webapp/google/templates/checkoutFlowSupport/merchantCaluclations.ftl"/></html></platform-specific> + </widgets> + </section> + </screen> + <screen name="shippingMethods"> + <section> + <condition> + <not><if-empty field-name="shippingMethods"/></not> + </condition> + <widgets> + <platform-specific><html><html-template location="component://googlecheckout/webapp/google/templates/checkoutFlowSupport/shippingMethods.ftl"/></html></platform-specific> + </widgets> + </section> + </screen> + <screen name="simpleFlow"> + <section> + <widgets> + <platform-specific><html><html-template location="component://googlecheckout/webapp/google/templates/checkoutFlowSupport/simpleFlow.ftl"/></html></platform-specific> + </widgets> + </section> + </screen> + <screen name="taxTables"> + <section> + <condition> + <not><if-empty field-name="flowSupport.taxTables"/></not> + </condition> + <widgets> + <platform-specific><html><html-template location="component://googlecheckout/webapp/google/templates/checkoutFlowSupport/taxTables.ftl"/></html></platform-specific> + </widgets> + </section> + </screen> + <screen name="requestPhone"> + <section> + <condition> + <not><if-empty field-name="flowSupport.requestPhone"/></not> + </condition> + <widgets> + <platform-specific><html><html-template location="component://googlecheckout/webapp/google/templates/checkoutFlowSupport/requestPhone.ftl"/></html></platform-specific> + </widgets> + </section> + </screen> + <screen name="redirect"> + <section> + <widgets> + <platform-specific> + <html><html-template location="component://googlecheckout/webapp/google/redirect/redirectHeader.ftl"/></html> + </platform-specific> + </widgets> + </section> + </screen> +</screens> Propchange: ofbiz/trunk/specialpurpose/googleCheckout/widget/GoogleCheckoutScreens.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/specialpurpose/googleCheckout/widget/GoogleCheckoutScreens.xml ------------------------------------------------------------------------------ svn:keywords = "Date Rev Author URL Id" Propchange: ofbiz/trunk/specialpurpose/googleCheckout/widget/GoogleCheckoutScreens.xml ------------------------------------------------------------------------------ svn:mime-type = text/xml |
Free forum by Nabble | Edit this page |