From 92307a8670c48d8f2d826671da4b175184239d07 Mon Sep 17 00:00:00 2001 From: Denis Roussel Date: Thu, 11 Jul 2019 10:36:15 +0200 Subject: [PATCH 01/20] [12.0][ADD] product_form_sale_link --- product_form_sale_link/README.rst | 83 ++++ product_form_sale_link/__init__.py | 0 product_form_sale_link/__manifest__.py | 21 + .../i18n/product_form_sale_link.pot | 27 ++ .../readme/CONTRIBUTORS.rst | 1 + product_form_sale_link/readme/DESCRIPTION.rst | 2 + product_form_sale_link/readme/USAGE.rst | 5 + .../static/description/icon.png | Bin 0 -> 9455 bytes .../static/description/index.html | 427 ++++++++++++++++++ .../static/description/product_sale.png | Bin 0 -> 57194 bytes .../views/product_product.xml | 22 + .../views/product_template.xml | 22 + .../views/sale_order_line.xml | 21 + 13 files changed, 631 insertions(+) create mode 100644 product_form_sale_link/README.rst create mode 100644 product_form_sale_link/__init__.py create mode 100644 product_form_sale_link/__manifest__.py create mode 100644 product_form_sale_link/i18n/product_form_sale_link.pot create mode 100644 product_form_sale_link/readme/CONTRIBUTORS.rst create mode 100644 product_form_sale_link/readme/DESCRIPTION.rst create mode 100644 product_form_sale_link/readme/USAGE.rst create mode 100644 product_form_sale_link/static/description/icon.png create mode 100644 product_form_sale_link/static/description/index.html create mode 100644 product_form_sale_link/static/description/product_sale.png create mode 100644 product_form_sale_link/views/product_product.xml create mode 100644 product_form_sale_link/views/product_template.xml create mode 100644 product_form_sale_link/views/sale_order_line.xml diff --git a/product_form_sale_link/README.rst b/product_form_sale_link/README.rst new file mode 100644 index 00000000000..fd4f4f95ce6 --- /dev/null +++ b/product_form_sale_link/README.rst @@ -0,0 +1,83 @@ +====================== +Product Form Sale Link +====================== + +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! 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%2Fsale--workflow-lightgray.png?logo=github + :target: https://github.com/OCA/sale-workflow/tree/12.0/product_form_sale_link + :alt: OCA/sale-workflow +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/sale-workflow-12-0/sale-workflow-12-0-product_form_sale_link + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png + :target: https://runbot.odoo-community.org/runbot/167/12.0 + :alt: Try me on Runbot + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module adds a button on product forms with a link to sale order lines +for that product. + +**Table of contents** + +.. contents:: + :local: + +Usage +===== + +Go to Sales > Products > Products + +Choose a product and click on 'Sales' button. + +.. image:: https://user-images.githubusercontent.com/19529533/61035935-5ec0ef80-a3c8-11e9-836a-4aca2e7dec70.png + +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 +~~~~~~~ + +* ACSONE SA/NV + +Contributors +~~~~~~~~~~~~ + +* Denis Roussel + +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/sale-workflow `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/product_form_sale_link/__init__.py b/product_form_sale_link/__init__.py new file mode 100644 index 00000000000..e69de29bb2d diff --git a/product_form_sale_link/__manifest__.py b/product_form_sale_link/__manifest__.py new file mode 100644 index 00000000000..95da1d516b3 --- /dev/null +++ b/product_form_sale_link/__manifest__.py @@ -0,0 +1,21 @@ +# Copyright 2019 ACSONE SA/NV +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +{ + 'name': 'Product Form Sale Link', + 'summary': """ + Adds a button on product forms to access Sale Lines""", + 'version': '12.0.1.0.0', + 'license': 'AGPL-3', + 'category': 'Sales', + 'author': 'ACSONE SA/NV,Odoo Community Association (OCA)', + 'website': 'https://github.com/OCA/sale-workflow', + 'depends': [ + 'sale', + ], + 'data': [ + 'views/sale_order_line.xml', + 'views/product_product.xml', + 'views/product_template.xml', + ], +} diff --git a/product_form_sale_link/i18n/product_form_sale_link.pot b/product_form_sale_link/i18n/product_form_sale_link.pot new file mode 100644 index 00000000000..c5a1e986fac --- /dev/null +++ b/product_form_sale_link/i18n/product_form_sale_link.pot @@ -0,0 +1,27 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_form_sale_link +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 12.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: product_form_sale_link +#: model:ir.actions.act_window,name:product_form_sale_link.action_product_product_sale_list +#: model:ir.actions.act_window,name:product_form_sale_link.action_product_template_sale_list +msgid "Sale Order Lines" +msgstr "" + +#. module: product_form_sale_link +#: model_terms:ir.ui.view,arch_db:product_form_sale_link.product_product_form_view +#: model_terms:ir.ui.view,arch_db:product_form_sale_link.product_template_form_view +msgid "Sales" +msgstr "" + diff --git a/product_form_sale_link/readme/CONTRIBUTORS.rst b/product_form_sale_link/readme/CONTRIBUTORS.rst new file mode 100644 index 00000000000..9179ee4b8fa --- /dev/null +++ b/product_form_sale_link/readme/CONTRIBUTORS.rst @@ -0,0 +1 @@ +* Denis Roussel diff --git a/product_form_sale_link/readme/DESCRIPTION.rst b/product_form_sale_link/readme/DESCRIPTION.rst new file mode 100644 index 00000000000..4a29004c5cd --- /dev/null +++ b/product_form_sale_link/readme/DESCRIPTION.rst @@ -0,0 +1,2 @@ +This module adds a button on product forms with a link to sale order lines +for that product. diff --git a/product_form_sale_link/readme/USAGE.rst b/product_form_sale_link/readme/USAGE.rst new file mode 100644 index 00000000000..a635ee82d46 --- /dev/null +++ b/product_form_sale_link/readme/USAGE.rst @@ -0,0 +1,5 @@ +Go to Sales > Products > Products + +Choose a product and click on 'Sales' button. + +.. image:: https://user-images.githubusercontent.com/19529533/61035935-5ec0ef80-a3c8-11e9-836a-4aca2e7dec70.png diff --git a/product_form_sale_link/static/description/icon.png b/product_form_sale_link/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/product_form_sale_link/static/description/index.html b/product_form_sale_link/static/description/index.html new file mode 100644 index 00000000000..dcb0a6fd710 --- /dev/null +++ b/product_form_sale_link/static/description/index.html @@ -0,0 +1,427 @@ + + + + + + +Product Form Sale Link + + + + + + diff --git a/product_form_sale_link/static/description/product_sale.png b/product_form_sale_link/static/description/product_sale.png new file mode 100644 index 0000000000000000000000000000000000000000..f6a92050599e4eb1f12df33b77a7556bea65b6fe GIT binary patch literal 57194 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 + + + + + + product.product.form (in product_form_sale_link) + product.product + + + + + + + + + diff --git a/product_form_sale_link/views/product_template.xml b/product_form_sale_link/views/product_template.xml new file mode 100644 index 00000000000..89bb2f85b92 --- /dev/null +++ b/product_form_sale_link/views/product_template.xml @@ -0,0 +1,22 @@ + + + + + + + product.template.form (in product_form_sale_link) + product.template + + + + + + + + + diff --git a/product_form_sale_link/views/sale_order_line.xml b/product_form_sale_link/views/sale_order_line.xml new file mode 100644 index 00000000000..c6c0777cb99 --- /dev/null +++ b/product_form_sale_link/views/sale_order_line.xml @@ -0,0 +1,21 @@ + + + + + + + Sale Order Lines + sale.order.line + {} + [('state', 'in', ['sale', 'done']), ('product_id.product_tmpl_id', 'in', active_ids)] + + + + Sale Order Lines + sale.order.line + {} + [('state', 'in', ['sale', 'done']), ('product_id', 'in', active_ids)] + + + From 00bfe5e89b049d2ff3e7f3986c1c34f530ad847d Mon Sep 17 00:00:00 2001 From: Yann Papouin Date: Sun, 4 Oct 2020 16:30:53 +0000 Subject: [PATCH 02/20] Added translation using Weblate (French) --- product_form_sale_link/i18n/fr.po | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 product_form_sale_link/i18n/fr.po diff --git a/product_form_sale_link/i18n/fr.po b/product_form_sale_link/i18n/fr.po new file mode 100644 index 00000000000..47685f2cdbc --- /dev/null +++ b/product_form_sale_link/i18n/fr.po @@ -0,0 +1,29 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_form_sale_link +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 12.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2020-11-24 15:53+0000\n" +"Last-Translator: Yann Papouin \n" +"Language-Team: none\n" +"Language: fr\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 3.10\n" + +#. module: product_form_sale_link +#: model:ir.actions.act_window,name:product_form_sale_link.action_product_product_sale_list +#: model:ir.actions.act_window,name:product_form_sale_link.action_product_template_sale_list +msgid "Sale Order Lines" +msgstr "Lignes de commande de vente" + +#. module: product_form_sale_link +#: model_terms:ir.ui.view,arch_db:product_form_sale_link.product_product_form_view +#: model_terms:ir.ui.view,arch_db:product_form_sale_link.product_template_form_view +msgid "Sales" +msgstr "Ventes" From 7a3955c56f5a637b5b757863ee8adcca3b0f853a Mon Sep 17 00:00:00 2001 From: Daniel Martinez Vila Date: Wed, 10 Mar 2021 08:43:24 +0000 Subject: [PATCH 03/20] Added translation using Weblate (Catalan) --- product_form_sale_link/i18n/ca.po | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 product_form_sale_link/i18n/ca.po diff --git a/product_form_sale_link/i18n/ca.po b/product_form_sale_link/i18n/ca.po new file mode 100644 index 00000000000..577288ec6c2 --- /dev/null +++ b/product_form_sale_link/i18n/ca.po @@ -0,0 +1,29 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_form_sale_link +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 12.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2021-03-10 10:45+0000\n" +"Last-Translator: Daniel Martinez Vila \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: product_form_sale_link +#: model:ir.actions.act_window,name:product_form_sale_link.action_product_product_sale_list +#: model:ir.actions.act_window,name:product_form_sale_link.action_product_template_sale_list +msgid "Sale Order Lines" +msgstr "Línies de comandes de venda" + +#. module: product_form_sale_link +#: model_terms:ir.ui.view,arch_db:product_form_sale_link.product_product_form_view +#: model_terms:ir.ui.view,arch_db:product_form_sale_link.product_template_form_view +msgid "Sales" +msgstr "Vendes" From 39de3310db6c869329cd62388ee9347c64abbdfe Mon Sep 17 00:00:00 2001 From: Daniel Martinez Vila Date: Wed, 10 Mar 2021 08:44:28 +0000 Subject: [PATCH 04/20] Added translation using Weblate (Spanish) --- product_form_sale_link/i18n/es.po | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 product_form_sale_link/i18n/es.po diff --git a/product_form_sale_link/i18n/es.po b/product_form_sale_link/i18n/es.po new file mode 100644 index 00000000000..b2e1d1ffb20 --- /dev/null +++ b/product_form_sale_link/i18n/es.po @@ -0,0 +1,29 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_form_sale_link +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 12.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2021-03-10 10:45+0000\n" +"Last-Translator: Daniel Martinez Vila \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: product_form_sale_link +#: model:ir.actions.act_window,name:product_form_sale_link.action_product_product_sale_list +#: model:ir.actions.act_window,name:product_form_sale_link.action_product_template_sale_list +msgid "Sale Order Lines" +msgstr "Líneas de pedido de venta" + +#. module: product_form_sale_link +#: model_terms:ir.ui.view,arch_db:product_form_sale_link.product_product_form_view +#: model_terms:ir.ui.view,arch_db:product_form_sale_link.product_template_form_view +msgid "Sales" +msgstr "Ventas" From e176ddc8a5f228ab035c78279ed0a5eae4d1a450 Mon Sep 17 00:00:00 2001 From: Joan Date: Fri, 26 Mar 2021 17:26:04 +0100 Subject: [PATCH 05/20] [IMP] product_form_sale_link: black, isort, prettier --- product_form_sale_link/__manifest__.py | 26 +++++++++---------- .../views/product_product.xml | 17 ++++++------ .../views/product_template.xml | 20 ++++++++------ .../views/sale_order_line.xml | 14 +++++----- 4 files changed, 40 insertions(+), 37 deletions(-) diff --git a/product_form_sale_link/__manifest__.py b/product_form_sale_link/__manifest__.py index 95da1d516b3..1465e41c347 100644 --- a/product_form_sale_link/__manifest__.py +++ b/product_form_sale_link/__manifest__.py @@ -2,20 +2,18 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { - 'name': 'Product Form Sale Link', - 'summary': """ + "name": "Product Form Sale Link", + "summary": """ Adds a button on product forms to access Sale Lines""", - 'version': '12.0.1.0.0', - 'license': 'AGPL-3', - 'category': 'Sales', - 'author': 'ACSONE SA/NV,Odoo Community Association (OCA)', - 'website': 'https://github.com/OCA/sale-workflow', - 'depends': [ - 'sale', - ], - 'data': [ - 'views/sale_order_line.xml', - 'views/product_product.xml', - 'views/product_template.xml', + "version": "12.0.1.0.0", + "license": "AGPL-3", + "category": "Sales", + "author": "ACSONE SA/NV,Odoo Community Association (OCA)", + "website": "https://github.com/OCA/sale-workflow", + "depends": ["sale",], + "data": [ + "views/sale_order_line.xml", + "views/product_product.xml", + "views/product_template.xml", ], } diff --git a/product_form_sale_link/views/product_product.xml b/product_form_sale_link/views/product_product.xml index 93c89be10a9..2472792e6dc 100644 --- a/product_form_sale_link/views/product_product.xml +++ b/product_form_sale_link/views/product_product.xml @@ -1,22 +1,23 @@ - + - - product.product.form (in product_form_sale_link) product.product - - + + - diff --git a/product_form_sale_link/views/product_template.xml b/product_form_sale_link/views/product_template.xml index 89bb2f85b92..4daed208861 100644 --- a/product_form_sale_link/views/product_template.xml +++ b/product_form_sale_link/views/product_template.xml @@ -1,22 +1,26 @@ - + - - product.template.form (in product_form_sale_link) product.template - - + + - diff --git a/product_form_sale_link/views/sale_order_line.xml b/product_form_sale_link/views/sale_order_line.xml index c6c0777cb99..611f05e072e 100644 --- a/product_form_sale_link/views/sale_order_line.xml +++ b/product_form_sale_link/views/sale_order_line.xml @@ -1,21 +1,21 @@ - + - - Sale Order Lines sale.order.line {} - [('state', 'in', ['sale', 'done']), ('product_id.product_tmpl_id', 'in', active_ids)] + [('state', 'in', ['sale', 'done']), ('product_id.product_tmpl_id', 'in', active_ids)] - Sale Order Lines sale.order.line {} - [('state', 'in', ['sale', 'done']), ('product_id', 'in', active_ids)] + [('state', 'in', ['sale', 'done']), ('product_id', 'in', active_ids)] - From b2a71e44a5644330e7421d67852511fa2af68571 Mon Sep 17 00:00:00 2001 From: Joan Date: Fri, 26 Mar 2021 17:28:36 +0100 Subject: [PATCH 06/20] [MIG] product_form_sale_link: Migration to 13.0 --- product_form_sale_link/README.rst | 10 +++++----- product_form_sale_link/__manifest__.py | 4 ++-- product_form_sale_link/i18n/ca.po | 2 +- product_form_sale_link/i18n/es.po | 2 +- product_form_sale_link/i18n/product_form_sale_link.pot | 7 +++---- product_form_sale_link/static/description/index.html | 6 +++--- 6 files changed, 15 insertions(+), 16 deletions(-) diff --git a/product_form_sale_link/README.rst b/product_form_sale_link/README.rst index fd4f4f95ce6..badf29d2e8f 100644 --- a/product_form_sale_link/README.rst +++ b/product_form_sale_link/README.rst @@ -14,13 +14,13 @@ Product Form Sale Link :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fsale--workflow-lightgray.png?logo=github - :target: https://github.com/OCA/sale-workflow/tree/12.0/product_form_sale_link + :target: https://github.com/OCA/sale-workflow/tree/13.0/product_form_sale_link :alt: OCA/sale-workflow .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/sale-workflow-12-0/sale-workflow-12-0-product_form_sale_link + :target: https://translation.odoo-community.org/projects/sale-workflow-13-0/sale-workflow-13-0-product_form_sale_link :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/167/12.0 + :target: https://runbot.odoo-community.org/runbot/167/13.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -48,7 +48,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. @@ -78,6 +78,6 @@ 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/sale-workflow `_ project on GitHub. +This module is part of the `OCA/sale-workflow `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/product_form_sale_link/__manifest__.py b/product_form_sale_link/__manifest__.py index 1465e41c347..4afcce95dc8 100644 --- a/product_form_sale_link/__manifest__.py +++ b/product_form_sale_link/__manifest__.py @@ -5,12 +5,12 @@ "name": "Product Form Sale Link", "summary": """ Adds a button on product forms to access Sale Lines""", - "version": "12.0.1.0.0", + "version": "13.0.1.0.1", "license": "AGPL-3", "category": "Sales", "author": "ACSONE SA/NV,Odoo Community Association (OCA)", "website": "https://github.com/OCA/sale-workflow", - "depends": ["sale",], + "depends": ["sale"], "data": [ "views/sale_order_line.xml", "views/product_product.xml", diff --git a/product_form_sale_link/i18n/ca.po b/product_form_sale_link/i18n/ca.po index 577288ec6c2..b774c60471e 100644 --- a/product_form_sale_link/i18n/ca.po +++ b/product_form_sale_link/i18n/ca.po @@ -1,6 +1,6 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: -# * product_form_sale_link +# * product_form_sale_link # msgid "" msgstr "" diff --git a/product_form_sale_link/i18n/es.po b/product_form_sale_link/i18n/es.po index b2e1d1ffb20..93b72104211 100644 --- a/product_form_sale_link/i18n/es.po +++ b/product_form_sale_link/i18n/es.po @@ -1,6 +1,6 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: -# * product_form_sale_link +# * product_form_sale_link # msgid "" msgstr "" diff --git a/product_form_sale_link/i18n/product_form_sale_link.pot b/product_form_sale_link/i18n/product_form_sale_link.pot index c5a1e986fac..750439d0983 100644 --- a/product_form_sale_link/i18n/product_form_sale_link.pot +++ b/product_form_sale_link/i18n/product_form_sale_link.pot @@ -1,12 +1,12 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: -# * product_form_sale_link +# * product_form_sale_link # 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" @@ -24,4 +24,3 @@ msgstr "" #: model_terms:ir.ui.view,arch_db:product_form_sale_link.product_template_form_view msgid "Sales" msgstr "" - diff --git a/product_form_sale_link/static/description/index.html b/product_form_sale_link/static/description/index.html index dcb0a6fd710..d671d53fb8b 100644 --- a/product_form_sale_link/static/description/index.html +++ b/product_form_sale_link/static/description/index.html @@ -367,7 +367,7 @@

Product Form Sale Link

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Beta License: AGPL-3 OCA/sale-workflow Translate me on Weblate Try me on Runbot

+

Beta License: AGPL-3 OCA/sale-workflow Translate me on Weblate Try me on Runbot

This module adds a button on product forms with a link to sale order lines for that product.

Table of contents

@@ -394,7 +394,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.

@@ -418,7 +418,7 @@

Maintainers

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/sale-workflow project on GitHub.

+

This module is part of the OCA/sale-workflow project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

From 8beecb4ae9086b6b6481ff819a7c11ba41fc531c Mon Sep 17 00:00:00 2001 From: Bernat Puig Font Date: Wed, 11 May 2022 14:51:26 +0200 Subject: [PATCH 07/20] [14.0][MIG] product_form_sale_link: Migration to 14.0 --- product_form_sale_link/README.rst | 10 +++++----- product_form_sale_link/__manifest__.py | 2 +- product_form_sale_link/i18n/fr.po | 2 +- product_form_sale_link/i18n/product_form_sale_link.pot | 2 +- product_form_sale_link/static/description/index.html | 6 +++--- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/product_form_sale_link/README.rst b/product_form_sale_link/README.rst index badf29d2e8f..8bae3a7e6d4 100644 --- a/product_form_sale_link/README.rst +++ b/product_form_sale_link/README.rst @@ -14,13 +14,13 @@ Product Form Sale Link :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fsale--workflow-lightgray.png?logo=github - :target: https://github.com/OCA/sale-workflow/tree/13.0/product_form_sale_link + :target: https://github.com/OCA/sale-workflow/tree/14.0/product_form_sale_link :alt: OCA/sale-workflow .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/sale-workflow-13-0/sale-workflow-13-0-product_form_sale_link + :target: https://translation.odoo-community.org/projects/sale-workflow-14-0/sale-workflow-14-0-product_form_sale_link :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/167/13.0 + :target: https://runbot.odoo-community.org/runbot/167/14.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -48,7 +48,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. @@ -78,6 +78,6 @@ 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/sale-workflow `_ project on GitHub. +This module is part of the `OCA/sale-workflow `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/product_form_sale_link/__manifest__.py b/product_form_sale_link/__manifest__.py index 4afcce95dc8..7116c4c6375 100644 --- a/product_form_sale_link/__manifest__.py +++ b/product_form_sale_link/__manifest__.py @@ -5,7 +5,7 @@ "name": "Product Form Sale Link", "summary": """ Adds a button on product forms to access Sale Lines""", - "version": "13.0.1.0.1", + "version": "14.0.1.0.1", "license": "AGPL-3", "category": "Sales", "author": "ACSONE SA/NV,Odoo Community Association (OCA)", diff --git a/product_form_sale_link/i18n/fr.po b/product_form_sale_link/i18n/fr.po index 47685f2cdbc..650ce18d61f 100644 --- a/product_form_sale_link/i18n/fr.po +++ b/product_form_sale_link/i18n/fr.po @@ -1,6 +1,6 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: -# * product_form_sale_link +# * product_form_sale_link # msgid "" msgstr "" diff --git a/product_form_sale_link/i18n/product_form_sale_link.pot b/product_form_sale_link/i18n/product_form_sale_link.pot index 750439d0983..60319d51b1f 100644 --- a/product_form_sale_link/i18n/product_form_sale_link.pot +++ b/product_form_sale_link/i18n/product_form_sale_link.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" diff --git a/product_form_sale_link/static/description/index.html b/product_form_sale_link/static/description/index.html index d671d53fb8b..2d880614019 100644 --- a/product_form_sale_link/static/description/index.html +++ b/product_form_sale_link/static/description/index.html @@ -367,7 +367,7 @@

Product Form Sale Link

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Beta License: AGPL-3 OCA/sale-workflow Translate me on Weblate Try me on Runbot

+

Beta License: AGPL-3 OCA/sale-workflow Translate me on Weblate Try me on Runbot

This module adds a button on product forms with a link to sale order lines for that product.

Table of contents

@@ -394,7 +394,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.

@@ -418,7 +418,7 @@

Maintainers

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/sale-workflow project on GitHub.

+

This module is part of the OCA/sale-workflow project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

From 57ff850f451ad7715ecd679b619564ff844c1de7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miquel=20Ra=C3=AFch?= Date: Fri, 13 May 2022 16:04:21 +0200 Subject: [PATCH 08/20] [FIX] product_form_sale_link: assure compatibility with sale_stock The button 'action_view_sales' is replaced in sale_stock, so it cannot be referenced. --- product_form_sale_link/__init__.py | 1 + product_form_sale_link/models/__init__.py | 2 ++ .../models/product_product.py | 30 +++++++++++++++++++ .../models/product_template.py | 24 +++++++++++++++ .../views/product_product.xml | 3 +- .../views/product_template.xml | 7 +++-- 6 files changed, 63 insertions(+), 4 deletions(-) create mode 100644 product_form_sale_link/models/__init__.py create mode 100644 product_form_sale_link/models/product_product.py create mode 100644 product_form_sale_link/models/product_template.py diff --git a/product_form_sale_link/__init__.py b/product_form_sale_link/__init__.py index e69de29bb2d..0650744f6bc 100644 --- a/product_form_sale_link/__init__.py +++ b/product_form_sale_link/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/product_form_sale_link/models/__init__.py b/product_form_sale_link/models/__init__.py new file mode 100644 index 00000000000..049669dd0fe --- /dev/null +++ b/product_form_sale_link/models/__init__.py @@ -0,0 +1,2 @@ +from . import product_template +from . import product_product diff --git a/product_form_sale_link/models/product_product.py b/product_form_sale_link/models/product_product.py new file mode 100644 index 00000000000..8b410bfe39c --- /dev/null +++ b/product_form_sale_link/models/product_product.py @@ -0,0 +1,30 @@ +# Copyright 2022 ForgeFlow S.L. (https://www.forgeflow.com) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from odoo import fields, models + + +class ProductProduct(models.Model): + _inherit = "product.product" + + sale_lines_count = fields.Integer( + compute="_compute_sale_lines_count", string="Sold" + ) + + def _compute_sale_lines_count(self): + if not self.user_has_groups("sales_team.group_sale_salesman") or not self.ids: + self.sale_lines_count = 0.0 + return + domain = [ + ("state", "in", ["sale", "done"]), + ("product_id", "in", self.ids), + ("company_id", "in", self.env.companies.ids), + ] + sale_line_data = self.env["sale.order.line"].read_group( + domain, ["product_id"], ["product_id"] + ) + mapped_data = { + m["product_id"][0]: m["product_id_count"] for m in sale_line_data + } + for product in self: + product.sale_lines_count = mapped_data.get(product.id, 0) diff --git a/product_form_sale_link/models/product_template.py b/product_form_sale_link/models/product_template.py new file mode 100644 index 00000000000..77080ae8da9 --- /dev/null +++ b/product_form_sale_link/models/product_template.py @@ -0,0 +1,24 @@ +# Copyright 2022 ForgeFlow S.L. (https://www.forgeflow.com) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +import logging + +from odoo import api, fields, models + +_logger = logging.getLogger(__name__) + + +class ProductTemplate(models.Model): + _inherit = "product.template" + + sale_lines_count = fields.Float(compute="_compute_sale_lines_count", string="Sold") + + @api.depends("product_variant_ids.sale_lines_count") + def _compute_sale_lines_count(self): + for product in self: + product.sale_lines_count = sum( + [ + p.sale_lines_count + for p in product.with_context(active_test=False).product_variant_ids + ] + ) diff --git a/product_form_sale_link/views/product_product.xml b/product_form_sale_link/views/product_product.xml index 2472792e6dc..14863056444 100644 --- a/product_form_sale_link/views/product_product.xml +++ b/product_form_sale_link/views/product_product.xml @@ -14,8 +14,9 @@ name="%(product_form_sale_link.action_product_product_sale_list)d" type="action" icon="fa-list" + attrs="{'invisible': [('sale_ok', '=', False)]}" > - + diff --git a/product_form_sale_link/views/product_template.xml b/product_form_sale_link/views/product_template.xml index 4daed208861..fbd21115017 100644 --- a/product_form_sale_link/views/product_template.xml +++ b/product_form_sale_link/views/product_template.xml @@ -11,16 +11,17 @@ ref="sale.product_template_form_view_sale_order_button" /> - - + From 22ac6fc6f26c0ad84f9e9af8b2822c9cecf88c54 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Mon, 16 May 2022 15:24:47 +0200 Subject: [PATCH 09/20] [IMP] product_form_sale_link: black, isort, prettier --- product_form_sale_link/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/product_form_sale_link/__manifest__.py b/product_form_sale_link/__manifest__.py index 7116c4c6375..82a359acc57 100644 --- a/product_form_sale_link/__manifest__.py +++ b/product_form_sale_link/__manifest__.py @@ -5,7 +5,7 @@ "name": "Product Form Sale Link", "summary": """ Adds a button on product forms to access Sale Lines""", - "version": "14.0.1.0.1", + "version": "14.0.1.0.2", "license": "AGPL-3", "category": "Sales", "author": "ACSONE SA/NV,Odoo Community Association (OCA)", From 5068b7e92f432d6f313a8b96c9168adc1cdaff85 Mon Sep 17 00:00:00 2001 From: Christopher Rogos Date: Tue, 20 Sep 2022 13:43:55 +0200 Subject: [PATCH 10/20] [MIG] product_form_sale_link: Migration to 15.0 --- product_form_sale_link/README.rst | 10 +++++----- product_form_sale_link/__manifest__.py | 2 +- product_form_sale_link/i18n/ca.po | 16 ++++++++++++++++ product_form_sale_link/i18n/es.po | 16 ++++++++++++++++ product_form_sale_link/i18n/fr.po | 16 ++++++++++++++++ .../i18n/product_form_sale_link.pot | 18 +++++++++++++++++- .../models/product_template.py | 6 ++---- .../static/description/index.html | 8 ++++---- 8 files changed, 77 insertions(+), 15 deletions(-) diff --git a/product_form_sale_link/README.rst b/product_form_sale_link/README.rst index 8bae3a7e6d4..80681e7eae4 100644 --- a/product_form_sale_link/README.rst +++ b/product_form_sale_link/README.rst @@ -14,13 +14,13 @@ Product Form Sale Link :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fsale--workflow-lightgray.png?logo=github - :target: https://github.com/OCA/sale-workflow/tree/14.0/product_form_sale_link + :target: https://github.com/OCA/sale-workflow/tree/15.0/product_form_sale_link :alt: OCA/sale-workflow .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/sale-workflow-14-0/sale-workflow-14-0-product_form_sale_link + :target: https://translation.odoo-community.org/projects/sale-workflow-15-0/sale-workflow-15-0-product_form_sale_link :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/167/14.0 + :target: https://runbot.odoo-community.org/runbot/167/15.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -48,7 +48,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. @@ -78,6 +78,6 @@ 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/sale-workflow `_ project on GitHub. +This module is part of the `OCA/sale-workflow `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/product_form_sale_link/__manifest__.py b/product_form_sale_link/__manifest__.py index 82a359acc57..27174d871eb 100644 --- a/product_form_sale_link/__manifest__.py +++ b/product_form_sale_link/__manifest__.py @@ -5,7 +5,7 @@ "name": "Product Form Sale Link", "summary": """ Adds a button on product forms to access Sale Lines""", - "version": "14.0.1.0.2", + "version": "15.0.1.0.0", "license": "AGPL-3", "category": "Sales", "author": "ACSONE SA/NV,Odoo Community Association (OCA)", diff --git a/product_form_sale_link/i18n/ca.po b/product_form_sale_link/i18n/ca.po index b774c60471e..153660fa160 100644 --- a/product_form_sale_link/i18n/ca.po +++ b/product_form_sale_link/i18n/ca.po @@ -16,6 +16,16 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 4.3.2\n" +#. module: product_form_sale_link +#: model:ir.model,name:product_form_sale_link.model_product_product +msgid "Product" +msgstr "" + +#. module: product_form_sale_link +#: model:ir.model,name:product_form_sale_link.model_product_template +msgid "Product Template" +msgstr "" + #. module: product_form_sale_link #: model:ir.actions.act_window,name:product_form_sale_link.action_product_product_sale_list #: model:ir.actions.act_window,name:product_form_sale_link.action_product_template_sale_list @@ -27,3 +37,9 @@ msgstr "Línies de comandes de venda" #: model_terms:ir.ui.view,arch_db:product_form_sale_link.product_template_form_view msgid "Sales" msgstr "Vendes" + +#. module: product_form_sale_link +#: model:ir.model.fields,field_description:product_form_sale_link.field_product_product__sale_lines_count +#: model:ir.model.fields,field_description:product_form_sale_link.field_product_template__sale_lines_count +msgid "Sold" +msgstr "" diff --git a/product_form_sale_link/i18n/es.po b/product_form_sale_link/i18n/es.po index 93b72104211..46c4683f902 100644 --- a/product_form_sale_link/i18n/es.po +++ b/product_form_sale_link/i18n/es.po @@ -16,6 +16,16 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 4.3.2\n" +#. module: product_form_sale_link +#: model:ir.model,name:product_form_sale_link.model_product_product +msgid "Product" +msgstr "" + +#. module: product_form_sale_link +#: model:ir.model,name:product_form_sale_link.model_product_template +msgid "Product Template" +msgstr "" + #. module: product_form_sale_link #: model:ir.actions.act_window,name:product_form_sale_link.action_product_product_sale_list #: model:ir.actions.act_window,name:product_form_sale_link.action_product_template_sale_list @@ -27,3 +37,9 @@ msgstr "Líneas de pedido de venta" #: model_terms:ir.ui.view,arch_db:product_form_sale_link.product_template_form_view msgid "Sales" msgstr "Ventas" + +#. module: product_form_sale_link +#: model:ir.model.fields,field_description:product_form_sale_link.field_product_product__sale_lines_count +#: model:ir.model.fields,field_description:product_form_sale_link.field_product_template__sale_lines_count +msgid "Sold" +msgstr "" diff --git a/product_form_sale_link/i18n/fr.po b/product_form_sale_link/i18n/fr.po index 650ce18d61f..b1d7ae0a16f 100644 --- a/product_form_sale_link/i18n/fr.po +++ b/product_form_sale_link/i18n/fr.po @@ -16,6 +16,16 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n > 1;\n" "X-Generator: Weblate 3.10\n" +#. module: product_form_sale_link +#: model:ir.model,name:product_form_sale_link.model_product_product +msgid "Product" +msgstr "" + +#. module: product_form_sale_link +#: model:ir.model,name:product_form_sale_link.model_product_template +msgid "Product Template" +msgstr "" + #. module: product_form_sale_link #: model:ir.actions.act_window,name:product_form_sale_link.action_product_product_sale_list #: model:ir.actions.act_window,name:product_form_sale_link.action_product_template_sale_list @@ -27,3 +37,9 @@ msgstr "Lignes de commande de vente" #: model_terms:ir.ui.view,arch_db:product_form_sale_link.product_template_form_view msgid "Sales" msgstr "Ventes" + +#. module: product_form_sale_link +#: model:ir.model.fields,field_description:product_form_sale_link.field_product_product__sale_lines_count +#: model:ir.model.fields,field_description:product_form_sale_link.field_product_template__sale_lines_count +msgid "Sold" +msgstr "" diff --git a/product_form_sale_link/i18n/product_form_sale_link.pot b/product_form_sale_link/i18n/product_form_sale_link.pot index 60319d51b1f..3984e22f236 100644 --- a/product_form_sale_link/i18n/product_form_sale_link.pot +++ b/product_form_sale_link/i18n/product_form_sale_link.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,6 +13,16 @@ msgstr "" "Content-Transfer-Encoding: \n" "Plural-Forms: \n" +#. module: product_form_sale_link +#: model:ir.model,name:product_form_sale_link.model_product_product +msgid "Product" +msgstr "" + +#. module: product_form_sale_link +#: model:ir.model,name:product_form_sale_link.model_product_template +msgid "Product Template" +msgstr "" + #. module: product_form_sale_link #: model:ir.actions.act_window,name:product_form_sale_link.action_product_product_sale_list #: model:ir.actions.act_window,name:product_form_sale_link.action_product_template_sale_list @@ -24,3 +34,9 @@ msgstr "" #: model_terms:ir.ui.view,arch_db:product_form_sale_link.product_template_form_view msgid "Sales" msgstr "" + +#. module: product_form_sale_link +#: model:ir.model.fields,field_description:product_form_sale_link.field_product_product__sale_lines_count +#: model:ir.model.fields,field_description:product_form_sale_link.field_product_template__sale_lines_count +msgid "Sold" +msgstr "" diff --git a/product_form_sale_link/models/product_template.py b/product_form_sale_link/models/product_template.py index 77080ae8da9..38d5fd181af 100644 --- a/product_form_sale_link/models/product_template.py +++ b/product_form_sale_link/models/product_template.py @@ -17,8 +17,6 @@ class ProductTemplate(models.Model): def _compute_sale_lines_count(self): for product in self: product.sale_lines_count = sum( - [ - p.sale_lines_count - for p in product.with_context(active_test=False).product_variant_ids - ] + p.sale_lines_count + for p in product.with_context(active_test=False).product_variant_ids ) diff --git a/product_form_sale_link/static/description/index.html b/product_form_sale_link/static/description/index.html index 2d880614019..e5946420f0e 100644 --- a/product_form_sale_link/static/description/index.html +++ b/product_form_sale_link/static/description/index.html @@ -367,7 +367,7 @@

Product Form Sale Link

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Beta License: AGPL-3 OCA/sale-workflow Translate me on Weblate Try me on Runbot

+

Beta License: AGPL-3 OCA/sale-workflow Translate me on Weblate Try me on Runbot

This module adds a button on product forms with a link to sale order lines for that product.

Table of contents

@@ -386,7 +386,7 @@

Product Form Sale Link

Usage

Go to Sales > Products > Products

-

Choose a product and click on ΓÇÿSalesΓÇÖ button.

+

Choose a product and click on ‘Sales’ button.

https://user-images.githubusercontent.com/19529533/61035935-5ec0ef80-a3c8-11e9-836a-4aca2e7dec70.png
@@ -394,7 +394,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.

@@ -418,7 +418,7 @@

Maintainers

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/sale-workflow project on GitHub.

+

This module is part of the OCA/sale-workflow project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

From 22632fc1240f914b0f65d0ab5d19964c9462cc2b Mon Sep 17 00:00:00 2001 From: GiuTav Date: Mon, 5 Jun 2023 10:53:31 +0200 Subject: [PATCH 11/20] [MIG] product_form_sale_link : Migration to 16.0 --- product_form_sale_link/README.rst | 10 +++++----- product_form_sale_link/__manifest__.py | 2 +- product_form_sale_link/i18n/ca.po | 6 +++--- product_form_sale_link/i18n/es.po | 6 +++--- product_form_sale_link/i18n/fr.po | 6 +++--- product_form_sale_link/i18n/product_form_sale_link.pot | 8 ++++---- product_form_sale_link/static/description/index.html | 6 +++--- product_form_sale_link/views/product_product.xml | 2 +- product_form_sale_link/views/product_template.xml | 2 +- 9 files changed, 24 insertions(+), 24 deletions(-) diff --git a/product_form_sale_link/README.rst b/product_form_sale_link/README.rst index 80681e7eae4..c04ed38fccc 100644 --- a/product_form_sale_link/README.rst +++ b/product_form_sale_link/README.rst @@ -14,13 +14,13 @@ Product Form Sale Link :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fsale--workflow-lightgray.png?logo=github - :target: https://github.com/OCA/sale-workflow/tree/15.0/product_form_sale_link + :target: https://github.com/OCA/sale-workflow/tree/16.0/product_form_sale_link :alt: OCA/sale-workflow .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/sale-workflow-15-0/sale-workflow-15-0-product_form_sale_link + :target: https://translation.odoo-community.org/projects/sale-workflow-16-0/sale-workflow-16-0-product_form_sale_link :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/167/15.0 + :target: https://runbot.odoo-community.org/runbot/167/16.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -48,7 +48,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. @@ -78,6 +78,6 @@ 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/sale-workflow `_ project on GitHub. +This module is part of the `OCA/sale-workflow `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/product_form_sale_link/__manifest__.py b/product_form_sale_link/__manifest__.py index 27174d871eb..b877771c195 100644 --- a/product_form_sale_link/__manifest__.py +++ b/product_form_sale_link/__manifest__.py @@ -5,7 +5,7 @@ "name": "Product Form Sale Link", "summary": """ Adds a button on product forms to access Sale Lines""", - "version": "15.0.1.0.0", + "version": "16.0.1.0.0", "license": "AGPL-3", "category": "Sales", "author": "ACSONE SA/NV,Odoo Community Association (OCA)", diff --git a/product_form_sale_link/i18n/ca.po b/product_form_sale_link/i18n/ca.po index 153660fa160..382bd935152 100644 --- a/product_form_sale_link/i18n/ca.po +++ b/product_form_sale_link/i18n/ca.po @@ -17,13 +17,13 @@ msgstr "" "X-Generator: Weblate 4.3.2\n" #. module: product_form_sale_link -#: model:ir.model,name:product_form_sale_link.model_product_product +#: model:ir.model,name:product_form_sale_link.model_product_template msgid "Product" msgstr "" #. module: product_form_sale_link -#: model:ir.model,name:product_form_sale_link.model_product_template -msgid "Product Template" +#: model:ir.model,name:product_form_sale_link.model_product_product +msgid "Product Variant" msgstr "" #. module: product_form_sale_link diff --git a/product_form_sale_link/i18n/es.po b/product_form_sale_link/i18n/es.po index 46c4683f902..80187ae027d 100644 --- a/product_form_sale_link/i18n/es.po +++ b/product_form_sale_link/i18n/es.po @@ -17,13 +17,13 @@ msgstr "" "X-Generator: Weblate 4.3.2\n" #. module: product_form_sale_link -#: model:ir.model,name:product_form_sale_link.model_product_product +#: model:ir.model,name:product_form_sale_link.model_product_template msgid "Product" msgstr "" #. module: product_form_sale_link -#: model:ir.model,name:product_form_sale_link.model_product_template -msgid "Product Template" +#: model:ir.model,name:product_form_sale_link.model_product_product +msgid "Product Variant" msgstr "" #. module: product_form_sale_link diff --git a/product_form_sale_link/i18n/fr.po b/product_form_sale_link/i18n/fr.po index b1d7ae0a16f..11fa998a7b5 100644 --- a/product_form_sale_link/i18n/fr.po +++ b/product_form_sale_link/i18n/fr.po @@ -17,13 +17,13 @@ msgstr "" "X-Generator: Weblate 3.10\n" #. module: product_form_sale_link -#: model:ir.model,name:product_form_sale_link.model_product_product +#: model:ir.model,name:product_form_sale_link.model_product_template msgid "Product" msgstr "" #. module: product_form_sale_link -#: model:ir.model,name:product_form_sale_link.model_product_template -msgid "Product Template" +#: model:ir.model,name:product_form_sale_link.model_product_product +msgid "Product Variant" msgstr "" #. module: product_form_sale_link diff --git a/product_form_sale_link/i18n/product_form_sale_link.pot b/product_form_sale_link/i18n/product_form_sale_link.pot index 3984e22f236..b9a7c1b4905 100644 --- a/product_form_sale_link/i18n/product_form_sale_link.pot +++ b/product_form_sale_link/i18n/product_form_sale_link.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,13 +14,13 @@ msgstr "" "Plural-Forms: \n" #. module: product_form_sale_link -#: model:ir.model,name:product_form_sale_link.model_product_product +#: model:ir.model,name:product_form_sale_link.model_product_template msgid "Product" msgstr "" #. module: product_form_sale_link -#: model:ir.model,name:product_form_sale_link.model_product_template -msgid "Product Template" +#: model:ir.model,name:product_form_sale_link.model_product_product +msgid "Product Variant" msgstr "" #. module: product_form_sale_link diff --git a/product_form_sale_link/static/description/index.html b/product_form_sale_link/static/description/index.html index e5946420f0e..2d46cf0b19b 100644 --- a/product_form_sale_link/static/description/index.html +++ b/product_form_sale_link/static/description/index.html @@ -367,7 +367,7 @@

Product Form Sale Link

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Beta License: AGPL-3 OCA/sale-workflow Translate me on Weblate Try me on Runbot

+

Beta License: AGPL-3 OCA/sale-workflow Translate me on Weblate Try me on Runbot

This module adds a button on product forms with a link to sale order lines for that product.

Table of contents

@@ -394,7 +394,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.

@@ -418,7 +418,7 @@

Maintainers

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/sale-workflow project on GitHub.

+

This module is part of the OCA/sale-workflow project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

diff --git a/product_form_sale_link/views/product_product.xml b/product_form_sale_link/views/product_product.xml index 14863056444..120193b2ac6 100644 --- a/product_form_sale_link/views/product_product.xml +++ b/product_form_sale_link/views/product_product.xml @@ -5,7 +5,6 @@ product.product.form (in product_form_sale_link) product.product -