From 649a070bb3787a92260f163d84b2d0f9d941cba4 Mon Sep 17 00:00:00 2001 From: Ivan Tyagov <ivan@nexedi.com> Date: Wed, 17 Jan 2007 15:03:31 +0000 Subject: [PATCH] Switched from tempory OrderLine storage to plain pickable dictionary for shopping cart items. Implemented various cart widgets and customer forms. git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@12122 20353a03-c40f-0410-a6d1-a30d3c3de9de --- ...ml => ERP5Ecommerce_addToShoppingCart.xml} | 69 +- .../ERP5Ecommerce_addToShoppingCartWidget.xml | 85 + .../ERP5Ecommerce_createCustomerAccount.xml | 32 +- ...mmerce_createSaleOrderFromShoppingCart.xml | 25 +- ... ERP5Ecommerce_deleteShoppingCartItem.xml} | 31 +- .../ERP5Ecommerce_getShoppingCart.xml | 31 +- .../ERP5Ecommerce_getShoppingCartItemList.xml | 6 +- ...Ecommerce_getTotalPriceForShoppingCart.xml | 17 +- .../ERP5Ecommerce_isValidCreditCardNumber.xml | 162 ++ .../ERP5Ecommerce_logged_in.xml | 94 + .../ERP5Ecommerce_loginStatusWidget.xml | 41 +- .../erp5_ecommerce/ERP5Ecommerce_logout.xml | 286 ++ .../ERP5Ecommerce_newCustomerAccountForm.xml | 18 +- .../my_bank_account_holder_name.xml} | 76 +- .../my_bank_account_number.xml | 287 ++ .../my_bank_code.xml | 265 ++ .../my_default_email_text.xml | 2 +- .../my_stop_date.xml | 2308 +++++++++++++++++ .../ERP5Ecommerce_newShoppingCart.xml | 28 +- ...commerce_renderSaleOrderAsShoppingCart.xml | 48 +- .../ERP5Ecommerce_shoppingCartWidget.xml | 24 +- ...merForm.xml => ERP5Ecommerce_thankyou.xml} | 35 +- .../ERP5Ecommerce_thankyou/my_thankyou.xml | 149 ++ ...l => ERP5Ecommerce_updateShoppingCart.xml} | 44 +- .../erp5_ecommerce/Product_viewAsShop.xml | 2 +- .../Product_viewAsShop/my_buy_button.xml | 193 +- .../Product_viewAsShop/my_price.xml | 287 ++ .../SaleOrder_confirmShopping.xml | 57 +- .../SaleOrder_finalizeShopping.xml | 318 +++ .../erp5_ecommerce/SaleOrder_viewAsWeb.xml | 4 +- .../shopping_item_list.xml | 500 ---- .../SaleOrder_viewAsWeb/submit.xml | 169 ++ .../SaleOrder_viewAsWebConfirm.xml | 144 + .../shopping_cart.xml | 307 +++ .../SaleOrder_viewAsWebConfirm/submit.xml | 169 ++ 35 files changed, 5370 insertions(+), 943 deletions(-) rename bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/{Product_addToShoppingCart.xml => ERP5Ecommerce_addToShoppingCart.xml} (76%) create mode 100644 bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_addToShoppingCartWidget.xml rename bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/{SaleOrder_deleteShoppingCartItem.xml => ERP5Ecommerce_deleteShoppingCartItem.xml} (88%) create mode 100644 bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_isValidCreditCardNumber.xml create mode 100644 bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_logged_in.xml create mode 100644 bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_logout.xml rename bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/{Product_viewAsShop/my_buy_quantity.xml => ERP5Ecommerce_newCustomerAccountForm/my_bank_account_holder_name.xml} (88%) create mode 100644 bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_bank_account_number.xml create mode 100644 bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_bank_code.xml create mode 100644 bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_stop_date.xml rename bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/{ERP5Ecommerce_newCustomerForm.xml => ERP5Ecommerce_thankyou.xml} (73%) create mode 100644 bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_thankyou/my_thankyou.xml rename bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/{SaleOrder_update.xml => ERP5Ecommerce_updateShoppingCart.xml} (88%) create mode 100644 bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_viewAsShop/my_price.xml create mode 100644 bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_finalizeShopping.xml delete mode 100644 bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWeb/shopping_item_list.xml create mode 100644 bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWeb/submit.xml create mode 100644 bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWebConfirm.xml create mode 100644 bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWebConfirm/shopping_cart.xml create mode 100644 bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWebConfirm/submit.xml diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_addToShoppingCart.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_addToShoppingCart.xml similarity index 76% rename from bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_addToShoppingCart.xml rename to bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_addToShoppingCart.xml index 75bb4c5b27..b2747ce140 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_addToShoppingCart.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_addToShoppingCart.xml @@ -70,36 +70,40 @@ <key> <string>_body</string> </key> <value> <string encoding="cdata"><![CDATA[ -from Products.ERP5Type.Document import newTempOrderLine\n -\n -request = context.REQUEST\n -product = context\n -quantity = request.get(\'field_my_buy_quantity\', 1)\n +quantity = int(context.REQUEST.get(\'field_my_buy_quantity\', 1))\n shopping_cart = context.ERP5Ecommerce_getShoppingCart()\n \n +if product is None:\n + product = context\n +\n ## check if we don\'t have already such a product in cart\n line_found=False\n -for order_line in shopping_cart.objectValues():\n - if order_line.getObject().getResource() == product.getRelativeUrl():\n - new_quantity = order_line.getQuantity()+int(quantity)\n +for order_line in shopping_cart:\n + if order_line[\'resource\'] == product.getRelativeUrl():\n + new_quantity = order_line[\'quantity\'] + int(quantity)\n if new_quantity<=0:\n - shopping_cart.deleteContent(order_line.getId())\n + ## remove items with zero quantity\n + del shopping_cart[indexof(order_line)]\n else:\n - order_line.setQuantity(new_quantity)\n + order_line[\'quantity\'] = new_quantity\n line_found=True\n break\n \n if line_found == False:\n ## new Product, add to shopping cart\n - my_orderline= shopping_cart.newContent(portal_type=\'Sale Order Line\', \\\n - title = product.getTitle(), \\\n - resource = product.getRelativeUrl(), \\\n - quantity=quantity)\n + tmp = {}\n + tmp[\'resource\'] = product.getRelativeUrl()\n + tmp[\'quantity\'] = quantity\n + shopping_cart.append(tmp)\n +\n +## update back cache so we have consistent results between cache plugins\n +context.ERP5Ecommerce_getShoppingCart(action=\'update\', \\\n + new_shopping_cart = shopping_cart)\n \n -redirect_url = request.get(\'HTTP_REFERER\', context.absolute_url())\n -redirect_url = redirect_url.split(\'?\')[0]\n -#redirect_url = context.getWebSectionValue().absolute_url()\n -request.RESPONSE.redirect("%s?portal_status_message=Added to cart." %redirect_url)\n +translateString = context.Base_translateString\n +context.Base_redirect(\'view\', \\\n + editable_mode=True, \\\n + keep_items={\'portal_status_message\': translateString("Added to cart.", mapping = dict())})\n ]]></string> </value> @@ -118,7 +122,7 @@ request.RESPONSE.redirect("%s?portal_status_message=Added to cart." %redirect_ur </item> <item> <key> <string>_params</string> </key> - <value> <string></string> </value> + <value> <string>product=None</string> </value> </item> <item> <key> <string>errors</string> </key> @@ -138,30 +142,31 @@ request.RESPONSE.redirect("%s?portal_status_message=Added to cart." %redirect_ur <dictionary> <item> <key> <string>co_argcount</string> </key> - <value> <int>0</int> </value> + <value> <int>1</int> </value> </item> <item> <key> <string>co_varnames</string> </key> <value> <tuple> - <string>Products.ERP5Type.Document</string> - <string>newTempOrderLine</string> + <string>product</string> + <string>int</string> <string>_getattr_</string> <string>context</string> - <string>request</string> - <string>product</string> <string>quantity</string> <string>shopping_cart</string> + <string>None</string> <string>False</string> <string>line_found</string> <string>_getiter_</string> <string>order_line</string> - <string>int</string> + <string>_getitem_</string> <string>new_quantity</string> + <string>_write_</string> + <string>indexof</string> <string>True</string> - <string>my_orderline</string> - <string>redirect_url</string> - <string>_getitem_</string> + <string>tmp</string> + <string>translateString</string> + <string>dict</string> </tuple> </value> </item> @@ -173,16 +178,18 @@ request.RESPONSE.redirect("%s?portal_status_message=Added to cart." %redirect_ur <item> <key> <string>func_defaults</string> </key> <value> - <none/> + <tuple> + <none/> + </tuple> </value> </item> <item> <key> <string>id</string> </key> - <value> <string>Product_addToShoppingCart</string> </value> + <value> <string>ERP5Ecommerce_addToShoppingCart</string> </value> </item> <item> <key> <string>title</string> </key> - <value> <string>Add product to shopping cart</string> </value> + <value> <string>Add resource to shopping cart</string> </value> </item> <item> <key> <string>warnings</string> </key> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_addToShoppingCartWidget.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_addToShoppingCartWidget.xml new file mode 100644 index 0000000000..bb5793f6c7 --- /dev/null +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_addToShoppingCartWidget.xml @@ -0,0 +1,85 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>Products.PageTemplates.ZopePageTemplate</string> + <string>ZopePageTemplate</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>__ac_local_roles__</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>_bind_names</string> </key> + <value> + <object> + <klass> + <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/> + </klass> + <tuple/> + <state> + <dictionary> + <item> + <key> <string>_asgns</string> </key> + <value> + <dictionary> + <item> + <key> <string>name_subpath</string> </key> + <value> <string>traverse_subpath</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </state> + </object> + </value> + </item> + <item> + <key> <string>_text</string> </key> + <value> <string encoding="cdata"><![CDATA[ + +<form action="">\n +<select name="field_my_buy_quantity">\n + <tal:block tal:repeat="index python: range(1,31)">\n + <option tal:content="index" tal:attributes="value index"/>\n + </tal:block>\n +</select>\n +\n +<input type="submit"\n + class="save"\n + name="ERP5Ecommerce_addToShoppingCart:method" \n + value="Add to Shopping Cart"/>\n +</form> + +]]></string> </value> + </item> + <item> + <key> <string>content_type</string> </key> + <value> <string>text/html</string> </value> + </item> + <item> + <key> <string>expand</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>ERP5Ecommerce_addToShoppingCartWidget</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Add to cart button widget</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_createCustomerAccount.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_createCustomerAccount.xml index 3ef360877c..db28033879 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_createCustomerAccount.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_createCustomerAccount.xml @@ -70,18 +70,27 @@ <key> <string>_body</string> </key> <value> <string>from Products.Formulator.Errors import FormValidationError\n \n -form = context.getWebSectionValue().ERP5Ecommerce_newCustomerAccountForm\n +form = context.ERP5Ecommerce_newCustomerAccountForm\n request = context.REQUEST\n form_kw = request.form\n person_kw = {}\n field_prefix = \'field_my_\'\n +translateString = context.Base_translateString\n \n for key in form_kw.keys():\n if key.startswith(field_prefix):\n person_kw[key.replace(field_prefix, \'\')] = form_kw[key]\n +person_kw[\'career_role\'] = \'internal\'\n \n +## get credit card account details\n +bank_kw = {}\n +for key in (\'bank_code\', \'bank_account_holder_name\', \'bank_account_number\',):\n + bank_kw[key] = person_kw.pop(key)\n +bank_kw[\'stop_date\'] = \'%s/%s/%s\' %(request.get(\'subfield_field_my_stop_date_year\', \'\'), \\\n + request.get(\'subfield_field_my_stop_date_month\', \'\'), \\\n + request.get(\'subfield_field_my_stop_date_month\', \'\') )\n try:\n - form.validate_all_to_request(request)\n + kw = form.validate_all_to_request(request)\n validated = True\n except FormValidationError, validation_errors:\n validated = False\n @@ -94,10 +103,18 @@ person_module = context.person_module\n person = person_module.newContent(portal_type=\'Person\', **person_kw)\n person.validate()\n \n -## TODO: create an assignment\n -return \n +## save credit card information\n +credit_card = person.newContent(portal_type=\'Credit Card\')\n +credit_card.edit(**bank_kw)\n \n -context.REQUEST.RESPONSE.redirect(context.WebSite_getDocumentUrl()+"/person-created")\n +person.immediateReindexObject()\n +\n +context.Base_redirect(\'ERP5Ecommerce_logged_in\', \\\n + editable_mode=False, \\\n + keep_items={\'portal_status_message\': translateString("Your account was created.", mapping = dict()),\n + \'came_from\': context.absolute_url(),\n + \'__ac_name\': person_kw[\'reference\'],\n + \'__ac_password\': person_kw[\'password\']})\n </string> </value> </item> <item> @@ -158,10 +175,13 @@ context.REQUEST.RESPONSE.redirect(context.WebSite_getDocumentUrl()+"/person-crea <string>form_kw</string> <string>person_kw</string> <string>field_prefix</string> + <string>translateString</string> <string>_getiter_</string> <string>key</string> <string>_getitem_</string> <string>_write_</string> + <string>bank_kw</string> + <string>kw</string> <string>True</string> <string>validated</string> <string>validation_errors</string> @@ -169,6 +189,8 @@ context.REQUEST.RESPONSE.redirect(context.WebSite_getDocumentUrl()+"/person-crea <string>person_module</string> <string>_apply_</string> <string>person</string> + <string>credit_card</string> + <string>dict</string> </tuple> </value> </item> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_createSaleOrderFromShoppingCart.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_createSaleOrderFromShoppingCart.xml index 4a1a68d838..c482f88821 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_createSaleOrderFromShoppingCart.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_createSaleOrderFromShoppingCart.xml @@ -68,15 +68,22 @@ </item> <item> <key> <string>_body</string> </key> - <value> <string>order_module = context.getDefaultModule(\'Sale Order\')\n + <value> <string>user_id = context.portal_membership.getAuthenticatedMember().getId()\n +user_list = context.person_module.portal_catalog(reference=user_id, \\\n + portal_type="Person")\n +user_object = user_list[0].getObject()\n +\n +order_module = context.getPortalObject().sale_order_module\n sale_order = order_module.newContent(portal_type=\'Sale Order\')\n +sale_order.setDestination(user_object.getRelativeUrl())\n \n -for order_line in shopping_cart.objectValues():\n +for order_line in shopping_cart:\n + resource = context.restrictedTraverse(order_line[\'resource\'])\n sale_order.newContent(portal_type = \'Sale Order Line\',\n - resource = order_line.getResource(),\n - quantity = order_line.getQuantity(),\n - title = order_line.getTitle())\n -\n + resource = order_line[\'resource\'],\n + quantity = order_line[\'quantity\'],\n + price = resource.getPrice(),\n + title = resource.getTitle())\n return sale_order\n </string> </value> </item> @@ -100,6 +107,7 @@ return sale_order\n <key> <string>_proxy_roles</string> </key> <value> <tuple> + <string>Assignor</string> <string>Manager</string> </tuple> </value> @@ -131,10 +139,15 @@ return sale_order\n <string>shopping_cart</string> <string>_getattr_</string> <string>context</string> + <string>user_id</string> + <string>user_list</string> + <string>_getitem_</string> + <string>user_object</string> <string>order_module</string> <string>sale_order</string> <string>_getiter_</string> <string>order_line</string> + <string>resource</string> </tuple> </value> </item> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_deleteShoppingCartItem.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_deleteShoppingCartItem.xml similarity index 88% rename from bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_deleteShoppingCartItem.xml rename to bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_deleteShoppingCartItem.xml index e2998e62fe..cd8af004e3 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_deleteShoppingCartItem.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_deleteShoppingCartItem.xml @@ -204,17 +204,24 @@ </item> <item> <key> <string>_body</string> </key> - <value> <string>request = context.REQUEST\n -website = context.getWebSiteValue()\n -shopping_cart = context.ERP5Ecommerce_getShoppingCart()\n + <value> <string>translateString = context.Base_translateString\n +shopping_cart_items = context.ERP5Ecommerce_getShoppingCartItemList()\n +shopping_cart = shopping_cart_items\n +order_line_id = int(field_my_order_line_id)\n +\n if field_my_order_line_id is not None:\n - shopping_cart.manage_delObjects(field_my_order_line_id)\n + del shopping_cart_items[order_line_id]\n portal_status_message = "Successfully removed from shopping cart."\n else:\n portal_status_message = "Please select an item."\n \n -redirect_url = website.SaleOrder_viewAsWeb.absolute_url()\n -request.RESPONSE.redirect(redirect_url + \'?portal_status_message=%s\' %portal_status_message)\n +## update back cache so we have consistent results between cache plugins\n +context.ERP5Ecommerce_getShoppingCart(action=\'update\', \\\n + new_shopping_cart = shopping_cart)\n +\n +context.Base_redirect(\'SaleOrder_viewAsWeb\', \\\n + editable_mode=True, \\\n + keep_items={\'portal_status_message\': translateString(portal_status_message, mapping = dict())})\n </string> </value> </item> <item> @@ -269,12 +276,16 @@ request.RESPONSE.redirect(redirect_url + \'?portal_status_message=%s\' %portal_s <string>field_my_order_line_id</string> <string>_getattr_</string> <string>context</string> - <string>request</string> - <string>website</string> + <string>translateString</string> + <string>shopping_cart_items</string> <string>shopping_cart</string> + <string>int</string> + <string>order_line_id</string> <string>None</string> + <string>_write_</string> <string>portal_status_message</string> - <string>redirect_url</string> + <string>True</string> + <string>dict</string> </tuple> </value> </item> @@ -293,7 +304,7 @@ request.RESPONSE.redirect(redirect_url + \'?portal_status_message=%s\' %portal_s </item> <item> <key> <string>id</string> </key> - <value> <string>SaleOrder_deleteShoppingCartItem</string> </value> + <value> <string>ERP5Ecommerce_deleteShoppingCartItem</string> </value> </item> <item> <key> <string>title</string> </key> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_getShoppingCart.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_getShoppingCart.xml index 0c79ae6d1d..7a3c99e2d3 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_getShoppingCart.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_getShoppingCart.xml @@ -73,26 +73,29 @@ from DateTime import DateTime\n \n now = DateTime()\n request = context.REQUEST\n -session_id = request.get(\'session_id\', None)\n -expire_timeout_days = 7\n +expire_timeout_days = 90\n cache_factory = \'erp5_session_cache\'\n +session_id = request.get(\'session_id\', None)\n \n if session_id is None:\n ## first call so generate session_id and send back via cookie\n - session_id = context.ERP5Ecommerce_generateSessionID(max_long=10)\n + session_id = context.ERP5Ecommerce_generateSessionID(max_long=20)\n request.RESPONSE.setCookie(\'session_id\', session_id, expires=(now +expire_timeout_days).fCommon(), path=\'/\')\n \n -\n cache_method = CachingMethod(callable_object = context.ERP5Ecommerce_newShoppingCart, \\\n id = session_id, \\\n cache_factory=cache_factory)\n -if reset:\n +if action==\'reset\':\n ## reset cart \n cache_method.delete(id=session_id, cache_factory=cache_factory)\n - return \n +elif action==\'update\':\n + ## update back to cache\n + pass\n + #cache_method.delete(id=session_id, cache_factory=cache_factory)\n + #cache_method(value=new_shopping_cart)\n else:\n ## take order for this session\n - shopping_cart = cache_method()\n + shopping_cart = cache_method(value=[])\n return shopping_cart\n </string> </value> </item> @@ -110,7 +113,7 @@ else:\n </item> <item> <key> <string>_params</string> </key> - <value> <string>reset = False</string> </value> + <value> <string>action = \'\', new_shopping_cart=None</string> </value> </item> <item> <key> <string>errors</string> </key> @@ -130,13 +133,14 @@ else:\n <dictionary> <item> <key> <string>co_argcount</string> </key> - <value> <int>1</int> </value> + <value> <int>2</int> </value> </item> <item> <key> <string>co_varnames</string> </key> <value> <tuple> - <string>reset</string> + <string>action</string> + <string>new_shopping_cart</string> <string>Products.ERP5Type.Cache</string> <string>CachingMethod</string> <string>DateTime</string> @@ -144,10 +148,10 @@ else:\n <string>_getattr_</string> <string>context</string> <string>request</string> - <string>None</string> - <string>session_id</string> <string>expire_timeout_days</string> <string>cache_factory</string> + <string>None</string> + <string>session_id</string> <string>cache_method</string> <string>shopping_cart</string> </tuple> @@ -162,7 +166,8 @@ else:\n <key> <string>func_defaults</string> </key> <value> <tuple> - <int>0</int> + <string></string> + <none/> </tuple> </value> </item> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_getShoppingCartItemList.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_getShoppingCartItemList.xml index 929015dc4a..aa9e1bbe9e 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_getShoppingCartItemList.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_getShoppingCartItemList.xml @@ -68,8 +68,7 @@ </item> <item> <key> <string>_body</string> </key> - <value> <string>shopping_cart = context.ERP5Ecommerce_getShoppingCart()\n -return shopping_cart.objectValues(\'ERP5 Order Line\')\n + <value> <string>return context.ERP5Ecommerce_getShoppingCart()\n </string> </value> </item> <item> @@ -115,7 +114,6 @@ return shopping_cart.objectValues(\'ERP5 Order Line\')\n <string>kw</string> <string>_getattr_</string> <string>context</string> - <string>shopping_cart</string> </tuple> </value> </item> @@ -136,7 +134,7 @@ return shopping_cart.objectValues(\'ERP5 Order Line\')\n </item> <item> <key> <string>title</string> </key> - <value> <string>Getshopping cart items</string> </value> + <value> <string>Get shopping cart items</string> </value> </item> <item> <key> <string>warnings</string> </key> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_getTotalPriceForShoppingCart.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_getTotalPriceForShoppingCart.xml index eb960021e9..c4c3f9c7fd 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_getTotalPriceForShoppingCart.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_getTotalPriceForShoppingCart.xml @@ -68,15 +68,11 @@ </item> <item> <key> <string>_body</string> </key> - <value> <string>""" Why can\'t we use getTotalPrice on temporary Order object? """\n -total = 0.0\n + <value> <string>total = 0.0\n shopping_cart = context.ERP5Ecommerce_getShoppingCart()\n -for order_line in shopping_cart.objectValues():\n - try:\n - total += order_line.getPrice() * order_line.getTotalQuantity()\n - except RuntimeError:\n - ## why this happens is a mistery ?\n - pass\n +for order_line in shopping_cart:\n + resource = context.restrictedTraverse(order_line[\'resource\'])\n + total += resource.getPrice() * order_line[\'quantity\']\n return str(total)\n </string> </value> </item> @@ -134,7 +130,8 @@ return str(total)\n <string>shopping_cart</string> <string>_getiter_</string> <string>order_line</string> - <string>RuntimeError</string> + <string>_getitem_</string> + <string>resource</string> <string>str</string> </tuple> </value> @@ -156,7 +153,7 @@ return str(total)\n </item> <item> <key> <string>title</string> </key> - <value> <string>Calculate total price of items in shopping cart</string> </value> + <value> <string>Calculate total price for items in shopping cart</string> </value> </item> <item> <key> <string>warnings</string> </key> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_isValidCreditCardNumber.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_isValidCreditCardNumber.xml new file mode 100644 index 0000000000..66710c04d9 --- /dev/null +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_isValidCreditCardNumber.xml @@ -0,0 +1,162 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>Products.PythonScripts.PythonScript</string> + <string>PythonScript</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>Python_magic</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>Script_magic</string> </key> + <value> <int>3</int> </value> + </item> + <item> + <key> <string>__ac_local_roles__</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>_bind_names</string> </key> + <value> + <object> + <klass> + <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/> + </klass> + <tuple/> + <state> + <dictionary> + <item> + <key> <string>_asgns</string> </key> + <value> + <dictionary> + <item> + <key> <string>name_container</string> </key> + <value> <string>container</string> </value> + </item> + <item> + <key> <string>name_context</string> </key> + <value> <string>context</string> </value> + </item> + <item> + <key> <string>name_m_self</string> </key> + <value> <string>script</string> </value> + </item> + <item> + <key> <string>name_subpath</string> </key> + <value> <string>traverse_subpath</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </state> + </object> + </value> + </item> + <item> + <key> <string>_body</string> </key> + <value> <string>credit_card = request.get(\'field_my_bank_account_number\', \'\')\n +if credit_card == \'\':\n + return False\n +else:\n + ## validate it to an external system, using also card holder name\n + return True\n +</string> </value> + </item> + <item> + <key> <string>_code</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>_filepath</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>_owner</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>_params</string> </key> + <value> <string>editor, request</string> </value> + </item> + <item> + <key> <string>errors</string> </key> + <value> + <tuple/> + </value> + </item> + <item> + <key> <string>func_code</string> </key> + <value> + <object> + <klass> + <global name="FuncCode" module="Shared.DC.Scripts.Signature"/> + </klass> + <tuple/> + <state> + <dictionary> + <item> + <key> <string>co_argcount</string> </key> + <value> <int>2</int> </value> + </item> + <item> + <key> <string>co_varnames</string> </key> + <value> + <tuple> + <string>editor</string> + <string>request</string> + <string>_getattr_</string> + <string>credit_card</string> + <string>False</string> + <string>True</string> + </tuple> + </value> + </item> + </dictionary> + </state> + </object> + </value> + </item> + <item> + <key> <string>func_defaults</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>ERP5Ecommerce_isValidCreditCardNumber</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Is valid credit card number specified?</string> </value> + </item> + <item> + <key> <string>warnings</string> </key> + <value> + <tuple/> + </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_logged_in.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_logged_in.xml new file mode 100644 index 0000000000..bea23ad7d0 --- /dev/null +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_logged_in.xml @@ -0,0 +1,94 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>Products.PageTemplates.ZopePageTemplate</string> + <string>ZopePageTemplate</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>__ac_local_roles__</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>_bind_names</string> </key> + <value> + <object> + <klass> + <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/> + </klass> + <tuple/> + <state> + <dictionary> + <item> + <key> <string>_asgns</string> </key> + <value> + <dictionary> + <item> + <key> <string>name_subpath</string> </key> + <value> <string>traverse_subpath</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </state> + </object> + </value> + </item> + <item> + <key> <string>_owner</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>_text</string> </key> + <value> <string encoding="cdata"><![CDATA[ + +<tal:block tal:condition="here/portal_skins/updateSkinCookie | nothing"\n + tal:define="dummy here/setupCurrentSkin;" />\n +<tal:block tal:define="response request/RESPONSE;\n + mtool here/portal_membership;\n + isAnon mtool/isAnonymousUser|nothing;">\n + <tal:block tal:condition="isAnon">\n + <tal:block tal:define="dummy python: response.expireCookie(\'__ac\', path=\'/\');\n + url python: \'%s?portal_status_message=%s\' % (request.get(\'came_from\'), here.getPortalObject().Localizer.translate(\'ui\', \'Login+and/or+password+is+incorrect.\'));\n + dummy python: response.redirect(url);"/>\n + </tal:block>\n + <tal:block tal:condition="not: isAnon">\n + <tal:block tal:define="came_from python: request.get(\'came_from\') or here.portal_url() + \'/view\';\n + dummy python: response.redirect(came_from);" />\n + </tal:block>\n +</tal:block> + +]]></string> </value> + </item> + <item> + <key> <string>content_type</string> </key> + <value> <string>text/html</string> </value> + </item> + <item> + <key> <string>expand</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>ERP5Ecommerce_logged_in</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Login Handler</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_loginStatusWidget.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_loginStatusWidget.xml index 1d4207d868..a32274dfa7 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_loginStatusWidget.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_loginStatusWidget.xml @@ -48,10 +48,41 @@ <key> <string>_text</string> </key> <value> <string encoding="cdata"><![CDATA[ - <legend>\n - <span tal:content="here/portal_membership/getAuthenticatedMember"/> \n - </legend>\n - +<tal:block tal:define="isAnon here/portal_membership/isAnonymousUser">\n +\n + <tal:block tal:condition="isAnon">\n + <h4>You\'re not logged in.</h4>\n + I have an account:\n + <form action="">\n + <table>\n + <tr>\n + <td>Username:</td>\n + <td><input name="__ac_name" size="10" tal:attributes="value python: request.get(\'__ac_name\') or \'\'"/></td>\n + </tr>\n + <tr>\n + <td>Password:</td>\n + <td><input type="password" name="__ac_password" size="10"/></td>\n + </tr>\n + <tr>\n + <td><input type="hidden" name="came_from" tal:attributes="value here/absolute_url"/>\n + <input type="hidden" name="__ac_persistent" value="1"/>\n + <input type="submit" value="Login" name="ERP5Ecommerce_logged_in:method"/>\n + </td>\n + </tr>\n + </table>\n + </form>\n + \n + <a href="ERP5Ecommerce_newCustomerAccountForm?editable_mode=1"> I want to create an account</a>\n + <br/>\n +\n + </tal:block>\n +\n + <tal:block tal:condition="not: isAnon">\n + <h4>Hello, <span tal:replace="here/portal_membership/getAuthenticatedMember"/></h4>\n + <a href="ERP5Ecommerce_logout"> Log out</a><br/>\n + </tal:block>\n +\n +</tal:block> ]]></string> </value> </item> @@ -69,7 +100,7 @@ </item> <item> <key> <string>title</string> </key> - <value> <string>Render login status</string> </value> + <value> <string>Login status widget</string> </value> </item> </dictionary> </pickle> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_logout.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_logout.xml new file mode 100644 index 0000000000..1223c7a726 --- /dev/null +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_logout.xml @@ -0,0 +1,286 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>Products.PythonScripts.PythonScript</string> + <string>PythonScript</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>Python_magic</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>Script_magic</string> </key> + <value> <int>3</int> </value> + </item> + <item> + <key> <string>_Access_contents_information_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Change_bindings_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Change_cache_settings_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Change_permissions_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Copy_or_Move_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Delete_objects_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Manage_WebDAV_Locks_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Manage_properties_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Take_ownership_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Undo_changes_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_View_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_View_management_screens_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_WebDAV_Lock_items_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_WebDAV_Unlock_items_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_WebDAV_access_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>__ac_local_roles__</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>_bind_names</string> </key> + <value> + <object> + <klass> + <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/> + </klass> + <tuple/> + <state> + <dictionary> + <item> + <key> <string>_asgns</string> </key> + <value> + <dictionary> + <item> + <key> <string>name_container</string> </key> + <value> <string>container</string> </value> + </item> + <item> + <key> <string>name_context</string> </key> + <value> <string>context</string> </value> + </item> + <item> + <key> <string>name_m_self</string> </key> + <value> <string>script</string> </value> + </item> + <item> + <key> <string>name_subpath</string> </key> + <value> <string>traverse_subpath</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </state> + </object> + </value> + </item> + <item> + <key> <string>_body</string> </key> + <value> <string>REQUEST = context.REQUEST\n +if REQUEST.has_key(\'portal_skin\'):\n + context.portal_skins.clearSkinCookie()\n +\n +REQUEST.RESPONSE.expireCookie(\'__ac\', path=\'/\')\n +\n +translateString = context.Base_translateString\n +context.Base_redirect(\'view\', \\\n + editable_mode=False, \\\n + keep_items={\'portal_status_message\': translateString("You have been logged out.", mapping = dict())})\n +</string> </value> + </item> + <item> + <key> <string>_code</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>_filepath</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>_params</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>_proxy_roles</string> </key> + <value> + <tuple/> + </value> + </item> + <item> + <key> <string>errors</string> </key> + <value> + <tuple/> + </value> + </item> + <item> + <key> <string>func_code</string> </key> + <value> + <object> + <klass> + <global name="FuncCode" module="Shared.DC.Scripts.Signature"/> + </klass> + <tuple/> + <state> + <dictionary> + <item> + <key> <string>co_argcount</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>co_varnames</string> </key> + <value> + <tuple> + <string>_getattr_</string> + <string>context</string> + <string>REQUEST</string> + <string>translateString</string> + <string>False</string> + <string>dict</string> + </tuple> + </value> + </item> + </dictionary> + </state> + </object> + </value> + </item> + <item> + <key> <string>func_defaults</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>ERP5Ecommerce_logout</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Logout handler</string> </value> + </item> + <item> + <key> <string>warnings</string> </key> + <value> + <tuple/> + </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm.xml index 6b1bdbf8c7..6c3e1428cd 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm.xml @@ -65,7 +65,6 @@ <string>right</string> <string>center</string> <string>bottom</string> - <string>hidden</string> </list> </value> </item> @@ -82,13 +81,13 @@ <item> <key> <string>center</string> </key> <value> - <list/> - </value> - </item> - <item> - <key> <string>hidden</string> </key> - <value> - <list/> + <list> + <string>my_bank_account_holder_name</string> + <string>my_bank_account_number</string> + <string>my_bank_code</string> + <string>my_stop_date</string> + <string>submit_register</string> + </list> </value> </item> <item> @@ -108,7 +107,6 @@ <string>my_reference</string> <string>my_password</string> <string>password_confirm</string> - <string>submit_register</string> </list> </value> </item> @@ -147,7 +145,7 @@ </item> <item> <key> <string>title</string> </key> - <value> <string>Register new customer account</string> </value> + <value> <string>New customer account</string> </value> </item> <item> <key> <string>unicode_mode</string> </key> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_viewAsShop/my_buy_quantity.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_bank_account_holder_name.xml similarity index 88% rename from bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_viewAsShop/my_buy_quantity.xml rename to bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_bank_account_holder_name.xml index 56efe9455a..c80e8bfbdb 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_viewAsShop/my_buy_quantity.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_bank_account_holder_name.xml @@ -5,7 +5,7 @@ <tuple> <tuple> <string>Products.Formulator.StandardFields</string> - <string>IntegerField</string> + <string>StringField</string> </tuple> <none/> </tuple> @@ -14,7 +14,7 @@ <dictionary> <item> <key> <string>id</string> </key> - <value> <string>my_buy_quantity</string> </value> + <value> <string>my_bank_account_holder_name</string> </value> </item> <item> <key> <string>message_values</string> </key> @@ -24,18 +24,14 @@ <key> <string>external_validator_failed</string> </key> <value> <string>The input failed the external validator.</string> </value> </item> - <item> - <key> <string>integer_out_of_range</string> </key> - <value> <string>The integer you entered was out of range.</string> </value> - </item> - <item> - <key> <string>not_integer</string> </key> - <value> <string>You did not enter an integer.</string> </value> - </item> <item> <key> <string>required_not_found</string> </key> <value> <string>Input is required but no input given.</string> </value> </item> + <item> + <key> <string>too_long</string> </key> + <value> <string>Too much input was given.</string> </value> + </item> </dictionary> </value> </item> @@ -75,10 +71,6 @@ <key> <string>enabled</string> </key> <value> <string></string> </value> </item> - <item> - <key> <string>end</string> </key> - <value> <string></string> </value> - </item> <item> <key> <string>external_validator</string> </key> <value> <string></string> </value> @@ -92,17 +84,25 @@ <value> <string></string> </value> </item> <item> - <key> <string>required</string> </key> + <key> <string>max_length</string> </key> <value> <string></string> </value> </item> <item> - <key> <string>start</string> </key> + <key> <string>required</string> </key> <value> <string></string> </value> </item> <item> <key> <string>title</string> </key> <value> <string></string> </value> </item> + <item> + <key> <string>truncate</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> <item> <key> <string>whitespace_preserve</string> </key> <value> <string></string> </value> @@ -146,10 +146,6 @@ <key> <string>enabled</string> </key> <value> <string></string> </value> </item> - <item> - <key> <string>end</string> </key> - <value> <string></string> </value> - </item> <item> <key> <string>external_validator</string> </key> <value> <string></string> </value> @@ -163,17 +159,25 @@ <value> <string></string> </value> </item> <item> - <key> <string>required</string> </key> + <key> <string>max_length</string> </key> <value> <string></string> </value> </item> <item> - <key> <string>start</string> </key> + <key> <string>required</string> </key> <value> <string></string> </value> </item> <item> <key> <string>title</string> </key> <value> <string></string> </value> </item> + <item> + <key> <string>truncate</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> <item> <key> <string>whitespace_preserve</string> </key> <value> <string></string> </value> @@ -195,7 +199,7 @@ </item> <item> <key> <string>default</string> </key> - <value> <string>1</string> </value> + <value> <string></string> </value> </item> <item> <key> <string>description</string> </key> @@ -207,7 +211,7 @@ </item> <item> <key> <string>display_width</string> </key> - <value> <int>3</int> </value> + <value> <int>20</int> </value> </item> <item> <key> <string>editable</string> </key> @@ -215,11 +219,7 @@ </item> <item> <key> <string>enabled</string> </key> - <value> <int>0</int> </value> - </item> - <item> - <key> <string>end</string> </key> - <value> <string></string> </value> + <value> <int>1</int> </value> </item> <item> <key> <string>external_validator</string> </key> @@ -234,16 +234,24 @@ <value> <int>0</int> </value> </item> <item> - <key> <string>required</string> </key> - <value> <int>0</int> </value> + <key> <string>max_length</string> </key> + <value> <string></string> </value> </item> <item> - <key> <string>start</string> </key> - <value> <string></string> </value> + <key> <string>required</string> </key> + <value> <int>1</int> </value> </item> <item> <key> <string>title</string> </key> - <value> <string>Quantity</string> </value> + <value> <string>Cardholder Name</string> </value> + </item> + <item> + <key> <string>truncate</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <int>0</int> </value> </item> <item> <key> <string>whitespace_preserve</string> </key> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_bank_account_number.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_bank_account_number.xml new file mode 100644 index 0000000000..921b183458 --- /dev/null +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_bank_account_number.xml @@ -0,0 +1,287 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.StandardFields</string> + <string>StringField</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>id</string> </key> + <value> <string>my_bank_account_number</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary> + <item> + <key> <string>external_validator_failed</string> </key> + <value> <string>The input failed the external validator.</string> </value> + </item> + <item> + <key> <string>required_not_found</string> </key> + <value> <string>Input is required but no input given.</string> </value> + </item> + <item> + <key> <string>too_long</string> </key> + <value> <string>Too much input was given.</string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_maxwidth</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_width</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_length</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>truncate</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_maxwidth</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_width</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_length</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>truncate</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_maxwidth</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_width</string> </key> + <value> <int>20</int> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> + </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>max_length</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Card number</string> </value> + </item> + <item> + <key> <string>truncate</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <int>0</int> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> + <record id="2" aka="AAAAAAAAAAI="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.MethodField</string> + <string>Method</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>method_name</string> </key> + <value> <string>ERP5Ecommerce_isValidCreditCardNumber</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_bank_code.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_bank_code.xml new file mode 100644 index 0000000000..3ca0056f54 --- /dev/null +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_bank_code.xml @@ -0,0 +1,265 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.StandardFields</string> + <string>RadioField</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>id</string> </key> + <value> <string>my_bank_code</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary> + <item> + <key> <string>external_validator_failed</string> </key> + <value> <string>The input failed the external validator.</string> </value> + </item> + <item> + <key> <string>required_not_found</string> </key> + <value> <string>Input is required but no input given.</string> </value> + </item> + <item> + <key> <string>unknown_selection</string> </key> + <value> <string>You selected an item that was not in the list.</string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>first_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>items</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>orientation</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>first_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>items</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>orientation</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>first_item</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>items</string> </key> + <value> + <list> + <tuple> + <string>Visa</string> + <string>Visa</string> + </tuple> + <tuple> + <string>Master</string> + <string>Master</string> + </tuple> + </list> + </value> + </item> + <item> + <key> <string>orientation</string> </key> + <value> <string>vertical</string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Credit card type</string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <int>0</int> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_default_email_text.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_default_email_text.xml index 0f753f3424..e30fe84e17 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_default_email_text.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_default_email_text.xml @@ -243,7 +243,7 @@ </item> <item> <key> <string>required</string> </key> - <value> <int>0</int> </value> + <value> <int>1</int> </value> </item> <item> <key> <string>title</string> </key> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_stop_date.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_stop_date.xml new file mode 100644 index 0000000000..12c399e35d --- /dev/null +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerAccountForm/my_stop_date.xml @@ -0,0 +1,2308 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.StandardFields</string> + <string>DateTimeField</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>id</string> </key> + <value> <string>my_stop_date</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary> + <item> + <key> <string>datetime_out_of_range</string> </key> + <value> <string>The date and time you entered were out of range.</string> </value> + </item> + <item> + <key> <string>external_validator_failed</string> </key> + <value> <string>The input failed the external validator.</string> </value> + </item> + <item> + <key> <string>not_datetime</string> </key> + <value> <string>You did not enter a valid date and time.</string> </value> + </item> + <item> + <key> <string>required_not_found</string> </key> + <value> <string>Input is required but no input given.</string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>allow_empty_time</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>ampm_time_style</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>date_only</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>date_separator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default_now</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>end_datetime</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden_day_is_last_day</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hide_day</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>input_order</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>input_style</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>start_datetime</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>time_separator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>sub_form</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>allow_empty_time</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>ampm_time_style</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>date_only</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>date_separator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default_now</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>end_datetime</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden_day_is_last_day</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hide_day</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>input_order</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>input_style</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>start_datetime</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>time_separator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>allow_empty_time</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>ampm_time_style</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>date_only</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>date_separator</string> </key> + <value> <string>/</string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>default_now</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>end_datetime</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>hidden_day_is_last_day</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>hide_day</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>input_order</string> </key> + <value> <string>ymd</string> </value> + </item> + <item> + <key> <string>input_style</string> </key> + <value> <string>list</string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>start_datetime</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>time_separator</string> </key> + <value> <string>:</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Credit card expire date</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> + <record id="2" aka="AAAAAAAAAAI="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.Form</string> + <string>BasicForm</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>action</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>encoding</string> </key> + <value> <string>UTF-8</string> </value> + </item> + <item> + <key> <string>enctype</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>fields</string> </key> + <value> + <dictionary> + <item> + <key> <string>ampm</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> + </value> + </item> + <item> + <key> <string>day</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent> + </value> + </item> + <item> + <key> <string>hour</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent> + </value> + </item> + <item> + <key> <string>minute</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAY=</string> </persistent> + </value> + </item> + <item> + <key> <string>month</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAc=</string> </persistent> + </value> + </item> + <item> + <key> <string>year</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAg=</string> </persistent> + </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>group_list</string> </key> + <value> + <list> + <string>Default</string> + <string>date</string> + <string>time</string> + </list> + </value> + </item> + <item> + <key> <string>groups</string> </key> + <value> + <dictionary> + <item> + <key> <string>Default</string> </key> + <value> + <list/> + </value> + </item> + <item> + <key> <string>date</string> </key> + <value> + <list> + <string>year</string> + <string>month</string> + <string>day</string> + </list> + </value> + </item> + <item> + <key> <string>time</string> </key> + <value> + <list> + <string>hour</string> + <string>minute</string> + <string>ampm</string> + </list> + </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>method</string> </key> + <value> <string>POST</string> </value> + </item> + <item> + <key> <string>name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>stored_encoding</string> </key> + <value> <string>ISO-8859-1</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Basic Form</string> </value> + </item> + <item> + <key> <string>unicode_mode</string> </key> + <value> <int>0</int> </value> + </item> + </dictionary> + </pickle> + </record> + <record id="3" aka="AAAAAAAAAAM="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.StandardFields</string> + <string>ListField</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>id</string> </key> + <value> <string>ampm</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary> + <item> + <key> <string>external_validator_failed</string> </key> + <value> <string>The input failed the external validator.</string> </value> + </item> + <item> + <key> <string>required_not_found</string> </key> + <value> <string>Input is required but no input given.</string> </value> + </item> + <item> + <key> <string>unknown_selection</string> </key> + <value> <string>You selected an item that was not in the list.</string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>first_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>items</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>size</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>first_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>items</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>size</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string>am</string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>first_item</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>items</string> </key> + <value> + <list> + <tuple> + <string>am</string> + <string>am</string> + </tuple> + <tuple> + <string>pm</string> + <string>pm</string> + </tuple> + </list> + </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>size</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>am/pm</string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <int>0</int> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> + <record id="4" aka="AAAAAAAAAAQ="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.StandardFields</string> + <string>ListField</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>id</string> </key> + <value> <string>day</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary> + <item> + <key> <string>external_validator_failed</string> </key> + <value> <string>The input failed the external validator.</string> </value> + </item> + <item> + <key> <string>required_not_found</string> </key> + <value> <string>Input is required but no input given.</string> </value> + </item> + <item> + <key> <string>unknown_selection</string> </key> + <value> <string>You selected an item that was not in the list.</string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>first_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>items</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>size</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>first_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>items</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>size</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>first_item</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>items</string> </key> + <value> + <list> + <tuple> + <string>-</string> +<string></string> + </tuple> + <tuple> + <string>01</string> + <string>01</string> + </tuple> + <tuple> + <string>02</string> + <string>02</string> + </tuple> + <tuple> + <string>03</string> + <string>03</string> + </tuple> + <tuple> + <string>04</string> + <string>04</string> + </tuple> + <tuple> + <string>05</string> + <string>05</string> + </tuple> + <tuple> + <string>06</string> + <string>06</string> + </tuple> + <tuple> + <string>07</string> + <string>07</string> + </tuple> + <tuple> + <string>08</string> + <string>08</string> + </tuple> + <tuple> + <string>09</string> + <string>09</string> + </tuple> + <tuple> + <string>10</string> + <string>10</string> + </tuple> + <tuple> + <string>11</string> + <string>11</string> + </tuple> + <tuple> + <string>12</string> + <string>12</string> + </tuple> + <tuple> + <string>13</string> + <string>13</string> + </tuple> + <tuple> + <string>14</string> + <string>14</string> + </tuple> + <tuple> + <string>15</string> + <string>15</string> + </tuple> + <tuple> + <string>16</string> + <string>16</string> + </tuple> + <tuple> + <string>17</string> + <string>17</string> + </tuple> + <tuple> + <string>18</string> + <string>18</string> + </tuple> + <tuple> + <string>19</string> + <string>19</string> + </tuple> + <tuple> + <string>20</string> + <string>20</string> + </tuple> + <tuple> + <string>21</string> + <string>21</string> + </tuple> + <tuple> + <string>22</string> + <string>22</string> + </tuple> + <tuple> + <string>23</string> + <string>23</string> + </tuple> + <tuple> + <string>24</string> + <string>24</string> + </tuple> + <tuple> + <string>25</string> + <string>25</string> + </tuple> + <tuple> + <string>26</string> + <string>26</string> + </tuple> + <tuple> + <string>27</string> + <string>27</string> + </tuple> + <tuple> + <string>28</string> + <string>28</string> + </tuple> + <tuple> + <string>29</string> + <string>29</string> + </tuple> + <tuple> + <string>30</string> + <string>30</string> + </tuple> + <tuple> + <string>31</string> + <string>31</string> + </tuple> + </list> + </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>size</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Day</string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <int>0</int> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> + <record id="5" aka="AAAAAAAAAAU="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.StandardFields</string> + <string>IntegerField</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>id</string> </key> + <value> <string>hour</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary> + <item> + <key> <string>external_validator_failed</string> </key> + <value> <string>The input failed the external validator.</string> </value> + </item> + <item> + <key> <string>integer_out_of_range</string> </key> + <value> <string>The integer you entered was out of range.</string> </value> + </item> + <item> + <key> <string>not_integer</string> </key> + <value> <string>You did not enter an integer.</string> </value> + </item> + <item> + <key> <string>required_not_found</string> </key> + <value> <string>Input is required but no input given.</string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_maxwidth</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_width</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>end</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>start</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_maxwidth</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_width</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>end</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>start</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_maxwidth</string> </key> + <value> <int>2</int> </value> + </item> + <item> + <key> <string>display_width</string> </key> + <value> <int>2</int> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>end</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>start</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Hour</string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <int>0</int> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> + <record id="6" aka="AAAAAAAAAAY="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.StandardFields</string> + <string>IntegerField</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>id</string> </key> + <value> <string>minute</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary> + <item> + <key> <string>external_validator_failed</string> </key> + <value> <string>The input failed the external validator.</string> </value> + </item> + <item> + <key> <string>integer_out_of_range</string> </key> + <value> <string>The integer you entered was out of range.</string> </value> + </item> + <item> + <key> <string>not_integer</string> </key> + <value> <string>You did not enter an integer.</string> </value> + </item> + <item> + <key> <string>required_not_found</string> </key> + <value> <string>Input is required but no input given.</string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_maxwidth</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_width</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>end</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>start</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_maxwidth</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_width</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>end</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>start</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_maxwidth</string> </key> + <value> <int>2</int> </value> + </item> + <item> + <key> <string>display_width</string> </key> + <value> <int>2</int> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>end</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>start</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Minute</string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <int>0</int> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> + <record id="7" aka="AAAAAAAAAAc="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.StandardFields</string> + <string>ListField</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>id</string> </key> + <value> <string>month</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary> + <item> + <key> <string>external_validator_failed</string> </key> + <value> <string>The input failed the external validator.</string> </value> + </item> + <item> + <key> <string>required_not_found</string> </key> + <value> <string>Input is required but no input given.</string> </value> + </item> + <item> + <key> <string>unknown_selection</string> </key> + <value> <string>You selected an item that was not in the list.</string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>first_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>items</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>size</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>first_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>items</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>size</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>first_item</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>items</string> </key> + <value> + <list> + <tuple> + <string>-</string> +<string></string> + </tuple> + <tuple> + <string>01</string> + <string>01</string> + </tuple> + <tuple> + <string>02</string> + <string>02</string> + </tuple> + <tuple> + <string>03</string> + <string>03</string> + </tuple> + <tuple> + <string>04</string> + <string>04</string> + </tuple> + <tuple> + <string>05</string> + <string>05</string> + </tuple> + <tuple> + <string>06</string> + <string>06</string> + </tuple> + <tuple> + <string>07</string> + <string>07</string> + </tuple> + <tuple> + <string>08</string> + <string>08</string> + </tuple> + <tuple> + <string>09</string> + <string>09</string> + </tuple> + <tuple> + <string>10</string> + <string>10</string> + </tuple> + <tuple> + <string>11</string> + <string>11</string> + </tuple> + <tuple> + <string>12</string> + <string>12</string> + </tuple> + </list> + </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>size</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Month</string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <int>0</int> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> + <record id="8" aka="AAAAAAAAAAg="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.StandardFields</string> + <string>ListField</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>id</string> </key> + <value> <string>year</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary> + <item> + <key> <string>external_validator_failed</string> </key> + <value> <string>The input failed the external validator.</string> </value> + </item> + <item> + <key> <string>required_not_found</string> </key> + <value> <string>Input is required but no input given.</string> </value> + </item> + <item> + <key> <string>unknown_selection</string> </key> + <value> <string>You selected an item that was not in the list.</string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>first_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>items</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAk=</string> </persistent> + </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>size</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>first_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>items</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>size</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra_item</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>first_item</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>items</string> </key> + <value> + <list> + <tuple> + <string>-</string> +<string></string> + </tuple> + <tuple> + <string>2000</string> + <string>2000</string> + </tuple> + <tuple> + <string>2001</string> + <string>2001</string> + </tuple> + <tuple> + <string>2002</string> + <string>2002</string> + </tuple> + <tuple> + <string>2003</string> + <string>2003</string> + </tuple> + <tuple> + <string>2004</string> + <string>2004</string> + </tuple> + <tuple> + <string>2005</string> + <string>2005</string> + </tuple> + <tuple> + <string>2006</string> + <string>2006</string> + </tuple> + <tuple> + <string>2007</string> + <string>2007</string> + </tuple> + <tuple> + <string>2008</string> + <string>2008</string> + </tuple> + <tuple> + <string>2009</string> + <string>2009</string> + </tuple> + </list> + </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>size</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Year</string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <int>0</int> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> + <record id="9" aka="AAAAAAAAAAk="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.MethodField</string> + <string>BoundMethod</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>method_name</string> </key> + <value> <string>override_year_items</string> </value> + </item> + <item> + <key> <string>object</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAE=</string> </persistent> + </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newShoppingCart.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newShoppingCart.xml index f5e6fa9df4..619e7fe917 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newShoppingCart.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newShoppingCart.xml @@ -68,12 +68,7 @@ </item> <item> <key> <string>_body</string> </key> - <value> <string>from Products.ERP5Type.Document import newTempOrder\n -request = context.REQUEST\n -session_id = request.get(\'session_id\', None)\n -\n -order = newTempOrder(context.getPortalObject(), id = session_id, title = \'order\')\n -return order\n + <value> <string>return value\n </string> </value> </item> <item> @@ -90,7 +85,15 @@ return order\n </item> <item> <key> <string>_params</string> </key> - <value> <string></string> </value> + <value> <string>value</string> </value> + </item> + <item> + <key> <string>_proxy_roles</string> </key> + <value> + <tuple> + <string>Manager</string> + </tuple> + </value> </item> <item> <key> <string>errors</string> </key> @@ -110,20 +113,13 @@ return order\n <dictionary> <item> <key> <string>co_argcount</string> </key> - <value> <int>0</int> </value> + <value> <int>1</int> </value> </item> <item> <key> <string>co_varnames</string> </key> <value> <tuple> - <string>Products.ERP5Type.Document</string> - <string>newTempOrder</string> - <string>_getattr_</string> - <string>context</string> - <string>request</string> - <string>None</string> - <string>session_id</string> - <string>order</string> + <string>value</string> </tuple> </value> </item> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_renderSaleOrderAsShoppingCart.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_renderSaleOrderAsShoppingCart.xml index ed9bcc0c71..4eb3a469dd 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_renderSaleOrderAsShoppingCart.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_renderSaleOrderAsShoppingCart.xml @@ -48,12 +48,14 @@ <key> <string>_text</string> </key> <value> <string encoding="cdata"><![CDATA[ -<div>\n <tal:block tal:define="shopping_cart_items here/ERP5Ecommerce_getShoppingCartItemList;\n empty_cart python: len(shopping_cart_items)==0;\n - website here/getWebSiteValue;">\n - \n - <p tal:condition = "empty_cart"> Your shopping cart is empty. </p>\n + website here/getWebSiteValue;\n + confirm_mode python: bool(options.get(\'confirm_mode\', False))">\n +\n + <tal:block tal:condition = "empty_cart"> \n + <h3>Your shopping cart is empty.</h3>\n + </tal:block>\n \n <form action="" tal:condition = "not: empty_cart">\n <table>\n @@ -64,16 +66,17 @@ </thead>\n <tbody> \n <tal:block tal:repeat="order_line shopping_cart_items">\n - <tr tal:define="resource python: website.restrictedTraverse(order_line.getResource());\n - quantity python: int(order_line.getTotalQuantity());\n + <tr tal:define="resource python: website.restrictedTraverse(order_line[\'resource\']);\n + quantity python: int(order_line[\'quantity\']);\n price python: resource.getPrice();\n - order_line_id order_line/getId;\n + order_line_id python: shopping_cart_items.index(order_line);\n global currency python: here.restrictedTraverse(resource.getSupplyLinePriceCurrency()).getTitle()"> \n <td>\n <a href="" tal:attributes="href resource/absolute_url">\n - <b tal:content="order_line/getTitle"/> <br/>\n - <a tal:attributes="href python: \'%s?field_my_order_line_id=%s\' \n - %(website.SaleOrder_deleteShoppingCartItem.absolute_url(), \n + <b tal:content="resource/getTitle"/> <br/>\n + <a tal:condition="not: confirm_mode"\n + tal:attributes="href python: \'%s?field_my_order_line_id=%s\' \n + %(website.ERP5Ecommerce_deleteShoppingCartItem.absolute_url(), \n order_line_id)"> \n Delete \n </a>\n @@ -83,36 +86,27 @@ <span tal:replace="price"/> <span tal:replace="currency"/>\n </td>\n <td>\n - <input type="input" \n + <input tal:condition="not: confirm_mode"\n + type="input" \n name="field_my_buy_quantity"\n size="2"\n tal:attributes ="value quantity"/>\n + <span tal:condition="confirm_mode" tal:content="quantity"/>\n </td>\n </tr>\n </tal:block>\n - <tr>\n - <td></td>\n - <td></td>\n - <td>\n - <br/>\n - <input type="submit" name="SaleOrder_update:method" value="Update"/>\n - </td>\n </tbody>\n </table>\n </form>\n \n <tal:block tal:condition = "not: empty_cart">\n - <br/><br/>\n + <br/>\n <b>Total price: <span tal:replace="python: here.ERP5Ecommerce_getTotalPriceForShoppingCart()"/> \n <span tal:replace="currency"/>\n - </b> <br/>\n - <form action="">\n - <input type="submit" value="Proceed to checkout" name="SaleOrder_confirmShopping:method">\n - </form> \n -\n + </b> \n + <br/>\n </tal:block>\n -</tal:block>\n -</div> +</tal:block> ]]></string> </value> </item> @@ -130,7 +124,7 @@ </item> <item> <key> <string>title</string> </key> - <value> <string>Render custom cart content</string> </value> + <value> <string>Soppingcart content widget</string> </value> </item> </dictionary> </pickle> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_shoppingCartWidget.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_shoppingCartWidget.xml index 717d16b3be..289760c778 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_shoppingCartWidget.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_shoppingCartWidget.xml @@ -48,21 +48,18 @@ <key> <string>_text</string> </key> <value> <string encoding="cdata"><![CDATA[ -<div>\n <tal:block tal:define="shopping_cart_items here/ERP5Ecommerce_getShoppingCartItemList;\n empty_cart python: len(shopping_cart_items)==0;\n website here/getWebSiteValue;">\n -\n - <legend>My shopping cart</legend>\n \n <ul tal:repeat="order_line shopping_cart_items">\n - <li tal:define="resource python: website.restrictedTraverse(order_line.getResource());\n - quantity python: int(order_line.getTotalQuantity());\n + <li tal:define="resource python: website.restrictedTraverse(order_line[\'resource\']);\n + quantity python: int(order_line[\'quantity\']);\n price python: resource.getPrice();\n global currency python: here.restrictedTraverse(resource.getSupplyLinePriceCurrency()).getTitle()"> \n \n <a href="" tal:attributes="href resource/absolute_url">\n - <b tal:content="order_line/getTitle"/> \n + <b tal:content="resource/getTitle"/> \n </a>\n <br/>\n Price: <span tal:replace="price"/> <span tal:replace="currency"/>\n @@ -75,15 +72,12 @@ <br/>\n <b>Total price: <span tal:replace="python: here.ERP5Ecommerce_getTotalPriceForShoppingCart()"/> \n <span tal:replace="currency"/>\n - </b>\n -\n - <input type="submit" value="View Shopping Cart" name="SaleOrder_viewAsWeb:method"/>\n -\n - <input type="submit" value="Proceed to checkout" name="SaleOrder_confirmShopping:method"/>\n -\n + </b><br/>\n + <a href="SaleOrder_viewAsWeb?editable_mode=1">Edit Shopping Cart</a><br/>\n + <a href="SaleOrder_confirmShopping?editable_mode=1">Proceed to checkout</a>\n </tal:block>\n -</tal:block>\n -</div> +\n +</tal:block> ]]></string> </value> </item> @@ -101,7 +95,7 @@ </item> <item> <key> <string>title</string> </key> - <value> <string>Render cart portlet</string> </value> + <value> <string>Mini shopping cart widget</string> </value> </item> </dictionary> </pickle> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerForm.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_thankyou.xml similarity index 73% rename from bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerForm.xml rename to bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_thankyou.xml index 6ae7161113..f269163fd7 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_newCustomerForm.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_thankyou.xml @@ -65,7 +65,6 @@ <string>right</string> <string>center</string> <string>bottom</string> - <string>hidden</string> </list> </value> </item> @@ -74,45 +73,27 @@ <value> <dictionary> <item> - <key> <string>bottom</string> </key> + <key> <string>bottom</string> </key> <value> <list/> </value> </item> <item> - <key> <string>center</string> </key> + <key> <string>center</string> </key> <value> <list/> </value> </item> <item> - <key> <string>hidden</string> </key> - <value> - <list/> - </value> - </item> - <item> - <key> <string>left</string> </key> + <key> <string>left</string> </key> <value> <list> - <string>Title</string> - <string>first_name</string> - <string>last_name</string> - <string>email</string> - <string>telephone</string> - <string>fax</string> - <string>address</string> - <string>zip</string> - <string>city</string> - <string>country</string> - <string>password</string> - <string>repeat_password</string> - <string>submit_register</string> + <string>my_thankyou</string> </list> </value> </item> <item> - <key> <string>right</string> </key> + <key> <string>right</string> </key> <value> <list/> </value> @@ -122,7 +103,7 @@ </item> <item> <key> <string>id</string> </key> - <value> <string>ERP5Ecommerce_newCustomerForm</string> </value> + <value> <string>ERP5Ecommerce_thankyou</string> </value> </item> <item> <key> <string>method</string> </key> @@ -130,7 +111,7 @@ </item> <item> <key> <string>name</string> </key> - <value> <string>newCustomerForm</string> </value> + <value> <string>Product_view</string> </value> </item> <item> <key> <string>pt</string> </key> @@ -146,7 +127,7 @@ </item> <item> <key> <string>title</string> </key> - <value> <string>Register New Customer</string> </value> + <value> <string>Thank you</string> </value> </item> <item> <key> <string>unicode_mode</string> </key> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_thankyou/my_thankyou.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_thankyou/my_thankyou.xml new file mode 100644 index 0000000000..ebdc418887 --- /dev/null +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_thankyou/my_thankyou.xml @@ -0,0 +1,149 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.StandardFields</string> + <string>LabelField</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>id</string> </key> + <value> <string>my_thankyou</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary/> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string encoding="cdata"><![CDATA[ + +<h3>Thank you for using our online shop! Your order will be processed now.</h3> + +]]></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Thank you</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_update.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_updateShoppingCart.xml similarity index 88% rename from bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_update.xml rename to bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_updateShoppingCart.xml index 3ef4bd7278..0add2bab0f 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_update.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/ERP5Ecommerce_updateShoppingCart.xml @@ -206,11 +206,10 @@ <key> <string>_body</string> </key> <value> <string encoding="cdata"><![CDATA[ -request = context.REQUEST\n -website = context.getWebSiteValue()\n -\n +translateString = context.Base_translateString\n shopping_cart_items = context.ERP5Ecommerce_getShoppingCartItemList()\n -quantity = request.get(\'field_my_buy_quantity\', None)\n +shopping_cart = shopping_cart_items\n +quantity = field_my_buy_quantity \n \n ## when we have one item in shoppping cart we get \n ## quantity as a string rather as a list\n @@ -221,15 +220,19 @@ counter = 0\n for order_line in shopping_cart_items:\n new_quantity = int(quantity[counter])\n if new_quantity>=1:\n - order_line.setQuantity(new_quantity)\n + order_line[\'quantity\'] = new_quantity\n else:\n ## remove it from shopping cart\n - shopping_cart = context.ERP5Ecommerce_getShoppingCart()\n - shopping_cart.manage_delObjects(order_line.getId())\n + del shopping_cart_items[counter]\n counter += 1\n \n -redirect_url = website.SaleOrder_viewAsWeb.absolute_url()\n -request.RESPONSE.redirect(redirect_url + \'?portal_status_message=Your cart content was updated.\')\n +## update back cache so we have consistent results between cache plugins\n +context.ERP5Ecommerce_getShoppingCart(action=\'update\', \\\n + new_shopping_cart = shopping_cart)\n +\n +context.Base_redirect(\'SaleOrder_viewAsWeb\', \\\n + editable_mode=True, \\\n + keep_items={\'portal_status_message\': translateString("Your cart content updated.", mapping = dict())})\n ]]></string> </value> @@ -248,7 +251,7 @@ request.RESPONSE.redirect(redirect_url + \'?portal_status_message=Your cart cont </item> <item> <key> <string>_params</string> </key> - <value> <string></string> </value> + <value> <string>field_my_buy_quantity=None</string> </value> </item> <item> <key> <string>_proxy_roles</string> </key> @@ -277,18 +280,18 @@ request.RESPONSE.redirect(redirect_url + \'?portal_status_message=Your cart cont <dictionary> <item> <key> <string>co_argcount</string> </key> - <value> <int>0</int> </value> + <value> <int>1</int> </value> </item> <item> <key> <string>co_varnames</string> </key> <value> <tuple> + <string>field_my_buy_quantity</string> <string>_getattr_</string> <string>context</string> - <string>request</string> - <string>website</string> + <string>translateString</string> <string>shopping_cart_items</string> - <string>None</string> + <string>shopping_cart</string> <string>quantity</string> <string>isinstance</string> <string>str</string> @@ -298,8 +301,9 @@ request.RESPONSE.redirect(redirect_url + \'?portal_status_message=Your cart cont <string>int</string> <string>_getitem_</string> <string>new_quantity</string> - <string>shopping_cart</string> - <string>redirect_url</string> + <string>_write_</string> + <string>True</string> + <string>dict</string> </tuple> </value> </item> @@ -311,16 +315,18 @@ request.RESPONSE.redirect(redirect_url + \'?portal_status_message=Your cart cont <item> <key> <string>func_defaults</string> </key> <value> - <none/> + <tuple> + <none/> + </tuple> </value> </item> <item> <key> <string>id</string> </key> - <value> <string>SaleOrder_update</string> </value> + <value> <string>ERP5Ecommerce_updateShoppingCart</string> </value> </item> <item> <key> <string>title</string> </key> - <value> <string>Update Sale Order</string> </value> + <value> <string>Update shopping cart</string> </value> </item> <item> <key> <string>warnings</string> </key> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_viewAsShop.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_viewAsShop.xml index 731d0e9700..b8e0c4d8ce 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_viewAsShop.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_viewAsShop.xml @@ -90,8 +90,8 @@ <list> <string>my_title</string> <string>my_description</string> + <string>my_price</string> <string>my_buy_button</string> - <string>my_buy_quantity</string> </list> </value> </item> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_viewAsShop/my_buy_button.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_viewAsShop/my_buy_button.xml index 13a2196f95..4d3997561c 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_viewAsShop/my_buy_button.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_viewAsShop/my_buy_button.xml @@ -4,8 +4,8 @@ <pickle> <tuple> <tuple> - <string>Products.ERP5Form.EditorField</string> - <string>EditorField</string> + <string>Products.Formulator.StandardFields</string> + <string>LabelField</string> </tuple> <none/> </tuple> @@ -19,38 +19,13 @@ <item> <key> <string>message_values</string> </key> <value> - <dictionary> - <item> - <key> <string>external_validator_failed</string> </key> - <value> <string>The input failed the external validator.</string> </value> - </item> - <item> - <key> <string>line_too_long</string> </key> - <value> <string>A line was too long.</string> </value> - </item> - <item> - <key> <string>required_not_found</string> </key> - <value> <string>Input is required but no input given.</string> </value> - </item> - <item> - <key> <string>too_long</string> </key> - <value> <string>You entered too many characters.</string> </value> - </item> - <item> - <key> <string>too_many_lines</string> </key> - <value> <string>You entered too many lines.</string> </value> - </item> - </dictionary> + <dictionary/> </value> </item> <item> <key> <string>overrides</string> </key> <value> <dictionary> - <item> - <key> <string>alternate_name</string> </key> - <value> <string></string> </value> - </item> <item> <key> <string>css_class</string> </key> <value> <string></string> </value> @@ -71,54 +46,18 @@ <key> <string>enabled</string> </key> <value> <string></string> </value> </item> - <item> - <key> <string>external_validator</string> </key> - <value> <string></string> </value> - </item> <item> <key> <string>extra</string> </key> <value> <string></string> </value> </item> - <item> - <key> <string>height</string> </key> - <value> <string></string> </value> - </item> <item> <key> <string>hidden</string> </key> <value> <string></string> </value> </item> - <item> - <key> <string>max_length</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>max_linelength</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>max_lines</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>required</string> </key> - <value> <string></string> </value> - </item> <item> <key> <string>title</string> </key> <value> <string></string> </value> </item> - <item> - <key> <string>unicode</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>whitespace_preserve</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>width</string> </key> - <value> <string></string> </value> - </item> </dictionary> </value> </item> @@ -126,17 +65,15 @@ <key> <string>tales</string> </key> <value> <dictionary> - <item> - <key> <string>alternate_name</string> </key> - <value> <string></string> </value> - </item> <item> <key> <string>css_class</string> </key> <value> <string></string> </value> </item> <item> <key> <string>default</string> </key> - <value> <string></string> </value> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> + </value> </item> <item> <key> <string>description</string> </key> @@ -150,54 +87,18 @@ <key> <string>enabled</string> </key> <value> <string></string> </value> </item> - <item> - <key> <string>external_validator</string> </key> - <value> <string></string> </value> - </item> <item> <key> <string>extra</string> </key> <value> <string></string> </value> </item> - <item> - <key> <string>height</string> </key> - <value> <string></string> </value> - </item> <item> <key> <string>hidden</string> </key> <value> <string></string> </value> </item> - <item> - <key> <string>max_length</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>max_linelength</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>max_lines</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>required</string> </key> - <value> <string></string> </value> - </item> <item> <key> <string>title</string> </key> <value> <string></string> </value> </item> - <item> - <key> <string>unicode</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>whitespace_preserve</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>width</string> </key> - <value> <string></string> </value> - </item> </dictionary> </value> </item> @@ -205,36 +106,13 @@ <key> <string>values</string> </key> <value> <dictionary> - <item> - <key> <string>alternate_name</string> </key> - <value> <string></string> </value> - </item> <item> <key> <string>css_class</string> </key> <value> <string></string> </value> </item> <item> <key> <string>default</string> </key> - <value> <string encoding="cdata"><![CDATA[ - -<select name="field_my_buy_quantity" >\n -<option value="1">1 </option>\n -<option\n -value="2">2 </option>\n -<option\n -value="3">3 </option>\n -<option\n -value="4">4 </option>\n -<option\n -value="5">5 </option>\n -<option\n -value="6">6 </option>\n -</select>\n -<button type="submit"\n -class="save" title="Confirm"\n -name="Product_addToShoppingCart:method">Add to Shopping Cart</button> - -]]></string> </value> + <value> <string></string> </value> </item> <item> <key> <string>description</string> </key> @@ -242,64 +120,47 @@ name="Product_addToShoppingCart:method">Add to Shopping Cart</button> </item> <item> <key> <string>editable</string> </key> - <value> <int>0</int> </value> + <value> <int>1</int> </value> </item> <item> <key> <string>enabled</string> </key> <value> <int>1</int> </value> </item> - <item> - <key> <string>external_validator</string> </key> - <value> <string></string> </value> - </item> <item> <key> <string>extra</string> </key> <value> <string></string> </value> </item> - <item> - <key> <string>height</string> </key> - <value> <int>50</int> </value> - </item> <item> <key> <string>hidden</string> </key> <value> <int>0</int> </value> </item> - <item> - <key> <string>max_length</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>max_linelength</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>max_lines</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>required</string> </key> - <value> <int>0</int> </value> - </item> <item> <key> <string>title</string> </key> <value> <string>Add to cart</string> </value> </item> - <item> - <key> <string>unicode</string> </key> - <value> <int>0</int> </value> - </item> - <item> - <key> <string>whitespace_preserve</string> </key> - <value> <int>0</int> </value> - </item> - <item> - <key> <string>width</string> </key> - <value> <int>40</int> </value> - </item> </dictionary> </value> </item> </dictionary> </pickle> </record> + <record id="2" aka="AAAAAAAAAAI="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.TALESField</string> + <string>TALESMethod</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>_text</string> </key> + <value> <string>here/ERP5Ecommerce_addToShoppingCartWidget</string> </value> + </item> + </dictionary> + </pickle> + </record> </ZopeData> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_viewAsShop/my_price.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_viewAsShop/my_price.xml new file mode 100644 index 0000000000..b066eb9461 --- /dev/null +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/Product_viewAsShop/my_price.xml @@ -0,0 +1,287 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.StandardFields</string> + <string>StringField</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>id</string> </key> + <value> <string>my_price</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary> + <item> + <key> <string>external_validator_failed</string> </key> + <value> <string>The input failed the external validator.</string> </value> + </item> + <item> + <key> <string>required_not_found</string> </key> + <value> <string>Input is required but no input given.</string> </value> + </item> + <item> + <key> <string>too_long</string> </key> + <value> <string>Too much input was given.</string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_maxwidth</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_width</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_length</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>truncate</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> + </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_maxwidth</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_width</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_length</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>truncate</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_maxwidth</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>display_width</string> </key> + <value> <int>20</int> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>max_length</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Price</string> </value> + </item> + <item> + <key> <string>truncate</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <int>0</int> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> + <record id="2" aka="AAAAAAAAAAI="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.TALESField</string> + <string>TALESMethod</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>_text</string> </key> + <value> <string>python: \'%s %s\' %(here.getPrice(), here.restrictedTraverse(here.getSupplyLinePriceCurrency()).getTitle())</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_confirmShopping.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_confirmShopping.xml index 616d139d59..c23e7dc0f1 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_confirmShopping.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_confirmShopping.xml @@ -204,41 +204,21 @@ </item> <item> <key> <string>_body</string> </key> - <value> <string encoding="cdata"><![CDATA[ - -user_id = context.portal_membership.getAuthenticatedMember().getId()\n -request = context.REQUEST\n -website = context.getWebSiteValue()\n + <value> <string>request = context.REQUEST\n +isAnon = context.portal_membership.isAnonymousUser()\n +translateString = context.Base_translateString\n \n -## determine customer if not such create an account\n -if context.portal_membership.isAnonymousUser():\n - redirect_url = website.ERP5Ecommerce_newCustomerAccountForm.absolute_url()\n - request.RESPONSE.redirect(redirect_url + \'?editable_mode=1&portal_status_message=You need to create an account.\')\n +if isAnon:\n + ## create first an account for user\n + context.Base_redirect(\'ERP5Ecommerce_newCustomerAccountForm\', \\\n + editable_mode=True, \\\n + keep_items={\'portal_status_message\': translateString("You need to create an account. If you already have please use it to login.", mapping = dict())})\n return\n -\n -#context.debug(context.portal_membership.isAnonymousUser())\n -\n -shopping_cart = context.ERP5Ecommerce_getShoppingCart()\n -\n -sale_order = context.ERP5Ecommerce_createSaleOrderFromShoppingCart(shopping_cart)\n -context.debug("aaaaaaaaaaaaaaaa")\n -\n -## clean up shopping cart\n -context.ERP5Ecommerce_getShoppingCart(reset=True)\n -\n -return \n -\n -## set as sale order owner\n -shopping_cart_persistent.setDestination("person_module/"+user_id_number)\n -\n -\n -## redirect\n -redirect_url=context.REQUEST[\'HTTP_REFERER\']\n -redirect_url=redirect_url[:redirect_url.index("/portal_sessions/shoppingcart")]+"/thank-you"\n -context.REQUEST.RESPONSE.redirect(redirect_url)\n - - -]]></string> </value> +else:\n + ## redirect to final confirmation form\n + context.Base_redirect(\'SaleOrder_viewAsWebConfirm\',\n + editable_mode=True)\n +</string> </value> </item> <item> <key> <string>_code</string> </key> @@ -291,16 +271,11 @@ context.REQUEST.RESPONSE.redirect(redirect_url)\n <tuple> <string>_getattr_</string> <string>context</string> - <string>user_id</string> <string>request</string> - <string>website</string> - <string>redirect_url</string> - <string>shopping_cart</string> - <string>sale_order</string> + <string>isAnon</string> + <string>translateString</string> <string>True</string> - <string>shopping_cart_persistent</string> - <string>user_id_number</string> - <string>_getitem_</string> + <string>dict</string> </tuple> </value> </item> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_finalizeShopping.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_finalizeShopping.xml new file mode 100644 index 0000000000..3aa0b150c1 --- /dev/null +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_finalizeShopping.xml @@ -0,0 +1,318 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>Products.PythonScripts.PythonScript</string> + <string>PythonScript</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>Python_magic</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>Script_magic</string> </key> + <value> <int>3</int> </value> + </item> + <item> + <key> <string>_Change_Python_Scripts_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Change_bindings_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Change_cache_settings_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Change_permissions_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Change_proxy_roles_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Copy_or_Move_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Delete_objects_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Manage_WebDAV_Locks_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Manage_properties_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Take_ownership_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_Undo_changes_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_View_History_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_View_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_View_management_screens_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_WebDAV_Lock_items_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_WebDAV_Unlock_items_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>_WebDAV_access_Permission</string> </key> + <value> + <list> + <string>Manager</string> + </list> + </value> + </item> + <item> + <key> <string>__ac_local_roles__</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>_bind_names</string> </key> + <value> + <object> + <klass> + <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/> + </klass> + <tuple/> + <state> + <dictionary> + <item> + <key> <string>_asgns</string> </key> + <value> + <dictionary> + <item> + <key> <string>name_container</string> </key> + <value> <string>container</string> </value> + </item> + <item> + <key> <string>name_context</string> </key> + <value> <string>context</string> </value> + </item> + <item> + <key> <string>name_m_self</string> </key> + <value> <string>script</string> </value> + </item> + <item> + <key> <string>name_subpath</string> </key> + <value> <string>traverse_subpath</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </state> + </object> + </value> + </item> + <item> + <key> <string>_body</string> </key> + <value> <string>request = context.REQUEST\n +isAnon = context.portal_membership.isAnonymousUser()\n +translateString = context.Base_translateString\n +\n +if isAnon:\n + ## create first an account for user\n + context.Base_redirect(\'ERP5Ecommerce_newCustomerAccountForm\', \\\n + editable_mode=True, \\\n + keep_items={\'portal_status_message\': translateString("You need to create an account.", mapping = dict())})\n + return\n +\n +shopping_cart = context.ERP5Ecommerce_getShoppingCart()\n +sale_order = context.ERP5Ecommerce_createSaleOrderFromShoppingCart(shopping_cart)\n +\n +## clean up shopping cart\n +context.ERP5Ecommerce_getShoppingCart(action=\'reset\')\n +\n +context.Base_redirect(\'ERP5Ecommerce_thankyou\', \\\n + editable_mode=False)\n +</string> </value> + </item> + <item> + <key> <string>_code</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>_filepath</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>_params</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>_proxy_roles</string> </key> + <value> + <tuple> + <string>Assignor</string> + <string>Manager</string> + </tuple> + </value> + </item> + <item> + <key> <string>errors</string> </key> + <value> + <tuple/> + </value> + </item> + <item> + <key> <string>func_code</string> </key> + <value> + <object> + <klass> + <global name="FuncCode" module="Shared.DC.Scripts.Signature"/> + </klass> + <tuple/> + <state> + <dictionary> + <item> + <key> <string>co_argcount</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>co_varnames</string> </key> + <value> + <tuple> + <string>_getattr_</string> + <string>context</string> + <string>request</string> + <string>isAnon</string> + <string>translateString</string> + <string>True</string> + <string>dict</string> + <string>shopping_cart</string> + <string>sale_order</string> + <string>False</string> + </tuple> + </value> + </item> + </dictionary> + </state> + </object> + </value> + </item> + <item> + <key> <string>func_defaults</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>SaleOrder_finalizeShopping</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Finalize order</string> </value> + </item> + <item> + <key> <string>warnings</string> </key> + <value> + <tuple/> + </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWeb.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWeb.xml index 7d56b1cf64..4a1a64a9bf 100644 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWeb.xml +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWeb.xml @@ -89,7 +89,7 @@ <value> <list> <string>shopping_cart</string> - <string>shopping_item_list</string> + <string>submit</string> </list> </value> </item> @@ -128,7 +128,7 @@ </item> <item> <key> <string>title</string> </key> - <value> <string>Shopping cart details</string> </value> + <value> <string>Edit shopping cart</string> </value> </item> <item> <key> <string>unicode_mode</string> </key> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWeb/shopping_item_list.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWeb/shopping_item_list.xml deleted file mode 100644 index 524643de94..0000000000 --- a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWeb/shopping_item_list.xml +++ /dev/null @@ -1,500 +0,0 @@ -<?xml version="1.0"?> -<ZopeData> - <record id="1" aka="AAAAAAAAAAE="> - <pickle> - <tuple> - <tuple> - <string>Products.ERP5Form.ListBox</string> - <string>ListBox</string> - </tuple> - <none/> - </tuple> - </pickle> - <pickle> - <dictionary> - <item> - <key> <string>id</string> </key> - <value> <string>shopping_item_list</string> </value> - </item> - <item> - <key> <string>message_values</string> </key> - <value> - <dictionary> - <item> - <key> <string>external_validator_failed</string> </key> - <value> <string>The input failed the external validator.</string> </value> - </item> - </dictionary> - </value> - </item> - <item> - <key> <string>overrides</string> </key> - <value> - <dictionary> - <item> - <key> <string>all_columns</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>alternate_name</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>columns</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>count_method</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>css_class</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>default_params</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>description</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>domain_root_list</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>domain_tree</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>editable</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>editable_columns</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>enabled</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>external_validator</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>global_attributes</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>hidden</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>lines</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>list_action</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>list_method</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>meta_types</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>page_template</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>portal_types</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>report_root_list</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>report_tree</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>search</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>search_columns</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>select</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>selection_name</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>sort</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>sort_columns</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>stat_columns</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>stat_method</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>title</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>url_columns</string> </key> - <value> <string></string> </value> - </item> - </dictionary> - </value> - </item> - <item> - <key> <string>tales</string> </key> - <value> - <dictionary> - <item> - <key> <string>all_columns</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>alternate_name</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>columns</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>count_method</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>css_class</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>default_params</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>description</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>domain_root_list</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>domain_tree</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>editable</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>editable_columns</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>enabled</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>external_validator</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>global_attributes</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>hidden</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>lines</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>list_action</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>list_method</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>meta_types</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>page_template</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>portal_types</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>report_root_list</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>report_tree</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>search</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>search_columns</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>select</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>selection_name</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>sort</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>sort_columns</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>stat_columns</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>stat_method</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>title</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>url_columns</string> </key> - <value> <string></string> </value> - </item> - </dictionary> - </value> - </item> - <item> - <key> <string>values</string> </key> - <value> - <dictionary> - <item> - <key> <string>all_columns</string> </key> - <value> - <list/> - </value> - </item> - <item> - <key> <string>alternate_name</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>columns</string> </key> - <value> - <list> - <tuple> - <string>title</string> - <string>title</string> - </tuple> - <tuple> - <string>description</string> - <string>description</string> - </tuple> - <tuple> - <string>price</string> - <string>price</string> - </tuple> - <tuple> - <string>quantity</string> - <string>quantity</string> - </tuple> - </list> - </value> - </item> - <item> - <key> <string>count_method</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>css_class</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>default_params</string> </key> - <value> - <list/> - </value> - </item> - <item> - <key> <string>description</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>domain_root_list</string> </key> - <value> - <list/> - </value> - </item> - <item> - <key> <string>domain_tree</string> </key> - <value> <int>0</int> </value> - </item> - <item> - <key> <string>editable</string> </key> - <value> <int>1</int> </value> - </item> - <item> - <key> <string>editable_columns</string> </key> - <value> - <list> - <tuple> - <string>Quantity</string> - <string>quantity</string> - </tuple> - </list> - </value> - </item> - <item> - <key> <string>enabled</string> </key> - <value> <int>0</int> </value> - </item> - <item> - <key> <string>external_validator</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>global_attributes</string> </key> - <value> - <list/> - </value> - </item> - <item> - <key> <string>hidden</string> </key> - <value> <int>0</int> </value> - </item> - <item> - <key> <string>lines</string> </key> - <value> <int>20</int> </value> - </item> - <item> - <key> <string>list_action</string> </key> - <value> <string>list</string> </value> - </item> - <item> - <key> <string>list_method</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>meta_types</string> </key> - <value> - <list/> - </value> - </item> - <item> - <key> <string>page_template</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>portal_types</string> </key> - <value> - <list/> - </value> - </item> - <item> - <key> <string>report_root_list</string> </key> - <value> - <list/> - </value> - </item> - <item> - <key> <string>report_tree</string> </key> - <value> <int>0</int> </value> - </item> - <item> - <key> <string>search</string> </key> - <value> <int>0</int> </value> - </item> - <item> - <key> <string>search_columns</string> </key> - <value> - <list/> - </value> - </item> - <item> - <key> <string>select</string> </key> - <value> <int>0</int> </value> - </item> - <item> - <key> <string>selection_name</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>sort</string> </key> - <value> - <list/> - </value> - </item> - <item> - <key> <string>sort_columns</string> </key> - <value> - <list/> - </value> - </item> - <item> - <key> <string>stat_columns</string> </key> - <value> - <list/> - </value> - </item> - <item> - <key> <string>stat_method</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>title</string> </key> - <value> <string>shopping_item_list</string> </value> - </item> - <item> - <key> <string>url_columns</string> </key> - <value> - <list/> - </value> - </item> - </dictionary> - </value> - </item> - </dictionary> - </pickle> - </record> -</ZopeData> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWeb/submit.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWeb/submit.xml new file mode 100644 index 0000000000..2f352620ac --- /dev/null +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWeb/submit.xml @@ -0,0 +1,169 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>Products.ERP5Form.InputButtonField</string> + <string>InputButtonField</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>id</string> </key> + <value> <string>submit</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary/> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string>hiddenLabel</string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string>Update</string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>name</string> </key> + <value> <string>ERP5Ecommerce_updateShoppingCart:method</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Submit</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWebConfirm.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWebConfirm.xml new file mode 100644 index 0000000000..dbe0b81a9f --- /dev/null +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWebConfirm.xml @@ -0,0 +1,144 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>Products.ERP5Form.Form</string> + <string>ERP5Form</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>__ac_local_roles__</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>_bind_names</string> </key> + <value> + <object> + <klass> + <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/> + </klass> + <tuple/> + <state> + <dictionary> + <item> + <key> <string>_asgns</string> </key> + <value> + <dictionary/> + </value> + </item> + </dictionary> + </state> + </object> + </value> + </item> + <item> + <key> <string>_objects</string> </key> + <value> + <tuple/> + </value> + </item> + <item> + <key> <string>action</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>encoding</string> </key> + <value> <string>UTF-8</string> </value> + </item> + <item> + <key> <string>enctype</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>group_list</string> </key> + <value> + <list> + <string>left</string> + <string>right</string> + <string>center</string> + <string>bottom</string> + </list> + </value> + </item> + <item> + <key> <string>groups</string> </key> + <value> + <dictionary> + <item> + <key> <string>bottom</string> </key> + <value> + <list/> + </value> + </item> + <item> + <key> <string>center</string> </key> + <value> + <list/> + </value> + </item> + <item> + <key> <string>left</string> </key> + <value> + <list> + <string>shopping_cart</string> + <string>submit</string> + </list> + </value> + </item> + <item> + <key> <string>right</string> </key> + <value> + <list/> + </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>SaleOrder_viewAsWebConfirm</string> </value> + </item> + <item> + <key> <string>method</string> </key> + <value> <string>POST</string> </value> + </item> + <item> + <key> <string>name</string> </key> + <value> <string>Product_view</string> </value> + </item> + <item> + <key> <string>pt</string> </key> + <value> <string>form_view</string> </value> + </item> + <item> + <key> <string>row_length</string> </key> + <value> <int>4</int> </value> + </item> + <item> + <key> <string>stored_encoding</string> </key> + <value> <string>UTF-8</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Confirm order</string> </value> + </item> + <item> + <key> <string>unicode_mode</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>update_action</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWebConfirm/shopping_cart.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWebConfirm/shopping_cart.xml new file mode 100644 index 0000000000..2b653f1e9e --- /dev/null +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWebConfirm/shopping_cart.xml @@ -0,0 +1,307 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>Products.ERP5Form.EditorField</string> + <string>EditorField</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>id</string> </key> + <value> <string>shopping_cart</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary> + <item> + <key> <string>external_validator_failed</string> </key> + <value> <string>The input failed the external validator.</string> </value> + </item> + <item> + <key> <string>line_too_long</string> </key> + <value> <string>A line was too long.</string> </value> + </item> + <item> + <key> <string>required_not_found</string> </key> + <value> <string>Input is required but no input given.</string> </value> + </item> + <item> + <key> <string>too_long</string> </key> + <value> <string>You entered too many characters.</string> </value> + </item> + <item> + <key> <string>too_many_lines</string> </key> + <value> <string>You entered too many lines.</string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>height</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_length</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_linelength</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_lines</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>width</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> + </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>height</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_length</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_linelength</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_lines</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>width</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string>adminToolbox</string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>height</string> </key> + <value> <int>5</int> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>max_length</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_linelength</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_lines</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Shopping cart</string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>width</string> </key> + <value> <int>40</int> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> + <record id="2" aka="AAAAAAAAAAI="> + <pickle> + <tuple> + <tuple> + <string>Products.Formulator.TALESField</string> + <string>TALESMethod</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>_text</string> </key> + <value> <string>python: here.ERP5Ecommerce_renderSaleOrderAsShoppingCart(confirm_mode=1)</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWebConfirm/submit.xml b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWebConfirm/submit.xml new file mode 100644 index 0000000000..7ee49d8c67 --- /dev/null +++ b/bt5/erp5_ecommerce/SkinTemplateItem/portal_skins/erp5_ecommerce/SaleOrder_viewAsWebConfirm/submit.xml @@ -0,0 +1,169 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <tuple> + <string>Products.ERP5Form.InputButtonField</string> + <string>InputButtonField</string> + </tuple> + <none/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>id</string> </key> + <value> <string>submit</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary/> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string>hiddenLabel</string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string>Buy</string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>name</string> </key> + <value> <string>SaleOrder_finalizeShopping:method</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Submit</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> -- 2.30.9