From f482c45fa1e6854a8ebace4d483f72e7d91b4523 Mon Sep 17 00:00:00 2001
From: Simone Rubino
Date: Mon, 14 Jan 2019 11:53:16 +0100
Subject: [PATCH 01/23] [ADD] website_sale_order_type (#253)
---
website_sale_order_type/README.rst | 85 ++++
website_sale_order_type/__init__.py | 4 +
website_sale_order_type/__manifest__.py | 19 +
.../i18n/website_sale_order_type.pot | 20 +
website_sale_order_type/models/__init__.py | 4 +
website_sale_order_type/models/sale_order.py | 23 +
.../readme/CONTRIBUTORS.rst | 1 +
.../readme/DESCRIPTION.rst | 6 +
website_sale_order_type/readme/USAGE.rst | 3 +
.../static/description/icon.png | Bin 0 -> 9455 bytes
.../static/description/index.html | 431 ++++++++++++++++++
website_sale_order_type/tests/__init__.py | 4 +
.../tests/test_website_sale_order_type.py | 54 +++
13 files changed, 654 insertions(+)
create mode 100644 website_sale_order_type/README.rst
create mode 100644 website_sale_order_type/__init__.py
create mode 100644 website_sale_order_type/__manifest__.py
create mode 100644 website_sale_order_type/i18n/website_sale_order_type.pot
create mode 100644 website_sale_order_type/models/__init__.py
create mode 100644 website_sale_order_type/models/sale_order.py
create mode 100644 website_sale_order_type/readme/CONTRIBUTORS.rst
create mode 100644 website_sale_order_type/readme/DESCRIPTION.rst
create mode 100644 website_sale_order_type/readme/USAGE.rst
create mode 100644 website_sale_order_type/static/description/icon.png
create mode 100644 website_sale_order_type/static/description/index.html
create mode 100644 website_sale_order_type/tests/__init__.py
create mode 100644 website_sale_order_type/tests/test_website_sale_order_type.py
diff --git a/website_sale_order_type/README.rst b/website_sale_order_type/README.rst
new file mode 100644
index 0000000000..bebd2c89f8
--- /dev/null
+++ b/website_sale_order_type/README.rst
@@ -0,0 +1,85 @@
+=======================
+Website sale order type
+=======================
+
+.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ !! This file is generated by oca-gen-addon-readme !!
+ !! changes will be overwritten. !!
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
+ :target: https://odoo-community.org/page/development-status
+ :alt: Beta
+.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
+ :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
+ :alt: License: AGPL-3
+.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fe--commerce-lightgray.png?logo=github
+ :target: https://github.com/OCA/e-commerce/tree/10.0/website_sale_order_type
+ :alt: OCA/e-commerce
+.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
+ :target: https://translation.odoo-community.org/projects/e-commerce-10-0/e-commerce-10-0-website_sale_order_type
+ :alt: Translate me on Weblate
+.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
+ :target: https://runbot.odoo-community.org/runbot/113/10.0
+ :alt: Try me on Runbot
+
+|badge1| |badge2| |badge3| |badge4| |badge5|
+
+This module allows `sale_order_type `__ to work with website_sale.
+
+This module is useful for users having a sale order type defined in their Partner form:
+when these users buy a product in the e-commerce, the sale order generated will have the same sale order type that is defined in their Partner form.
+
+Note that the sale order type is defined contact by contact and not at Company level.
+
+**Table of contents**
+
+.. contents::
+ :local:
+
+Usage
+=====
+
+#. In the backend (Sales -> Customers) set a sale order type in any contact;
+#. Log in with the associated user in the e-commerce website and buy a product;
+#. Check that the created sale oder has the same sale order type that has been set in the contact.
+
+Bug Tracker
+===========
+
+Bugs are tracked on `GitHub Issues `_.
+In case of trouble, please check there if your issue has already been reported.
+If you spotted it first, help us smashing it by providing a detailed and welcomed
+`feedback `_.
+
+Do not contact contributors directly about support or help with technical issues.
+
+Credits
+=======
+
+Authors
+~~~~~~~
+
+* Agile Business Group
+
+Contributors
+~~~~~~~~~~~~
+
+* Simone Rubino
+
+Maintainers
+~~~~~~~~~~~
+
+This module is maintained by the OCA.
+
+.. image:: https://odoo-community.org/logo.png
+ :alt: Odoo Community Association
+ :target: https://odoo-community.org
+
+OCA, or the Odoo Community Association, is a nonprofit organization whose
+mission is to support the collaborative development of Odoo features and
+promote its widespread use.
+
+This module is part of the `OCA/e-commerce `_ project on GitHub.
+
+You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/website_sale_order_type/__init__.py b/website_sale_order_type/__init__.py
new file mode 100644
index 0000000000..b44d765940
--- /dev/null
+++ b/website_sale_order_type/__init__.py
@@ -0,0 +1,4 @@
+# -*- coding: utf-8 -*-
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+
+from . import models
diff --git a/website_sale_order_type/__manifest__.py b/website_sale_order_type/__manifest__.py
new file mode 100644
index 0000000000..a7b27ba5d2
--- /dev/null
+++ b/website_sale_order_type/__manifest__.py
@@ -0,0 +1,19 @@
+# -*- coding: utf-8 -*-
+# Copyright 2018 Simone Rubino - Agile Business Group
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+{
+ "name": "Website sale order type",
+ "summary": "This module allows sale_order_type to work with website_sale.",
+ "version": "10.0.1.0.0",
+ "development_status": "Beta",
+ "category": "Website",
+ "website": "https://github.com/OCA/e-commerce/tree/"
+ "10.0/website_sale_order_type",
+ "author": "Agile Business Group, Odoo Community Association (OCA)",
+ "license": "AGPL-3",
+ "depends": [
+ "website_sale",
+ "sale_order_type"
+ ],
+ "auto_install": True
+}
diff --git a/website_sale_order_type/i18n/website_sale_order_type.pot b/website_sale_order_type/i18n/website_sale_order_type.pot
new file mode 100644
index 0000000000..7a26582e6e
--- /dev/null
+++ b/website_sale_order_type/i18n/website_sale_order_type.pot
@@ -0,0 +1,20 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * website_sale_order_type
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 10.0\n"
+"Report-Msgid-Bugs-To: \n"
+"Last-Translator: <>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: \n"
+
+#. module: website_sale_order_type
+#: model:ir.model,name:website_sale_order_type.model_sale_order
+msgid "Sales Order"
+msgstr ""
+
diff --git a/website_sale_order_type/models/__init__.py b/website_sale_order_type/models/__init__.py
new file mode 100644
index 0000000000..936a98f598
--- /dev/null
+++ b/website_sale_order_type/models/__init__.py
@@ -0,0 +1,4 @@
+# -*- coding: utf-8 -*-
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+
+from . import sale_order
diff --git a/website_sale_order_type/models/sale_order.py b/website_sale_order_type/models/sale_order.py
new file mode 100644
index 0000000000..2154f9e5b5
--- /dev/null
+++ b/website_sale_order_type/models/sale_order.py
@@ -0,0 +1,23 @@
+# -*- coding: utf-8 -*-
+# Copyright 2018 Simone Rubino - Agile Business Group
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
+
+from odoo import api, models
+
+
+class SaleOrder(models.Model):
+ _inherit = 'sale.order'
+
+ @api.multi
+ def _cart_update(
+ self, product_id=None, line_id=None, add_qty=0, set_qty=0,
+ attributes=None, **kwargs):
+ self.ensure_one()
+ res = super(SaleOrder, self)._cart_update(
+ product_id=product_id, line_id=line_id,
+ add_qty=add_qty, set_qty=set_qty, attributes=attributes, **kwargs)
+ if self.partner_id.sale_type:
+ self.type_id = self.partner_id.sale_type
+ self.onchange_type_id()
+ self.match_order_type()
+ return res
diff --git a/website_sale_order_type/readme/CONTRIBUTORS.rst b/website_sale_order_type/readme/CONTRIBUTORS.rst
new file mode 100644
index 0000000000..a200b876a6
--- /dev/null
+++ b/website_sale_order_type/readme/CONTRIBUTORS.rst
@@ -0,0 +1 @@
+* Simone Rubino
diff --git a/website_sale_order_type/readme/DESCRIPTION.rst b/website_sale_order_type/readme/DESCRIPTION.rst
new file mode 100644
index 0000000000..d364f3c6ce
--- /dev/null
+++ b/website_sale_order_type/readme/DESCRIPTION.rst
@@ -0,0 +1,6 @@
+This module allows `sale_order_type `__ to work with website_sale.
+
+This module is useful for users having a sale order type defined in their Partner form:
+when these users buy a product in the e-commerce, the sale order generated will have the same sale order type that is defined in their Partner form.
+
+Note that the sale order type is defined contact by contact and not at Company level.
diff --git a/website_sale_order_type/readme/USAGE.rst b/website_sale_order_type/readme/USAGE.rst
new file mode 100644
index 0000000000..8f0cd58bca
--- /dev/null
+++ b/website_sale_order_type/readme/USAGE.rst
@@ -0,0 +1,3 @@
+#. In the backend (Sales -> Customers) set a sale order type in any contact;
+#. Log in with the associated user in the e-commerce website and buy a product;
+#. Check that the created sale oder has the same sale order type that has been set in the contact.
diff --git a/website_sale_order_type/static/description/icon.png b/website_sale_order_type/static/description/icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d
GIT binary patch
literal 9455
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
z
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
Xviia!U7SGha1wx#SCgwmn*{w2TRX*I
literal 0
HcmV?d00001
diff --git a/website_sale_order_type/static/description/index.html b/website_sale_order_type/static/description/index.html
new file mode 100644
index 0000000000..46e216fa61
--- /dev/null
+++ b/website_sale_order_type/static/description/index.html
@@ -0,0 +1,431 @@
+
+
+
+
+
+
+Website sale order type
+
+
+
+
+
Website sale order type
+
+
+

+
This module allows sale_order_type to work with website_sale.
+
This module is useful for users having a sale order type defined in their Partner form:
+when these users buy a product in the e-commerce, the sale order generated will have the same sale order type that is defined in their Partner form.
+
Note that the sale order type is defined contact by contact and not at Company level.
+
Table of contents
+
+
+
+
+- In the backend (Sales -> Customers) set a sale order type in any contact;
+- Log in with the associated user in the e-commerce website and buy a product;
+- Check that the created sale oder has the same sale order type that has been set in the contact.
+
+
+
+
+
Bugs are tracked on GitHub Issues.
+In case of trouble, please check there if your issue has already been reported.
+If you spotted it first, help us smashing it by providing a detailed and welcomed
+feedback.
+
Do not contact contributors directly about support or help with technical issues.
+
+
+
+
+
+
+
+
This module is maintained by the OCA.
+

+
OCA, or the Odoo Community Association, is a nonprofit organization whose
+mission is to support the collaborative development of Odoo features and
+promote its widespread use.
+
This module is part of the OCA/e-commerce project on GitHub.
+
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
+
+
+
+
+
diff --git a/website_sale_order_type/tests/__init__.py b/website_sale_order_type/tests/__init__.py
new file mode 100644
index 0000000000..88b286d8aa
--- /dev/null
+++ b/website_sale_order_type/tests/__init__.py
@@ -0,0 +1,4 @@
+# -*- coding: utf-8 -*-
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+
+from . import test_website_sale_order_type
diff --git a/website_sale_order_type/tests/test_website_sale_order_type.py b/website_sale_order_type/tests/test_website_sale_order_type.py
new file mode 100644
index 0000000000..68d1ce6e1d
--- /dev/null
+++ b/website_sale_order_type/tests/test_website_sale_order_type.py
@@ -0,0 +1,54 @@
+# Copyright 2018 Simone Rubino - Agile Business Group
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
+from odoo import api
+from odoo.tests import HttpCase
+
+
+class TestFrontend(HttpCase):
+
+ def setUp(self):
+ super(TestFrontend, self).setUp()
+ self.env = api.Environment(self.registry.test_cr, self.uid, {})
+ self.sale_type_model = self.env['sale.order.type']
+
+ self.partner = self.env.ref('base.partner_root')
+ self.sale_type = self.create_sale_type()
+
+ def create_sale_type(self):
+ self.sequence = self.env['ir.sequence'].create({
+ 'name': 'Test Sales Order',
+ 'code': 'sale.order',
+ 'prefix': 'TSO',
+ 'padding': 3,
+ })
+ self.journal = self.env['account.journal'].search(
+ [('type', '=', 'sale')], limit=1)
+ self.warehouse = self.env.ref('stock.stock_warehouse_shop0')
+ self.immediate_payment = self.env.ref(
+ 'account.account_payment_term_immediate')
+ self.sale_pricelist = self.env.ref('product.list0')
+ self.free_carrier = self.env.ref('stock.incoterm_FCA')
+ return self.sale_type_model.create({
+ 'name': 'Test Sale Order Type',
+ 'sequence_id': self.sequence.id,
+ 'journal_id': self.journal.id,
+ 'warehouse_id': self.warehouse.id,
+ 'picking_policy': 'one',
+ 'payment_term_id': self.immediate_payment.id,
+ 'pricelist_id': self.sale_pricelist.id,
+ 'incoterm_id': self.free_carrier.id,
+ })
+
+ def test_website_sale_order_type(self):
+ self.partner.sale_type = self.sale_type
+ existing_orders = self.env['sale.order'].search([])
+ # In frontend, create an order
+ tour_prefix = "odoo.__DEBUG__.services['web_tour.tour']"
+ self.phantom_js(
+ "/",
+ tour_prefix + ".run('shop_buy_product')",
+ tour_prefix + ".tours.shop_buy_product.ready",
+ login="admin")
+ created_order = self.env['sale.order'].search([
+ ('id', 'not in', existing_orders.ids)])
+ self.assertEqual(created_order.type_id, self.sale_type)
From e64e5f864476f69066fd51d8838d969da1c56de9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jo=C3=A3o=20Marques?=
Date: Mon, 26 Oct 2020 08:05:04 +0000
Subject: [PATCH 02/23] [MIG] website_sale_order_type: Migration to 11.0
---
website_sale_order_type/__init__.py | 1 -
website_sale_order_type/__manifest__.py | 4 ++--
website_sale_order_type/models/__init__.py | 1 -
website_sale_order_type/models/sale_order.py | 1 -
website_sale_order_type/readme/CONTRIBUTORS.rst | 4 ++++
website_sale_order_type/tests/__init__.py | 1 -
6 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/website_sale_order_type/__init__.py b/website_sale_order_type/__init__.py
index b44d765940..31660d6a96 100644
--- a/website_sale_order_type/__init__.py
+++ b/website_sale_order_type/__init__.py
@@ -1,4 +1,3 @@
-# -*- coding: utf-8 -*-
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
from . import models
diff --git a/website_sale_order_type/__manifest__.py b/website_sale_order_type/__manifest__.py
index a7b27ba5d2..f990ecfc12 100644
--- a/website_sale_order_type/__manifest__.py
+++ b/website_sale_order_type/__manifest__.py
@@ -1,10 +1,10 @@
-# -*- coding: utf-8 -*-
# Copyright 2018 Simone Rubino - Agile Business Group
+# Copyright 2020 Tecnativa - João Marques
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
{
"name": "Website sale order type",
"summary": "This module allows sale_order_type to work with website_sale.",
- "version": "10.0.1.0.0",
+ "version": "11.0.1.0.0",
"development_status": "Beta",
"category": "Website",
"website": "https://github.com/OCA/e-commerce/tree/"
diff --git a/website_sale_order_type/models/__init__.py b/website_sale_order_type/models/__init__.py
index 936a98f598..cbd69320b0 100644
--- a/website_sale_order_type/models/__init__.py
+++ b/website_sale_order_type/models/__init__.py
@@ -1,4 +1,3 @@
-# -*- coding: utf-8 -*-
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
from . import sale_order
diff --git a/website_sale_order_type/models/sale_order.py b/website_sale_order_type/models/sale_order.py
index 2154f9e5b5..3f7f412796 100644
--- a/website_sale_order_type/models/sale_order.py
+++ b/website_sale_order_type/models/sale_order.py
@@ -1,4 +1,3 @@
-# -*- coding: utf-8 -*-
# Copyright 2018 Simone Rubino - Agile Business Group
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
diff --git a/website_sale_order_type/readme/CONTRIBUTORS.rst b/website_sale_order_type/readme/CONTRIBUTORS.rst
index a200b876a6..01ed86b848 100644
--- a/website_sale_order_type/readme/CONTRIBUTORS.rst
+++ b/website_sale_order_type/readme/CONTRIBUTORS.rst
@@ -1 +1,5 @@
* Simone Rubino
+
+* `Tecnativa `_:
+
+ * João Marques
diff --git a/website_sale_order_type/tests/__init__.py b/website_sale_order_type/tests/__init__.py
index 88b286d8aa..e27813a1a7 100644
--- a/website_sale_order_type/tests/__init__.py
+++ b/website_sale_order_type/tests/__init__.py
@@ -1,4 +1,3 @@
-# -*- coding: utf-8 -*-
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
from . import test_website_sale_order_type
From b71669ed753d571bfea01511065314b12f292968 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jo=C3=A3o=20Marques?=
Date: Mon, 26 Oct 2020 12:20:36 +0000
Subject: [PATCH 03/23] [MIG] website_sale_order_type: Migration to 12.0
---
website_sale_order_type/README.rst | 22 ++++++++++++++-----
website_sale_order_type/__manifest__.py | 6 ++---
website_sale_order_type/models/sale_order.py | 8 +++----
.../static/description/index.html | 18 +++++++++++----
.../tests/test_website_sale_order_type.py | 4 ++--
5 files changed, 40 insertions(+), 18 deletions(-)
diff --git a/website_sale_order_type/README.rst b/website_sale_order_type/README.rst
index bebd2c89f8..fca8369b9f 100644
--- a/website_sale_order_type/README.rst
+++ b/website_sale_order_type/README.rst
@@ -14,13 +14,13 @@ Website sale order type
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fe--commerce-lightgray.png?logo=github
- :target: https://github.com/OCA/e-commerce/tree/10.0/website_sale_order_type
+ :target: https://github.com/OCA/e-commerce/tree/12.0/website_sale_order_type
:alt: OCA/e-commerce
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/e-commerce-10-0/e-commerce-10-0-website_sale_order_type
+ :target: https://translation.odoo-community.org/projects/e-commerce-12-0/e-commerce-12-0-website_sale_order_type
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
- :target: https://runbot.odoo-community.org/runbot/113/10.0
+ :target: https://runbot.odoo-community.org/runbot/113/12.0
:alt: Try me on Runbot
|badge1| |badge2| |badge3| |badge4| |badge5|
@@ -50,7 +50,7 @@ Bug Tracker
Bugs are tracked on `GitHub Issues `_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-`feedback `_.
+`feedback `_.
Do not contact contributors directly about support or help with technical issues.
@@ -67,6 +67,10 @@ Contributors
* Simone Rubino
+* `Tecnativa `_:
+
+ * João Marques
+
Maintainers
~~~~~~~~~~~
@@ -80,6 +84,14 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
-This module is part of the `OCA/e-commerce `_ project on GitHub.
+.. |maintainer-joao-p-marques| image:: https://github.com/joao-p-marques.png?size=40px
+ :target: https://github.com/joao-p-marques
+ :alt: joao-p-marques
+
+Current `maintainer `__:
+
+|maintainer-joao-p-marques|
+
+This module is part of the `OCA/e-commerce `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/website_sale_order_type/__manifest__.py b/website_sale_order_type/__manifest__.py
index f990ecfc12..71ae7dbce2 100644
--- a/website_sale_order_type/__manifest__.py
+++ b/website_sale_order_type/__manifest__.py
@@ -4,11 +4,11 @@
{
"name": "Website sale order type",
"summary": "This module allows sale_order_type to work with website_sale.",
- "version": "11.0.1.0.0",
+ "version": "12.0.1.0.0",
"development_status": "Beta",
"category": "Website",
- "website": "https://github.com/OCA/e-commerce/tree/"
- "10.0/website_sale_order_type",
+ "website": "https://github.com/OCA/e-commerce/",
+ "maintainers": ["joao-p-marques"],
"author": "Agile Business Group, Odoo Community Association (OCA)",
"license": "AGPL-3",
"depends": [
diff --git a/website_sale_order_type/models/sale_order.py b/website_sale_order_type/models/sale_order.py
index 3f7f412796..7e988f0143 100644
--- a/website_sale_order_type/models/sale_order.py
+++ b/website_sale_order_type/models/sale_order.py
@@ -15,8 +15,8 @@ def _cart_update(
res = super(SaleOrder, self)._cart_update(
product_id=product_id, line_id=line_id,
add_qty=add_qty, set_qty=set_qty, attributes=attributes, **kwargs)
- if self.partner_id.sale_type:
- self.type_id = self.partner_id.sale_type
- self.onchange_type_id()
- self.match_order_type()
+ sale_type = (self.partner_id.sale_type or
+ self.partner_id.commercial_partner_id.sale_type)
+ if sale_type:
+ self.type_id = sale_type
return res
diff --git a/website_sale_order_type/static/description/index.html b/website_sale_order_type/static/description/index.html
index 46e216fa61..671e57992e 100644
--- a/website_sale_order_type/static/description/index.html
+++ b/website_sale_order_type/static/description/index.html
@@ -367,7 +367,7 @@ Website sale order type
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-

+

This module allows sale_order_type to work with website_sale.
This module is useful for users having a sale order type defined in their Partner form:
when these users buy a product in the e-commerce, the sale order generated will have the same sale order type that is defined in their Partner form.
@@ -398,7 +398,7 @@
Bugs are tracked on GitHub Issues.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-feedback.
+feedback.
Do not contact contributors directly about support or help with technical issues.
@@ -422,7 +430,9 @@
OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
-
This module is part of the OCA/e-commerce project on GitHub.
+
Current maintainer:
+

+
This module is part of the OCA/e-commerce project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/website_sale_order_type/tests/test_website_sale_order_type.py b/website_sale_order_type/tests/test_website_sale_order_type.py
index 68d1ce6e1d..2ed1185f05 100644
--- a/website_sale_order_type/tests/test_website_sale_order_type.py
+++ b/website_sale_order_type/tests/test_website_sale_order_type.py
@@ -11,7 +11,7 @@ def setUp(self):
self.env = api.Environment(self.registry.test_cr, self.uid, {})
self.sale_type_model = self.env['sale.order.type']
- self.partner = self.env.ref('base.partner_root')
+ self.partner = self.env.ref('base.partner_admin')
self.sale_type = self.create_sale_type()
def create_sale_type(self):
@@ -27,7 +27,7 @@ def create_sale_type(self):
self.immediate_payment = self.env.ref(
'account.account_payment_term_immediate')
self.sale_pricelist = self.env.ref('product.list0')
- self.free_carrier = self.env.ref('stock.incoterm_FCA')
+ self.free_carrier = self.env.ref('account.incoterm_FCA')
return self.sale_type_model.create({
'name': 'Test Sale Order Type',
'sequence_id': self.sequence.id,
From 51749d453b8d24e6078f8e93e7c4004fe298fecc Mon Sep 17 00:00:00 2001
From: Jairo Llopis
Date: Fri, 6 Nov 2020 10:39:44 +0000
Subject: [PATCH 04/23] [FIX] website_sale_order_type: speed up tour
Without this patch, it's easy that the tour fails randomly due to a timeout when generating the sales order report. These assets can take a long time, increasing when more addons are installed.
In an integrated database, this patch makes the test go from this log:
2020-11-06 10:34:53,941 34 INFO devel werkzeug: 127.0.0.1 - - [06/Nov/2020 10:34:53] "POST /payment/transfer/feedback HTTP/1.1" 302 - 730 4.368 11.800
To this one:
2020-11-06 10:32:55,517 34 INFO devel werkzeug: 127.0.0.1 - - [06/Nov/2020 10:32:55] "POST /payment/transfer/feedback HTTP/1.1" 302 - 479 2.906 5.771
That's about 50% the time.
In the same patch, I remove the `self.env` patch that was only needed for Odoo v11 and lower.
---
.../tests/test_website_sale_order_type.py | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/website_sale_order_type/tests/test_website_sale_order_type.py b/website_sale_order_type/tests/test_website_sale_order_type.py
index 2ed1185f05..59c9cde965 100644
--- a/website_sale_order_type/tests/test_website_sale_order_type.py
+++ b/website_sale_order_type/tests/test_website_sale_order_type.py
@@ -1,6 +1,5 @@
# Copyright 2018 Simone Rubino - Agile Business Group
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
-from odoo import api
from odoo.tests import HttpCase
@@ -8,7 +7,6 @@ class TestFrontend(HttpCase):
def setUp(self):
super(TestFrontend, self).setUp()
- self.env = api.Environment(self.registry.test_cr, self.uid, {})
self.sale_type_model = self.env['sale.order.type']
self.partner = self.env.ref('base.partner_admin')
@@ -42,6 +40,17 @@ def create_sale_type(self):
def test_website_sale_order_type(self):
self.partner.sale_type = self.sale_type
existing_orders = self.env['sale.order'].search([])
+ # Precreate SO report assets cache to avoid tour step timeouts
+ views = (
+ "web.assets_common",
+ "web.report_assets_common",
+ "web.report_assets_pdf",
+ )
+ for view in views:
+ self.env["ir.qweb"]._get_asset_nodes(
+ view, self.env.context, js=False)
+ self.env["ir.qweb"]._get_asset_nodes(
+ view, self.env.context, css=False)
# In frontend, create an order
tour_prefix = "odoo.__DEBUG__.services['web_tour.tour']"
self.phantom_js(
From e650473b04b16c3e1bc0dbca5fee8d305db47758 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jo=C3=A3o=20Marques?=
Date: Tue, 5 Jan 2021 13:51:20 +0000
Subject: [PATCH 05/23] [FIX] website_sale_order_type: simplify tour
With the old tour, timeout problems started to occur, even with 7830084547e7df29c6dcd377dd4dc39a0319b594
This partially reverts that, and instead uses a simpler tour to test the creation of the SO.
TT26399
---
website_sale_order_type/__manifest__.py | 3 ++
website_sale_order_type/demo/assets.xml | 10 ++++++
.../i18n/website_sale_order_type.pot | 4 +--
.../src/js/website_sale_order_type_tour.js | 32 +++++++++++++++++++
.../tests/test_website_sale_order_type.py | 17 ++--------
5 files changed, 50 insertions(+), 16 deletions(-)
create mode 100644 website_sale_order_type/demo/assets.xml
create mode 100644 website_sale_order_type/static/src/js/website_sale_order_type_tour.js
diff --git a/website_sale_order_type/__manifest__.py b/website_sale_order_type/__manifest__.py
index 71ae7dbce2..0ea7a011f6 100644
--- a/website_sale_order_type/__manifest__.py
+++ b/website_sale_order_type/__manifest__.py
@@ -15,5 +15,8 @@
"website_sale",
"sale_order_type"
],
+ "demo": [
+ "demo/assets.xml"
+ ],
"auto_install": True
}
diff --git a/website_sale_order_type/demo/assets.xml b/website_sale_order_type/demo/assets.xml
new file mode 100644
index 0000000000..b10d3518f0
--- /dev/null
+++ b/website_sale_order_type/demo/assets.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
diff --git a/website_sale_order_type/i18n/website_sale_order_type.pot b/website_sale_order_type/i18n/website_sale_order_type.pot
index 7a26582e6e..918bcf3b6d 100644
--- a/website_sale_order_type/i18n/website_sale_order_type.pot
+++ b/website_sale_order_type/i18n/website_sale_order_type.pot
@@ -4,7 +4,7 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Odoo Server 10.0\n"
+"Project-Id-Version: Odoo Server 12.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: <>\n"
"Language-Team: \n"
@@ -15,6 +15,6 @@ msgstr ""
#. module: website_sale_order_type
#: model:ir.model,name:website_sale_order_type.model_sale_order
-msgid "Sales Order"
+msgid "Sale Order"
msgstr ""
diff --git a/website_sale_order_type/static/src/js/website_sale_order_type_tour.js b/website_sale_order_type/static/src/js/website_sale_order_type_tour.js
new file mode 100644
index 0000000000..ad622289ab
--- /dev/null
+++ b/website_sale_order_type/static/src/js/website_sale_order_type_tour.js
@@ -0,0 +1,32 @@
+/* Copyright 2020 Tecnativa - João Marques
+ * License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). */
+
+ odoo.define("website_sale_order_type.tour", function (require) {
+ "use strict";
+
+ var tour = require("web_tour.tour");
+ var base = require("web_editor.base");
+
+ var steps = [
+ {
+ trigger: "a:contains('Chair floor protection')",
+ },
+ {
+ trigger: "a:contains('Add to Cart')",
+ },
+ {
+ trigger: ".btn-primary:contains('Process Checkout')",
+ },
+ ];
+ tour.register("website_sale_order_type_tour",
+ {
+ url: "/shop",
+ test: true,
+ wait_for: base.ready(),
+ },
+ steps
+ );
+ return {
+ steps: steps,
+ };
+});
diff --git a/website_sale_order_type/tests/test_website_sale_order_type.py b/website_sale_order_type/tests/test_website_sale_order_type.py
index 59c9cde965..9f92e099a2 100644
--- a/website_sale_order_type/tests/test_website_sale_order_type.py
+++ b/website_sale_order_type/tests/test_website_sale_order_type.py
@@ -40,23 +40,12 @@ def create_sale_type(self):
def test_website_sale_order_type(self):
self.partner.sale_type = self.sale_type
existing_orders = self.env['sale.order'].search([])
- # Precreate SO report assets cache to avoid tour step timeouts
- views = (
- "web.assets_common",
- "web.report_assets_common",
- "web.report_assets_pdf",
- )
- for view in views:
- self.env["ir.qweb"]._get_asset_nodes(
- view, self.env.context, js=False)
- self.env["ir.qweb"]._get_asset_nodes(
- view, self.env.context, css=False)
# In frontend, create an order
tour_prefix = "odoo.__DEBUG__.services['web_tour.tour']"
self.phantom_js(
- "/",
- tour_prefix + ".run('shop_buy_product')",
- tour_prefix + ".tours.shop_buy_product.ready",
+ "/shop",
+ tour_prefix + ".run('website_sale_order_type_tour')",
+ tour_prefix + ".tours.website_sale_order_type_tour.ready",
login="admin")
created_order = self.env['sale.order'].search([
('id', 'not in', existing_orders.ids)])
From 1438af73d37427a5c1308f4c3179f06a40fcff83 Mon Sep 17 00:00:00 2001
From: claudiagn
Date: Wed, 20 Jan 2021 17:57:14 +0000
Subject: [PATCH 06/23] Added translation using Weblate (Spanish)
---
website_sale_order_type/i18n/es.po | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
create mode 100644 website_sale_order_type/i18n/es.po
diff --git a/website_sale_order_type/i18n/es.po b/website_sale_order_type/i18n/es.po
new file mode 100644
index 0000000000..94a90fc31d
--- /dev/null
+++ b/website_sale_order_type/i18n/es.po
@@ -0,0 +1,22 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * website_sale_order_type
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 12.0\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: 2021-01-20 20:44+0000\n"
+"Last-Translator: claudiagn \n"
+"Language-Team: none\n"
+"Language: es\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.3.2\n"
+
+#. module: website_sale_order_type
+#: model:ir.model,name:website_sale_order_type.model_sale_order
+msgid "Sale Order"
+msgstr "Pedido de venta"
From 5549998bee4b259a886aa8bd569cc166c8bd3442 Mon Sep 17 00:00:00 2001
From: claudiagn
Date: Wed, 20 Jan 2021 17:57:40 +0000
Subject: [PATCH 07/23] Added translation using Weblate (Catalan)
---
website_sale_order_type/i18n/ca.po | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
create mode 100644 website_sale_order_type/i18n/ca.po
diff --git a/website_sale_order_type/i18n/ca.po b/website_sale_order_type/i18n/ca.po
new file mode 100644
index 0000000000..57e917b300
--- /dev/null
+++ b/website_sale_order_type/i18n/ca.po
@@ -0,0 +1,22 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * website_sale_order_type
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 12.0\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: 2021-01-20 20:44+0000\n"
+"Last-Translator: claudiagn \n"
+"Language-Team: none\n"
+"Language: ca\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.3.2\n"
+
+#. module: website_sale_order_type
+#: model:ir.model,name:website_sale_order_type.model_sale_order
+msgid "Sale Order"
+msgstr "Comanda de venda"
From 34d35d6c03aed1a7402d3bec7b07027a8da20f0a Mon Sep 17 00:00:00 2001
From: david
Date: Mon, 7 Jun 2021 13:27:43 +0200
Subject: [PATCH 08/23] [FIX] webiste_sale_order_type: trigger onchanges
If we don't trigger the onchanges, we won't get some of the default
values that the order type has defined
TT30235
---
website_sale_order_type/__manifest__.py | 2 +-
website_sale_order_type/models/sale_order.py | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/website_sale_order_type/__manifest__.py b/website_sale_order_type/__manifest__.py
index 0ea7a011f6..58f9b11039 100644
--- a/website_sale_order_type/__manifest__.py
+++ b/website_sale_order_type/__manifest__.py
@@ -4,7 +4,7 @@
{
"name": "Website sale order type",
"summary": "This module allows sale_order_type to work with website_sale.",
- "version": "12.0.1.0.0",
+ "version": "12.0.1.1.0",
"development_status": "Beta",
"category": "Website",
"website": "https://github.com/OCA/e-commerce/",
diff --git a/website_sale_order_type/models/sale_order.py b/website_sale_order_type/models/sale_order.py
index 7e988f0143..0c7d6b90e0 100644
--- a/website_sale_order_type/models/sale_order.py
+++ b/website_sale_order_type/models/sale_order.py
@@ -19,4 +19,5 @@ def _cart_update(
self.partner_id.commercial_partner_id.sale_type)
if sale_type:
self.type_id = sale_type
+ self.onchange_type_id()
return res
From c00ac4a2d01ddd8e0e45293e491eb831b6cc1463 Mon Sep 17 00:00:00 2001
From: Oihane Crucelaegui
Date: Thu, 16 Sep 2021 15:54:44 +0200
Subject: [PATCH 09/23] [IMP] website_sale_order_type: black, isort, prettier
---
website_sale_order_type/__manifest__.py | 11 +---
website_sale_order_type/demo/assets.xml | 8 ++-
website_sale_order_type/models/sale_order.py | 26 ++++++--
.../src/js/website_sale_order_type_tour.js | 5 +-
.../tests/test_website_sale_order_type.py | 65 ++++++++++---------
5 files changed, 65 insertions(+), 50 deletions(-)
diff --git a/website_sale_order_type/__manifest__.py b/website_sale_order_type/__manifest__.py
index 58f9b11039..ae75ab80b1 100644
--- a/website_sale_order_type/__manifest__.py
+++ b/website_sale_order_type/__manifest__.py
@@ -11,12 +11,7 @@
"maintainers": ["joao-p-marques"],
"author": "Agile Business Group, Odoo Community Association (OCA)",
"license": "AGPL-3",
- "depends": [
- "website_sale",
- "sale_order_type"
- ],
- "demo": [
- "demo/assets.xml"
- ],
- "auto_install": True
+ "depends": ["website_sale", "sale_order_type"],
+ "demo": ["demo/assets.xml"],
+ "auto_install": True,
}
diff --git a/website_sale_order_type/demo/assets.xml b/website_sale_order_type/demo/assets.xml
index b10d3518f0..3cd4912771 100644
--- a/website_sale_order_type/demo/assets.xml
+++ b/website_sale_order_type/demo/assets.xml
@@ -1,10 +1,12 @@
-
+
-
+
diff --git a/website_sale_order_type/models/sale_order.py b/website_sale_order_type/models/sale_order.py
index 0c7d6b90e0..94a7ecec44 100644
--- a/website_sale_order_type/models/sale_order.py
+++ b/website_sale_order_type/models/sale_order.py
@@ -5,18 +5,30 @@
class SaleOrder(models.Model):
- _inherit = 'sale.order'
+ _inherit = "sale.order"
@api.multi
def _cart_update(
- self, product_id=None, line_id=None, add_qty=0, set_qty=0,
- attributes=None, **kwargs):
+ self,
+ product_id=None,
+ line_id=None,
+ add_qty=0,
+ set_qty=0,
+ attributes=None,
+ **kwargs
+ ):
self.ensure_one()
res = super(SaleOrder, self)._cart_update(
- product_id=product_id, line_id=line_id,
- add_qty=add_qty, set_qty=set_qty, attributes=attributes, **kwargs)
- sale_type = (self.partner_id.sale_type or
- self.partner_id.commercial_partner_id.sale_type)
+ product_id=product_id,
+ line_id=line_id,
+ add_qty=add_qty,
+ set_qty=set_qty,
+ attributes=attributes,
+ **kwargs
+ )
+ sale_type = (
+ self.partner_id.sale_type or self.partner_id.commercial_partner_id.sale_type
+ )
if sale_type:
self.type_id = sale_type
self.onchange_type_id()
diff --git a/website_sale_order_type/static/src/js/website_sale_order_type_tour.js b/website_sale_order_type/static/src/js/website_sale_order_type_tour.js
index ad622289ab..d4ab92edda 100644
--- a/website_sale_order_type/static/src/js/website_sale_order_type_tour.js
+++ b/website_sale_order_type/static/src/js/website_sale_order_type_tour.js
@@ -1,7 +1,7 @@
/* Copyright 2020 Tecnativa - João Marques
* License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). */
- odoo.define("website_sale_order_type.tour", function (require) {
+odoo.define("website_sale_order_type.tour", function(require) {
"use strict";
var tour = require("web_tour.tour");
@@ -18,7 +18,8 @@
trigger: ".btn-primary:contains('Process Checkout')",
},
];
- tour.register("website_sale_order_type_tour",
+ tour.register(
+ "website_sale_order_type_tour",
{
url: "/shop",
test: true,
diff --git a/website_sale_order_type/tests/test_website_sale_order_type.py b/website_sale_order_type/tests/test_website_sale_order_type.py
index 9f92e099a2..21ef345805 100644
--- a/website_sale_order_type/tests/test_website_sale_order_type.py
+++ b/website_sale_order_type/tests/test_website_sale_order_type.py
@@ -4,49 +4,54 @@
class TestFrontend(HttpCase):
-
def setUp(self):
super(TestFrontend, self).setUp()
- self.sale_type_model = self.env['sale.order.type']
+ self.sale_type_model = self.env["sale.order.type"]
- self.partner = self.env.ref('base.partner_admin')
+ self.partner = self.env.ref("base.partner_admin")
self.sale_type = self.create_sale_type()
def create_sale_type(self):
- self.sequence = self.env['ir.sequence'].create({
- 'name': 'Test Sales Order',
- 'code': 'sale.order',
- 'prefix': 'TSO',
- 'padding': 3,
- })
- self.journal = self.env['account.journal'].search(
- [('type', '=', 'sale')], limit=1)
- self.warehouse = self.env.ref('stock.stock_warehouse_shop0')
- self.immediate_payment = self.env.ref(
- 'account.account_payment_term_immediate')
- self.sale_pricelist = self.env.ref('product.list0')
- self.free_carrier = self.env.ref('account.incoterm_FCA')
- return self.sale_type_model.create({
- 'name': 'Test Sale Order Type',
- 'sequence_id': self.sequence.id,
- 'journal_id': self.journal.id,
- 'warehouse_id': self.warehouse.id,
- 'picking_policy': 'one',
- 'payment_term_id': self.immediate_payment.id,
- 'pricelist_id': self.sale_pricelist.id,
- 'incoterm_id': self.free_carrier.id,
- })
+ self.sequence = self.env["ir.sequence"].create(
+ {
+ "name": "Test Sales Order",
+ "code": "sale.order",
+ "prefix": "TSO",
+ "padding": 3,
+ }
+ )
+ self.journal = self.env["account.journal"].search(
+ [("type", "=", "sale")], limit=1
+ )
+ self.warehouse = self.env.ref("stock.stock_warehouse_shop0")
+ self.immediate_payment = self.env.ref("account.account_payment_term_immediate")
+ self.sale_pricelist = self.env.ref("product.list0")
+ self.free_carrier = self.env.ref("account.incoterm_FCA")
+ return self.sale_type_model.create(
+ {
+ "name": "Test Sale Order Type",
+ "sequence_id": self.sequence.id,
+ "journal_id": self.journal.id,
+ "warehouse_id": self.warehouse.id,
+ "picking_policy": "one",
+ "payment_term_id": self.immediate_payment.id,
+ "pricelist_id": self.sale_pricelist.id,
+ "incoterm_id": self.free_carrier.id,
+ }
+ )
def test_website_sale_order_type(self):
self.partner.sale_type = self.sale_type
- existing_orders = self.env['sale.order'].search([])
+ existing_orders = self.env["sale.order"].search([])
# In frontend, create an order
tour_prefix = "odoo.__DEBUG__.services['web_tour.tour']"
self.phantom_js(
"/shop",
tour_prefix + ".run('website_sale_order_type_tour')",
tour_prefix + ".tours.website_sale_order_type_tour.ready",
- login="admin")
- created_order = self.env['sale.order'].search([
- ('id', 'not in', existing_orders.ids)])
+ login="admin",
+ )
+ created_order = self.env["sale.order"].search(
+ [("id", "not in", existing_orders.ids)]
+ )
self.assertEqual(created_order.type_id, self.sale_type)
From 0253a89204ff55d226f4c0cf638afc543075c7d2 Mon Sep 17 00:00:00 2001
From: Oihane Crucelaegui
Date: Thu, 16 Sep 2021 16:01:29 +0200
Subject: [PATCH 10/23] [MIG] website_sale_order_type: Migration to 13.0
---
website_sale_order_type/README.rst | 12 ++++++------
website_sale_order_type/__manifest__.py | 2 +-
.../i18n/website_sale_order_type.pot | 9 ++++-----
website_sale_order_type/models/sale_order.py | 5 ++---
website_sale_order_type/readme/DESCRIPTION.rst | 2 +-
.../static/description/index.html | 8 ++++----
.../static/src/js/website_sale_order_type_tour.js | 6 +++---
.../tests/test_website_sale_order_type.py | 10 ++--------
8 files changed, 23 insertions(+), 31 deletions(-)
diff --git a/website_sale_order_type/README.rst b/website_sale_order_type/README.rst
index fca8369b9f..95a728db02 100644
--- a/website_sale_order_type/README.rst
+++ b/website_sale_order_type/README.rst
@@ -14,18 +14,18 @@ Website sale order type
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fe--commerce-lightgray.png?logo=github
- :target: https://github.com/OCA/e-commerce/tree/12.0/website_sale_order_type
+ :target: https://github.com/OCA/e-commerce/tree/13.0/website_sale_order_type
:alt: OCA/e-commerce
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/e-commerce-12-0/e-commerce-12-0-website_sale_order_type
+ :target: https://translation.odoo-community.org/projects/e-commerce-13-0/e-commerce-13-0-website_sale_order_type
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
- :target: https://runbot.odoo-community.org/runbot/113/12.0
+ :target: https://runbot.odoo-community.org/runbot/113/13.0
:alt: Try me on Runbot
|badge1| |badge2| |badge3| |badge4| |badge5|
-This module allows `sale_order_type `__ to work with website_sale.
+This module allows `sale_order_type `__ to work with website_sale.
This module is useful for users having a sale order type defined in their Partner form:
when these users buy a product in the e-commerce, the sale order generated will have the same sale order type that is defined in their Partner form.
@@ -50,7 +50,7 @@ Bug Tracker
Bugs are tracked on `GitHub Issues `_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-`feedback `_.
+`feedback `_.
Do not contact contributors directly about support or help with technical issues.
@@ -92,6 +92,6 @@ Current `maintainer `__:
|maintainer-joao-p-marques|
-This module is part of the `OCA/e-commerce `_ project on GitHub.
+This module is part of the `OCA/e-commerce `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/website_sale_order_type/__manifest__.py b/website_sale_order_type/__manifest__.py
index ae75ab80b1..5edd0a9f4d 100644
--- a/website_sale_order_type/__manifest__.py
+++ b/website_sale_order_type/__manifest__.py
@@ -4,7 +4,7 @@
{
"name": "Website sale order type",
"summary": "This module allows sale_order_type to work with website_sale.",
- "version": "12.0.1.1.0",
+ "version": "13.0.1.0.0",
"development_status": "Beta",
"category": "Website",
"website": "https://github.com/OCA/e-commerce/",
diff --git a/website_sale_order_type/i18n/website_sale_order_type.pot b/website_sale_order_type/i18n/website_sale_order_type.pot
index 918bcf3b6d..0dab0a8f58 100644
--- a/website_sale_order_type/i18n/website_sale_order_type.pot
+++ b/website_sale_order_type/i18n/website_sale_order_type.pot
@@ -1,12 +1,12 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
-# * website_sale_order_type
+# * website_sale_order_type
#
msgid ""
msgstr ""
-"Project-Id-Version: Odoo Server 12.0\n"
+"Project-Id-Version: Odoo Server 13.0\n"
"Report-Msgid-Bugs-To: \n"
-"Last-Translator: <>\n"
+"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -15,6 +15,5 @@ msgstr ""
#. module: website_sale_order_type
#: model:ir.model,name:website_sale_order_type.model_sale_order
-msgid "Sale Order"
+msgid "Sales Order"
msgstr ""
-
diff --git a/website_sale_order_type/models/sale_order.py b/website_sale_order_type/models/sale_order.py
index 94a7ecec44..ba6e5378e2 100644
--- a/website_sale_order_type/models/sale_order.py
+++ b/website_sale_order_type/models/sale_order.py
@@ -1,13 +1,12 @@
# Copyright 2018 Simone Rubino - Agile Business Group
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
-from odoo import api, models
+from odoo import models
class SaleOrder(models.Model):
_inherit = "sale.order"
- @api.multi
def _cart_update(
self,
product_id=None,
@@ -18,7 +17,7 @@ def _cart_update(
**kwargs
):
self.ensure_one()
- res = super(SaleOrder, self)._cart_update(
+ res = super()._cart_update(
product_id=product_id,
line_id=line_id,
add_qty=add_qty,
diff --git a/website_sale_order_type/readme/DESCRIPTION.rst b/website_sale_order_type/readme/DESCRIPTION.rst
index d364f3c6ce..51d5b8aeaa 100644
--- a/website_sale_order_type/readme/DESCRIPTION.rst
+++ b/website_sale_order_type/readme/DESCRIPTION.rst
@@ -1,4 +1,4 @@
-This module allows `sale_order_type `__ to work with website_sale.
+This module allows `sale_order_type `__ to work with website_sale.
This module is useful for users having a sale order type defined in their Partner form:
when these users buy a product in the e-commerce, the sale order generated will have the same sale order type that is defined in their Partner form.
diff --git a/website_sale_order_type/static/description/index.html b/website_sale_order_type/static/description/index.html
index 671e57992e..c92d3756b6 100644
--- a/website_sale_order_type/static/description/index.html
+++ b/website_sale_order_type/static/description/index.html
@@ -367,8 +367,8 @@ Website sale order type
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-

-This module allows sale_order_type to work with website_sale.
+

+This module allows sale_order_type to work with website_sale.
This module is useful for users having a sale order type defined in their Partner form:
when these users buy a product in the e-commerce, the sale order generated will have the same sale order type that is defined in their Partner form.
Note that the sale order type is defined contact by contact and not at Company level.
@@ -398,7 +398,7 @@
Bugs are tracked on GitHub Issues.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-feedback.
+feedback.
Do not contact contributors directly about support or help with technical issues.
diff --git a/website_sale_order_type/static/src/js/website_sale_order_type_tour.js b/website_sale_order_type/static/src/js/website_sale_order_type_tour.js
index d4ab92edda..048587fd95 100644
--- a/website_sale_order_type/static/src/js/website_sale_order_type_tour.js
+++ b/website_sale_order_type/static/src/js/website_sale_order_type_tour.js
@@ -9,13 +9,13 @@ odoo.define("website_sale_order_type.tour", function(require) {
var steps = [
{
- trigger: "a:contains('Chair floor protection')",
+ trigger: ".oe_product_cart a:contains('Customizable')",
},
{
- trigger: "a:contains('Add to Cart')",
+ trigger: "#add_to_cart",
},
{
- trigger: ".btn-primary:contains('Process Checkout')",
+ trigger: ".btn:contains('Process Checkout')",
},
];
tour.register(
diff --git a/website_sale_order_type/tests/test_website_sale_order_type.py b/website_sale_order_type/tests/test_website_sale_order_type.py
index 21ef345805..1047b1af31 100644
--- a/website_sale_order_type/tests/test_website_sale_order_type.py
+++ b/website_sale_order_type/tests/test_website_sale_order_type.py
@@ -23,7 +23,7 @@ def create_sale_type(self):
self.journal = self.env["account.journal"].search(
[("type", "=", "sale")], limit=1
)
- self.warehouse = self.env.ref("stock.stock_warehouse_shop0")
+ self.warehouse = self.env.ref("stock.warehouse0")
self.immediate_payment = self.env.ref("account.account_payment_term_immediate")
self.sale_pricelist = self.env.ref("product.list0")
self.free_carrier = self.env.ref("account.incoterm_FCA")
@@ -44,13 +44,7 @@ def test_website_sale_order_type(self):
self.partner.sale_type = self.sale_type
existing_orders = self.env["sale.order"].search([])
# In frontend, create an order
- tour_prefix = "odoo.__DEBUG__.services['web_tour.tour']"
- self.phantom_js(
- "/shop",
- tour_prefix + ".run('website_sale_order_type_tour')",
- tour_prefix + ".tours.website_sale_order_type_tour.ready",
- login="admin",
- )
+ self.start_tour("/shop", "website_sale_order_type_tour", login="admin")
created_order = self.env["sale.order"].search(
[("id", "not in", existing_orders.ids)]
)
From 9470b42c2c795f39365a821ec2a4ce5c3a10c892 Mon Sep 17 00:00:00 2001
From: Oihane Crucelaegui
Date: Tue, 21 Sep 2021 12:45:50 +0200
Subject: [PATCH 11/23] [IMP] website_sale_order_type: black, isort, prettier
---
website_sale_order_type/__manifest__.py | 2 +-
.../static/src/js/website_sale_order_type_tour.js | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/website_sale_order_type/__manifest__.py b/website_sale_order_type/__manifest__.py
index 5edd0a9f4d..e209b4b49c 100644
--- a/website_sale_order_type/__manifest__.py
+++ b/website_sale_order_type/__manifest__.py
@@ -7,7 +7,7 @@
"version": "13.0.1.0.0",
"development_status": "Beta",
"category": "Website",
- "website": "https://github.com/OCA/e-commerce/",
+ "website": "https://github.com/OCA/e-commerce",
"maintainers": ["joao-p-marques"],
"author": "Agile Business Group, Odoo Community Association (OCA)",
"license": "AGPL-3",
diff --git a/website_sale_order_type/static/src/js/website_sale_order_type_tour.js b/website_sale_order_type/static/src/js/website_sale_order_type_tour.js
index 048587fd95..87bd8f91b5 100644
--- a/website_sale_order_type/static/src/js/website_sale_order_type_tour.js
+++ b/website_sale_order_type/static/src/js/website_sale_order_type_tour.js
@@ -1,7 +1,7 @@
/* Copyright 2020 Tecnativa - João Marques
* License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). */
-odoo.define("website_sale_order_type.tour", function(require) {
+odoo.define("website_sale_order_type.tour", function (require) {
"use strict";
var tour = require("web_tour.tour");
From 25c017f2faf02e80ded886348865d57abd466fd3 Mon Sep 17 00:00:00 2001
From: Oihane Crucelaegui
Date: Tue, 21 Sep 2021 12:47:07 +0200
Subject: [PATCH 12/23] [MIG] website_sale_order_type: Migration to 14.0
---
website_sale_order_type/README.rst | 12 ++++++------
website_sale_order_type/__manifest__.py | 2 +-
.../i18n/website_sale_order_type.pot | 17 ++++++++++++++++-
website_sale_order_type/readme/DESCRIPTION.rst | 2 +-
.../static/description/index.html | 8 ++++----
5 files changed, 28 insertions(+), 13 deletions(-)
diff --git a/website_sale_order_type/README.rst b/website_sale_order_type/README.rst
index 95a728db02..69f8d2e640 100644
--- a/website_sale_order_type/README.rst
+++ b/website_sale_order_type/README.rst
@@ -14,18 +14,18 @@ Website sale order type
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fe--commerce-lightgray.png?logo=github
- :target: https://github.com/OCA/e-commerce/tree/13.0/website_sale_order_type
+ :target: https://github.com/OCA/e-commerce/tree/14.0/website_sale_order_type
:alt: OCA/e-commerce
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/e-commerce-13-0/e-commerce-13-0-website_sale_order_type
+ :target: https://translation.odoo-community.org/projects/e-commerce-14-0/e-commerce-14-0-website_sale_order_type
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
- :target: https://runbot.odoo-community.org/runbot/113/13.0
+ :target: https://runbot.odoo-community.org/runbot/113/14.0
:alt: Try me on Runbot
|badge1| |badge2| |badge3| |badge4| |badge5|
-This module allows `sale_order_type `__ to work with website_sale.
+This module allows `sale_order_type `__ to work with website_sale.
This module is useful for users having a sale order type defined in their Partner form:
when these users buy a product in the e-commerce, the sale order generated will have the same sale order type that is defined in their Partner form.
@@ -50,7 +50,7 @@ Bug Tracker
Bugs are tracked on `GitHub Issues `_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-`feedback `_.
+`feedback `_.
Do not contact contributors directly about support or help with technical issues.
@@ -92,6 +92,6 @@ Current `maintainer `__:
|maintainer-joao-p-marques|
-This module is part of the `OCA/e-commerce `_ project on GitHub.
+This module is part of the `OCA/e-commerce `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/website_sale_order_type/__manifest__.py b/website_sale_order_type/__manifest__.py
index e209b4b49c..04cf943fee 100644
--- a/website_sale_order_type/__manifest__.py
+++ b/website_sale_order_type/__manifest__.py
@@ -4,7 +4,7 @@
{
"name": "Website sale order type",
"summary": "This module allows sale_order_type to work with website_sale.",
- "version": "13.0.1.0.0",
+ "version": "14.0.1.0.0",
"development_status": "Beta",
"category": "Website",
"website": "https://github.com/OCA/e-commerce",
diff --git a/website_sale_order_type/i18n/website_sale_order_type.pot b/website_sale_order_type/i18n/website_sale_order_type.pot
index 0dab0a8f58..66cbea9f08 100644
--- a/website_sale_order_type/i18n/website_sale_order_type.pot
+++ b/website_sale_order_type/i18n/website_sale_order_type.pot
@@ -4,7 +4,7 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Odoo Server 13.0\n"
+"Project-Id-Version: Odoo Server 14.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -13,6 +13,21 @@ msgstr ""
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"
+#. module: website_sale_order_type
+#: model:ir.model.fields,field_description:website_sale_order_type.field_sale_order__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: website_sale_order_type
+#: model:ir.model.fields,field_description:website_sale_order_type.field_sale_order__id
+msgid "ID"
+msgstr ""
+
+#. module: website_sale_order_type
+#: model:ir.model.fields,field_description:website_sale_order_type.field_sale_order____last_update
+msgid "Last Modified on"
+msgstr ""
+
#. module: website_sale_order_type
#: model:ir.model,name:website_sale_order_type.model_sale_order
msgid "Sales Order"
diff --git a/website_sale_order_type/readme/DESCRIPTION.rst b/website_sale_order_type/readme/DESCRIPTION.rst
index 51d5b8aeaa..3735810d1b 100644
--- a/website_sale_order_type/readme/DESCRIPTION.rst
+++ b/website_sale_order_type/readme/DESCRIPTION.rst
@@ -1,4 +1,4 @@
-This module allows `sale_order_type `__ to work with website_sale.
+This module allows `sale_order_type `__ to work with website_sale.
This module is useful for users having a sale order type defined in their Partner form:
when these users buy a product in the e-commerce, the sale order generated will have the same sale order type that is defined in their Partner form.
diff --git a/website_sale_order_type/static/description/index.html b/website_sale_order_type/static/description/index.html
index c92d3756b6..adbf1a93f9 100644
--- a/website_sale_order_type/static/description/index.html
+++ b/website_sale_order_type/static/description/index.html
@@ -367,8 +367,8 @@ Website sale order type
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-

-This module allows sale_order_type to work with website_sale.
+

+This module allows sale_order_type to work with website_sale.
This module is useful for users having a sale order type defined in their Partner form:
when these users buy a product in the e-commerce, the sale order generated will have the same sale order type that is defined in their Partner form.
Note that the sale order type is defined contact by contact and not at Company level.
@@ -398,7 +398,7 @@
Bugs are tracked on GitHub Issues.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-feedback.
+feedback.
Do not contact contributors directly about support or help with technical issues.
From 9ce51be9a9ae28bc476a3394a6c4f2608b4092d6 Mon Sep 17 00:00:00 2001
From: Stefan
Date: Thu, 15 Dec 2022 12:21:02 +0100
Subject: [PATCH 13/23] [15.0][MIG] website_sale_order_type: Migration to
version 15.0
TT37013
---
website_sale_order_type/README.rst | 26 ++++++++++++-------
website_sale_order_type/__manifest__.py | 10 ++++---
website_sale_order_type/demo/assets.xml | 12 ---------
.../i18n/website_sale_order_type.pot | 19 ++------------
website_sale_order_type/models/sale_order.py | 1 +
.../readme/CONTRIBUTORS.rst | 3 +++
.../static/description/index.html | 12 +++++----
.../src/js/website_sale_order_type_tour.js | 4 +++
8 files changed, 40 insertions(+), 47 deletions(-)
delete mode 100644 website_sale_order_type/demo/assets.xml
diff --git a/website_sale_order_type/README.rst b/website_sale_order_type/README.rst
index 69f8d2e640..e720a5e5c3 100644
--- a/website_sale_order_type/README.rst
+++ b/website_sale_order_type/README.rst
@@ -14,13 +14,13 @@ Website sale order type
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fe--commerce-lightgray.png?logo=github
- :target: https://github.com/OCA/e-commerce/tree/14.0/website_sale_order_type
+ :target: https://github.com/OCA/e-commerce/tree/15.0/website_sale_order_type
:alt: OCA/e-commerce
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/e-commerce-14-0/e-commerce-14-0-website_sale_order_type
+ :target: https://translation.odoo-community.org/projects/e-commerce-15-0/e-commerce-15-0-website_sale_order_type
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
- :target: https://runbot.odoo-community.org/runbot/113/14.0
+ :target: https://runbot.odoo-community.org/runbot/113/15.0
:alt: Try me on Runbot
|badge1| |badge2| |badge3| |badge4| |badge5|
@@ -50,7 +50,7 @@ Bug Tracker
Bugs are tracked on `GitHub Issues `_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-`feedback `_.
+`feedback `_.
Do not contact contributors directly about support or help with technical issues.
@@ -67,9 +67,12 @@ Contributors
* Simone Rubino
+
* `Tecnativa `_:
* João Marques
+ * Pilar Vargas
+ * Stefan Ungureanu
Maintainers
~~~~~~~~~~~
@@ -84,14 +87,17 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
-.. |maintainer-joao-p-marques| image:: https://github.com/joao-p-marques.png?size=40px
- :target: https://github.com/joao-p-marques
- :alt: joao-p-marques
+.. |maintainer-stefan-tecnativa| image:: https://github.com/stefan-tecnativa.png?size=40px
+ :target: https://github.com/stefan-tecnativa
+ :alt: stefan-tecnativa
+.. |maintainer-pilarvargas-tecnativa| image:: https://github.com/pilarvargas-tecnativa.png?size=40px
+ :target: https://github.com/pilarvargas-tecnativa
+ :alt: pilarvargas-tecnativa
-Current `maintainer `__:
+Current `maintainers `__:
-|maintainer-joao-p-marques|
+|maintainer-stefan-tecnativa| |maintainer-pilarvargas-tecnativa|
-This module is part of the `OCA/e-commerce `_ project on GitHub.
+This module is part of the `OCA/e-commerce `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/website_sale_order_type/__manifest__.py b/website_sale_order_type/__manifest__.py
index 04cf943fee..6b8bc76a00 100644
--- a/website_sale_order_type/__manifest__.py
+++ b/website_sale_order_type/__manifest__.py
@@ -4,14 +4,18 @@
{
"name": "Website sale order type",
"summary": "This module allows sale_order_type to work with website_sale.",
- "version": "14.0.1.0.0",
+ "version": "15.0.1.0.0",
"development_status": "Beta",
"category": "Website",
"website": "https://github.com/OCA/e-commerce",
- "maintainers": ["joao-p-marques"],
+ "maintainers": ["stefan-tecnativa", "pilarvargas-tecnativa"],
"author": "Agile Business Group, Odoo Community Association (OCA)",
"license": "AGPL-3",
"depends": ["website_sale", "sale_order_type"],
- "demo": ["demo/assets.xml"],
+ "assets": {
+ "web.assets_tests": [
+ "/website_sale_order_type/static/src/js/website_sale_order_type_tour.js"
+ ]
+ },
"auto_install": True,
}
diff --git a/website_sale_order_type/demo/assets.xml b/website_sale_order_type/demo/assets.xml
deleted file mode 100644
index 3cd4912771..0000000000
--- a/website_sale_order_type/demo/assets.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
diff --git a/website_sale_order_type/i18n/website_sale_order_type.pot b/website_sale_order_type/i18n/website_sale_order_type.pot
index 66cbea9f08..6fe2341ac7 100644
--- a/website_sale_order_type/i18n/website_sale_order_type.pot
+++ b/website_sale_order_type/i18n/website_sale_order_type.pot
@@ -4,7 +4,7 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Odoo Server 14.0\n"
+"Project-Id-Version: Odoo Server 15.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -13,22 +13,7 @@ msgstr ""
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"
-#. module: website_sale_order_type
-#: model:ir.model.fields,field_description:website_sale_order_type.field_sale_order__display_name
-msgid "Display Name"
-msgstr ""
-
-#. module: website_sale_order_type
-#: model:ir.model.fields,field_description:website_sale_order_type.field_sale_order__id
-msgid "ID"
-msgstr ""
-
-#. module: website_sale_order_type
-#: model:ir.model.fields,field_description:website_sale_order_type.field_sale_order____last_update
-msgid "Last Modified on"
-msgstr ""
-
#. module: website_sale_order_type
#: model:ir.model,name:website_sale_order_type.model_sale_order
-msgid "Sales Order"
+msgid "Allowing sale_order_type to work with website_sale."
msgstr ""
diff --git a/website_sale_order_type/models/sale_order.py b/website_sale_order_type/models/sale_order.py
index ba6e5378e2..05569363a0 100644
--- a/website_sale_order_type/models/sale_order.py
+++ b/website_sale_order_type/models/sale_order.py
@@ -6,6 +6,7 @@
class SaleOrder(models.Model):
_inherit = "sale.order"
+ _description = "Allowing sale_order_type to work with website_sale."
def _cart_update(
self,
diff --git a/website_sale_order_type/readme/CONTRIBUTORS.rst b/website_sale_order_type/readme/CONTRIBUTORS.rst
index 01ed86b848..a26aad01ea 100644
--- a/website_sale_order_type/readme/CONTRIBUTORS.rst
+++ b/website_sale_order_type/readme/CONTRIBUTORS.rst
@@ -1,5 +1,8 @@
* Simone Rubino
+
* `Tecnativa `_:
* João Marques
+ * Pilar Vargas
+ * Stefan Ungureanu
diff --git a/website_sale_order_type/static/description/index.html b/website_sale_order_type/static/description/index.html
index adbf1a93f9..f3cddd18a6 100644
--- a/website_sale_order_type/static/description/index.html
+++ b/website_sale_order_type/static/description/index.html
@@ -367,7 +367,7 @@ Website sale order type
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-

+

This module allows sale_order_type to work with website_sale.
This module is useful for users having a sale order type defined in their Partner form:
when these users buy a product in the e-commerce, the sale order generated will have the same sale order type that is defined in their Partner form.
@@ -398,7 +398,7 @@
Bugs are tracked on GitHub Issues.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-feedback.
+feedback.
Do not contact contributors directly about support or help with technical issues.
@@ -418,6 +418,8 @@
- João Marques
+- Pilar Vargas
+- Stefan Ungureanu
@@ -430,9 +432,9 @@
OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
-
Current maintainer:
-

-
This module is part of the OCA/e-commerce project on GitHub.
+
Current maintainers:
+

+
This module is part of the OCA/e-commerce project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/website_sale_order_type/static/src/js/website_sale_order_type_tour.js b/website_sale_order_type/static/src/js/website_sale_order_type_tour.js
index 87bd8f91b5..85680b6ee5 100644
--- a/website_sale_order_type/static/src/js/website_sale_order_type_tour.js
+++ b/website_sale_order_type/static/src/js/website_sale_order_type_tour.js
@@ -14,6 +14,10 @@ odoo.define("website_sale_order_type.tour", function (require) {
{
trigger: "#add_to_cart",
},
+ {
+ trigger: "a[href='/shop/cart']",
+ extra_trigger: "sup.my_cart_quantity:contains('1')",
+ },
{
trigger: ".btn:contains('Process Checkout')",
},
From 102370ba09cb5f869819d9d13d98aabe64a86a5d Mon Sep 17 00:00:00 2001
From: Weblate
Date: Fri, 16 Dec 2022 12:47:46 +0000
Subject: [PATCH 14/23] Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Translation: e-commerce-15.0/e-commerce-15.0-website_sale_order_type
Translate-URL: https://translation.odoo-community.org/projects/e-commerce-15-0/e-commerce-15-0-website_sale_order_type/
---
website_sale_order_type/i18n/ca.po | 9 ++++++---
website_sale_order_type/i18n/es.po | 9 ++++++---
2 files changed, 12 insertions(+), 6 deletions(-)
diff --git a/website_sale_order_type/i18n/ca.po b/website_sale_order_type/i18n/ca.po
index 57e917b300..5b9f478bf6 100644
--- a/website_sale_order_type/i18n/ca.po
+++ b/website_sale_order_type/i18n/ca.po
@@ -1,6 +1,6 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
-# * website_sale_order_type
+# * website_sale_order_type
#
msgid ""
msgstr ""
@@ -18,5 +18,8 @@ msgstr ""
#. module: website_sale_order_type
#: model:ir.model,name:website_sale_order_type.model_sale_order
-msgid "Sale Order"
-msgstr "Comanda de venda"
+msgid "Allowing sale_order_type to work with website_sale."
+msgstr ""
+
+#~ msgid "Sale Order"
+#~ msgstr "Comanda de venda"
diff --git a/website_sale_order_type/i18n/es.po b/website_sale_order_type/i18n/es.po
index 94a90fc31d..214ba1b9bf 100644
--- a/website_sale_order_type/i18n/es.po
+++ b/website_sale_order_type/i18n/es.po
@@ -1,6 +1,6 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
-# * website_sale_order_type
+# * website_sale_order_type
#
msgid ""
msgstr ""
@@ -18,5 +18,8 @@ msgstr ""
#. module: website_sale_order_type
#: model:ir.model,name:website_sale_order_type.model_sale_order
-msgid "Sale Order"
-msgstr "Pedido de venta"
+msgid "Allowing sale_order_type to work with website_sale."
+msgstr ""
+
+#~ msgid "Sale Order"
+#~ msgstr "Pedido de venta"
From a4f7f4405039835c998c2522ed2de83a9fcaed11 Mon Sep 17 00:00:00 2001
From: Ivorra78
Date: Wed, 5 Jul 2023 11:05:47 +0000
Subject: [PATCH 15/23] Translated using Weblate (Spanish)
Currently translated at 100.0% (1 of 1 strings)
Translation: e-commerce-15.0/e-commerce-15.0-website_sale_order_type
Translate-URL: https://translation.odoo-community.org/projects/e-commerce-15-0/e-commerce-15-0-website_sale_order_type/es/
---
website_sale_order_type/i18n/es.po | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/website_sale_order_type/i18n/es.po b/website_sale_order_type/i18n/es.po
index 214ba1b9bf..8e160df18c 100644
--- a/website_sale_order_type/i18n/es.po
+++ b/website_sale_order_type/i18n/es.po
@@ -6,20 +6,20 @@ msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 12.0\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2021-01-20 20:44+0000\n"
-"Last-Translator: claudiagn \n"
+"PO-Revision-Date: 2023-07-05 11:10+0000\n"
+"Last-Translator: Ivorra78 \n"
"Language-Team: none\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.3.2\n"
+"X-Generator: Weblate 4.17\n"
#. module: website_sale_order_type
#: model:ir.model,name:website_sale_order_type.model_sale_order
msgid "Allowing sale_order_type to work with website_sale."
-msgstr ""
+msgstr "Permitir que sale_order_type funcione con website_sale."
#~ msgid "Sale Order"
#~ msgstr "Pedido de venta"
From 18e4ae11c80dfcfba3318ff4e55e32a657bd8539 Mon Sep 17 00:00:00 2001
From: pilarvargas-tecnativa
Date: Thu, 10 Aug 2023 13:01:04 +0200
Subject: [PATCH 16/23] [MIG] website_sale_order_type: Migration to version
16.0
TT44380
---
website_sale_order_type/README.rst | 23 +++++-----
website_sale_order_type/__manifest__.py | 2 +-
.../i18n/website_sale_order_type.pot | 6 +--
website_sale_order_type/models/__init__.py | 2 +-
website_sale_order_type/models/sale_order.py | 35 ---------------
website_sale_order_type/models/website.py | 18 ++++++++
.../static/description/index.html | 44 ++++++++++---------
.../src/js/website_sale_order_type_tour.js | 5 +--
.../tests/test_website_sale_order_type.py | 3 +-
9 files changed, 62 insertions(+), 76 deletions(-)
delete mode 100644 website_sale_order_type/models/sale_order.py
create mode 100644 website_sale_order_type/models/website.py
diff --git a/website_sale_order_type/README.rst b/website_sale_order_type/README.rst
index e720a5e5c3..847ad685b9 100644
--- a/website_sale_order_type/README.rst
+++ b/website_sale_order_type/README.rst
@@ -2,10 +2,13 @@
Website sale order type
=======================
-.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+..
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ !! source digest: sha256:0f39a547d2e1ceb92b5aa6b8751b67a1e263224a712a6519667c94d370f1a8f1
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
@@ -14,16 +17,16 @@ Website sale order type
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fe--commerce-lightgray.png?logo=github
- :target: https://github.com/OCA/e-commerce/tree/15.0/website_sale_order_type
+ :target: https://github.com/OCA/e-commerce/tree/16.0/website_sale_order_type
:alt: OCA/e-commerce
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/e-commerce-15-0/e-commerce-15-0-website_sale_order_type
+ :target: https://translation.odoo-community.org/projects/e-commerce-16-0/e-commerce-16-0-website_sale_order_type
:alt: Translate me on Weblate
-.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
- :target: https://runbot.odoo-community.org/runbot/113/15.0
- :alt: Try me on Runbot
+.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
+ :target: https://runboat.odoo-community.org/builds?repo=OCA/e-commerce&target_branch=16.0
+ :alt: Try me on Runboat
-|badge1| |badge2| |badge3| |badge4| |badge5|
+|badge1| |badge2| |badge3| |badge4| |badge5|
This module allows `sale_order_type `__ to work with website_sale.
@@ -49,8 +52,8 @@ Bug Tracker
Bugs are tracked on `GitHub Issues `_.
In case of trouble, please check there if your issue has already been reported.
-If you spotted it first, help us smashing it by providing a detailed and welcomed
-`feedback `_.
+If you spotted it first, help us to smash it by providing a detailed and welcomed
+`feedback `_.
Do not contact contributors directly about support or help with technical issues.
@@ -98,6 +101,6 @@ Current `maintainers `__:
|maintainer-stefan-tecnativa| |maintainer-pilarvargas-tecnativa|
-This module is part of the `OCA/e-commerce `_ project on GitHub.
+This module is part of the `OCA/e-commerce `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/website_sale_order_type/__manifest__.py b/website_sale_order_type/__manifest__.py
index 6b8bc76a00..d60b35e9e8 100644
--- a/website_sale_order_type/__manifest__.py
+++ b/website_sale_order_type/__manifest__.py
@@ -4,7 +4,7 @@
{
"name": "Website sale order type",
"summary": "This module allows sale_order_type to work with website_sale.",
- "version": "15.0.1.0.0",
+ "version": "16.0.1.0.0",
"development_status": "Beta",
"category": "Website",
"website": "https://github.com/OCA/e-commerce",
diff --git a/website_sale_order_type/i18n/website_sale_order_type.pot b/website_sale_order_type/i18n/website_sale_order_type.pot
index 6fe2341ac7..5931ce8a11 100644
--- a/website_sale_order_type/i18n/website_sale_order_type.pot
+++ b/website_sale_order_type/i18n/website_sale_order_type.pot
@@ -4,7 +4,7 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Odoo Server 15.0\n"
+"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -14,6 +14,6 @@ msgstr ""
"Plural-Forms: \n"
#. module: website_sale_order_type
-#: model:ir.model,name:website_sale_order_type.model_sale_order
-msgid "Allowing sale_order_type to work with website_sale."
+#: model:ir.model,name:website_sale_order_type.model_website
+msgid "Website"
msgstr ""
diff --git a/website_sale_order_type/models/__init__.py b/website_sale_order_type/models/__init__.py
index cbd69320b0..971da6cda6 100644
--- a/website_sale_order_type/models/__init__.py
+++ b/website_sale_order_type/models/__init__.py
@@ -1,3 +1,3 @@
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
-from . import sale_order
+from . import website
diff --git a/website_sale_order_type/models/sale_order.py b/website_sale_order_type/models/sale_order.py
deleted file mode 100644
index 05569363a0..0000000000
--- a/website_sale_order_type/models/sale_order.py
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 2018 Simone Rubino - Agile Business Group
-# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
-
-from odoo import models
-
-
-class SaleOrder(models.Model):
- _inherit = "sale.order"
- _description = "Allowing sale_order_type to work with website_sale."
-
- def _cart_update(
- self,
- product_id=None,
- line_id=None,
- add_qty=0,
- set_qty=0,
- attributes=None,
- **kwargs
- ):
- self.ensure_one()
- res = super()._cart_update(
- product_id=product_id,
- line_id=line_id,
- add_qty=add_qty,
- set_qty=set_qty,
- attributes=attributes,
- **kwargs
- )
- sale_type = (
- self.partner_id.sale_type or self.partner_id.commercial_partner_id.sale_type
- )
- if sale_type:
- self.type_id = sale_type
- self.onchange_type_id()
- return res
diff --git a/website_sale_order_type/models/website.py b/website_sale_order_type/models/website.py
new file mode 100644
index 0000000000..c988e6921e
--- /dev/null
+++ b/website_sale_order_type/models/website.py
@@ -0,0 +1,18 @@
+# Copyright 2023 Tecnativa - Pilar Vargas
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
+
+from odoo import models
+
+
+class Website(models.Model):
+ _inherit = "website"
+
+ def sale_get_payment_term(self, partner):
+ if partner.sale_type.payment_term_id:
+ return partner.sale_type.payment_term_id.id
+ return super().sale_get_payment_term(partner)
+
+ def _get_current_pricelist_id(self, partner_sudo):
+ if partner_sudo.sale_type.pricelist_id:
+ return partner_sudo.sale_type.pricelist_id.id
+ return super()._get_current_pricelist_id(partner_sudo)
diff --git a/website_sale_order_type/static/description/index.html b/website_sale_order_type/static/description/index.html
index f3cddd18a6..e3e24685de 100644
--- a/website_sale_order_type/static/description/index.html
+++ b/website_sale_order_type/static/description/index.html
@@ -1,20 +1,20 @@
-
+
-
+
Website sale order type