From 291af39d795f6d2d20a254431145648b9ecaa765 Mon Sep 17 00:00:00 2001 From: clementmbr Date: Mon, 18 May 2020 17:44:11 -0300 Subject: [PATCH 01/27] [REF] rename modules based on attribute_set and pim New organization : - attribute_set (former base_custom_attribute) - product_attribute_set (former pim_custom_attribute but without menus) - pim (The "PIM application" former pim_base) - pim_attrubute_set (depends on product_attribute_set and adds menus in the PIM application) --- product_attribute_set/README.rst | 16 ++++ product_attribute_set/__init__.py | 1 + product_attribute_set/__manifest__.py | 16 ++++ .../demo/product_attribute.xml | 77 +++++++++++++++++++ product_attribute_set/models/__init__.py | 2 + product_attribute_set/models/product.py | 55 +++++++++++++ .../models/product_category.py | 28 +++++++ product_attribute_set/tests/__init__.py | 1 + .../tests/test_product_attribute.py | 22 ++++++ 9 files changed, 218 insertions(+) create mode 100644 product_attribute_set/README.rst create mode 100644 product_attribute_set/__init__.py create mode 100644 product_attribute_set/__manifest__.py create mode 100644 product_attribute_set/demo/product_attribute.xml create mode 100644 product_attribute_set/models/__init__.py create mode 100644 product_attribute_set/models/product.py create mode 100644 product_attribute_set/models/product_category.py create mode 100644 product_attribute_set/tests/__init__.py create mode 100644 product_attribute_set/tests/test_product_attribute.py diff --git a/product_attribute_set/README.rst b/product_attribute_set/README.rst new file mode 100644 index 00000000..2a4ba0ec --- /dev/null +++ b/product_attribute_set/README.rst @@ -0,0 +1,16 @@ +Product Attribute Set +========================= + +This module adds the possibility to easily create custom fields on products. +Each product can be linked to an attribute set (like camera, fridge...). +Each attribute has custom fields (for example, you don't need the same field for a frigde and a camera). +In particular it's used by the Magento Magentoerpconnect module to match the EAV flexibility of Magento. + +Credits +======= + +Contributors +------------ +* Benoît Guillot +* David Dufresne +* El Hadji Dem diff --git a/product_attribute_set/__init__.py b/product_attribute_set/__init__.py new file mode 100644 index 00000000..0650744f --- /dev/null +++ b/product_attribute_set/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/product_attribute_set/__manifest__.py b/product_attribute_set/__manifest__.py new file mode 100644 index 00000000..d68cb978 --- /dev/null +++ b/product_attribute_set/__manifest__.py @@ -0,0 +1,16 @@ +# Copyright 2015 Akretion (http://www.akretion.com). +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + + +{ + "name": "Product Attribute Set", + "version": "12.0.2.0.0", + "category": "Generic Modules/Others", + "license": "AGPL-3", + "author": "Akretion", + "website": "https://akretion.com", + "depends": ["product", "attribute_set"], + "data": [], + "demo": ["demo/product_attribute.xml"], + "installable": True, +} diff --git a/product_attribute_set/demo/product_attribute.xml b/product_attribute_set/demo/product_attribute.xml new file mode 100644 index 00000000..f220e623 --- /dev/null +++ b/product_attribute_set/demo/product_attribute.xml @@ -0,0 +1,77 @@ + + + + + Computer + + + + Mouse + + + + + Technical + + + + + Transport + + + + + + custom + Processor + x_processor + select + + + + + + Intel i5 + + + + Intel i6 + + + + Intel i7 + + + + custom + Technical Description + x_technical_description + text + + + + + + custom + x_linux_compatible + boolean + + + + + + + native + + + + + + + native + + + + + + diff --git a/product_attribute_set/models/__init__.py b/product_attribute_set/models/__init__.py new file mode 100644 index 00000000..533c5a5a --- /dev/null +++ b/product_attribute_set/models/__init__.py @@ -0,0 +1,2 @@ +from . import product_category +from . import product diff --git a/product_attribute_set/models/product.py b/product_attribute_set/models/product.py new file mode 100644 index 00000000..dfbfbdf5 --- /dev/null +++ b/product_attribute_set/models/product.py @@ -0,0 +1,55 @@ +# Copyright 2011 Akretion (http://www.akretion.com). +# @author Benoit Guillot +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + + +from odoo import api, fields, models + + +class ProductTemplate(models.Model): + """The mixin 'attribute.set.owner.mixin' override the model's fields_view_get() + method which will replace the 'attributes_placeholder' by a group made up of all + the product.template's Attributes. + Each Attribute will have a conditional invisibility depending on its Attriute Sets. + """ + + _inherit = ["product.template", "attribute.set.owner.mixin"] + _name = "product.template" + + def _get_default_att_set(self): + """ Fill default Product's attribute_set with its Category's + default attribute_set.""" + default_categ_id_id = self._get_default_category_id() + if default_categ_id_id: + default_categ_id = self.env["product.category"].search( + [("id", "=", default_categ_id_id)] + ) + return default_categ_id.attribute_set_id.id + + attribute_set_id = fields.Many2one( + "attribute.set", "Attribute Set", default=_get_default_att_set + ) + + @api.model + def create(self, vals): + if not vals.get("attribute_set_id") and vals.get("categ_id"): + category = self.env["product.category"].browse(vals["categ_id"]) + vals["attribute_set_id"] = category.attribute_set_id.id + return super().create(vals) + + @api.multi + def write(self, vals): + if not vals.get("attribute_set_id") and vals.get("categ_id"): + category = self.env["product.category"].browse(vals["categ_id"]) + vals["attribute_set_id"] = category.attribute_set_id.id + return super().write(vals) + + @api.onchange("categ_id") + def update_att_set_onchange_categ_id(self): + self.ensure_one() + if self.categ_id and not self.attribute_set_id: + self.attribute_set_id = self.categ_id.attribute_set_id + + +# TODO : add the 'attribute.set.owner.mixin' to product.product in order to display +# Attributes in Variants. diff --git a/product_attribute_set/models/product_category.py b/product_attribute_set/models/product_category.py new file mode 100644 index 00000000..8480d33d --- /dev/null +++ b/product_attribute_set/models/product_category.py @@ -0,0 +1,28 @@ +# Copyright 2015 Akretion (http://www.akretion.com). +# @author Benoit Guillot +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import api, fields, models + + +class ProductCategory(models.Model): + _inherit = "product.category" + + attribute_set_id = fields.Many2one( + "attribute.set", + "Default Attribute Set", + context={"default_model_id": "product.template"}, + ) + + @api.multi + def write(self, vals): + """Fill Category's products with Category's default attribute_set_id if empty""" + super(ProductCategory, self).write(vals) + if vals.get("attribute_set_id"): + product_ids = self.env["product.template"].search( + [("categ_id", "=", self.id), ("attribute_set_id", "=", False)] + ) + for product_id in product_ids: + product_id.attribute_set_id = self.attribute_set_id + + return True diff --git a/product_attribute_set/tests/__init__.py b/product_attribute_set/tests/__init__.py new file mode 100644 index 00000000..2ef99fc7 --- /dev/null +++ b/product_attribute_set/tests/__init__.py @@ -0,0 +1 @@ +from . import test_product_attribute diff --git a/product_attribute_set/tests/test_product_attribute.py b/product_attribute_set/tests/test_product_attribute.py new file mode 100644 index 00000000..38336491 --- /dev/null +++ b/product_attribute_set/tests/test_product_attribute.py @@ -0,0 +1,22 @@ +# Copyright 2018 Akretion (http://www.akretion.com). +# @author Benoit Guillot +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo.tests.common import TransactionCase + + +class TestProductAttribute(TransactionCase): + def setUp(self): + super(TestProductAttribute, self).setUp() + self.product = self.env.ref("product.product_product_3") + + def test_write_attribute_values_text(self): + self.product.write({"x_technical_description": "abcd"}) + self.assertEqual(self.product.x_technical_description, "abcd") + + def test_write_attribute_values_select(self): + option = self.env.ref( + "product_attribute_set.computer_processor_attribute_option_1" + ) + self.product.write({"x_processor": option.id}) + self.assertEqual(self.product.x_processor, option) From 266987e54b86d37ebde8230815539d103ef5286a Mon Sep 17 00:00:00 2001 From: clementmbr Date: Mon, 18 May 2020 19:33:56 -0300 Subject: [PATCH 02/27] [REF] rename 'attribute_nature' field into 'nature' And small FIX in _build_attribute_field() --- product_attribute_set/demo/product_attribute.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/product_attribute_set/demo/product_attribute.xml b/product_attribute_set/demo/product_attribute.xml index f220e623..f25ad9ba 100644 --- a/product_attribute_set/demo/product_attribute.xml +++ b/product_attribute_set/demo/product_attribute.xml @@ -22,7 +22,7 @@ - custom + custom Processor x_processor select @@ -43,7 +43,7 @@ - custom + custom Technical Description x_technical_description text @@ -52,7 +52,7 @@ - custom + custom x_linux_compatible boolean @@ -61,14 +61,14 @@ - native + native - native + native From a5c135558b784a820e2336b549e2e575da0084a9 Mon Sep 17 00:00:00 2001 From: clementmbr Date: Mon, 18 May 2020 22:15:46 -0300 Subject: [PATCH 03/27] [IMP] Add REAME to the 4 modules --- product_attribute_set/README.rst | 64 ++- product_attribute_set/readme/CONTRIBUTORS.rst | 5 + product_attribute_set/readme/DESCRIPTION.rst | 3 + product_attribute_set/readme/ROADMAP.rst | 0 product_attribute_set/readme/USAGE.rst | 1 + .../static/description/index.html | 424 ++++++++++++++++++ 6 files changed, 491 insertions(+), 6 deletions(-) create mode 100644 product_attribute_set/readme/CONTRIBUTORS.rst create mode 100644 product_attribute_set/readme/DESCRIPTION.rst create mode 100644 product_attribute_set/readme/ROADMAP.rst create mode 100644 product_attribute_set/readme/USAGE.rst create mode 100644 product_attribute_set/static/description/index.html diff --git a/product_attribute_set/README.rst b/product_attribute_set/README.rst index 2a4ba0ec..9a515a66 100644 --- a/product_attribute_set/README.rst +++ b/product_attribute_set/README.rst @@ -1,16 +1,68 @@ +===================== Product Attribute Set -========================= +===================== -This module adds the possibility to easily create custom fields on products. -Each product can be linked to an attribute set (like camera, fridge...). -Each attribute has custom fields (for example, you don't need the same field for a frigde and a camera). -In particular it's used by the Magento Magentoerpconnect module to match the EAV flexibility of Magento. +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! 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-clementmbr%2Fodoo--pim-lightgray.png?logo=github + :target: https://github.com/clementmbr/odoo-pim/tree/12.0/product_attribute_set + :alt: clementmbr/odoo-pim + +|badge1| |badge2| |badge3| + +This module allows to display product's Attributes in product form views thanks to the `attribute_set `_ module. It also adds a suggested link between product's Category and product's Attribute Set. + +However this module **does not provide an Attribute menu** to easily manage product's Attribute as this feature is covered by the `pim_attribute_set `_ module in the PIM (Product Information Management) application developed by `Akretion `_ + +**Table of contents** + +.. contents:: + :local: + +Usage +===== + +To understand how to create and use Attributes, please refer to the `attribute_set` module's README. + +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 +~~~~~~~ + +* Akretion + Contributors ------------- +~~~~~~~~~~~~ + +* Sébastien BEAU +* Clément Mombereau * Benoît Guillot * David Dufresne * El Hadji Dem + +Maintainers +~~~~~~~~~~~ + +This module is part of the `clementmbr/odoo-pim `_ project on GitHub. + +You are welcome to contribute. diff --git a/product_attribute_set/readme/CONTRIBUTORS.rst b/product_attribute_set/readme/CONTRIBUTORS.rst new file mode 100644 index 00000000..6fcf12ff --- /dev/null +++ b/product_attribute_set/readme/CONTRIBUTORS.rst @@ -0,0 +1,5 @@ +* Sébastien BEAU +* Clément Mombereau +* Benoît Guillot +* David Dufresne +* El Hadji Dem diff --git a/product_attribute_set/readme/DESCRIPTION.rst b/product_attribute_set/readme/DESCRIPTION.rst new file mode 100644 index 00000000..926945df --- /dev/null +++ b/product_attribute_set/readme/DESCRIPTION.rst @@ -0,0 +1,3 @@ +This module allows to display product's Attributes in product form views thanks to the `attribute_set `_ module. It also adds a suggested link between product's Category and product's Attribute Set. + +However this module **does not provide an Attribute menu** to easily manage product's Attribute as this feature is covered by the `pim_attribute_set `_ module in the PIM (Product Information Management) application developed by `Akretion `_ diff --git a/product_attribute_set/readme/ROADMAP.rst b/product_attribute_set/readme/ROADMAP.rst new file mode 100644 index 00000000..e69de29b diff --git a/product_attribute_set/readme/USAGE.rst b/product_attribute_set/readme/USAGE.rst new file mode 100644 index 00000000..f679e348 --- /dev/null +++ b/product_attribute_set/readme/USAGE.rst @@ -0,0 +1 @@ +To understand how to create and use Attributes, please refer to the `attribute_set` module's README. diff --git a/product_attribute_set/static/description/index.html b/product_attribute_set/static/description/index.html new file mode 100644 index 00000000..dac89433 --- /dev/null +++ b/product_attribute_set/static/description/index.html @@ -0,0 +1,424 @@ + + + + + + +Product Attribute Set + + + +
+

Product Attribute Set

+ + +

Beta License: AGPL-3 clementmbr/odoo-pim

+

This module allows to display product’s Attributes in product form views thanks to the attribute_set module. It also adds a suggested link between product’s Category and product’s Attribute Set.

+

However this module does not provide an Attribute menu to easily manage product’s Attribute as this feature is covered by the pim_attribute_set module in the PIM (Product Information Management) application developed by Akretion

+

Table of contents

+ +
+

Usage

+

To understand how to create and use Attributes, please refer to the attribute_set module’s README.

+
+
+

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

+
    +
  • Akretion
  • +
+
+ +
+

Maintainers

+

This module is part of the clementmbr/odoo-pim project on GitHub.

+

You are welcome to contribute.

+
+
+
+ + From 1a233a5c07fb750249b329063f1643f8379a4fd5 Mon Sep 17 00:00:00 2001 From: clementmbr Date: Wed, 27 May 2020 13:10:35 -0300 Subject: [PATCH 04/27] [IMP] Move Product's attributes_placeholder to product_attribute_set --- product_attribute_set/__manifest__.py | 2 +- product_attribute_set/views/product.xml | 51 +++++++++++++++++++ .../views/product_category.xml | 17 +++++++ 3 files changed, 69 insertions(+), 1 deletion(-) create mode 100644 product_attribute_set/views/product.xml create mode 100644 product_attribute_set/views/product_category.xml diff --git a/product_attribute_set/__manifest__.py b/product_attribute_set/__manifest__.py index d68cb978..34b51876 100644 --- a/product_attribute_set/__manifest__.py +++ b/product_attribute_set/__manifest__.py @@ -10,7 +10,7 @@ "author": "Akretion", "website": "https://akretion.com", "depends": ["product", "attribute_set"], - "data": [], + "data": ["views/product.xml", "views/product_category.xml"], "demo": ["demo/product_attribute.xml"], "installable": True, } diff --git a/product_attribute_set/views/product.xml b/product_attribute_set/views/product.xml new file mode 100644 index 00000000..1d752dc0 --- /dev/null +++ b/product_attribute_set/views/product.xml @@ -0,0 +1,51 @@ + + + + {"include_native_attribute": 1, "search_default_filter_to_sell": 1} + + + attributes.product.normal.form + product.template + + + +
+
+
+ + + + + + +
+
+ + product.template + + + + + + + + + +
diff --git a/product_attribute_set/views/product_category.xml b/product_attribute_set/views/product_category.xml new file mode 100644 index 00000000..ea962411 --- /dev/null +++ b/product_attribute_set/views/product_category.xml @@ -0,0 +1,17 @@ + + + + product.category.form + product.category + + + + + + + + From 35bf2d6e54e6a1d28b2474ec9b64defbee247e84 Mon Sep 17 00:00:00 2001 From: clementmbr Date: Wed, 27 May 2020 13:14:34 -0300 Subject: [PATCH 05/27] [IMP] remove class in super() and other misc improvements --- product_attribute_set/models/product_category.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/product_attribute_set/models/product_category.py b/product_attribute_set/models/product_category.py index 8480d33d..4d62bd28 100644 --- a/product_attribute_set/models/product_category.py +++ b/product_attribute_set/models/product_category.py @@ -17,7 +17,7 @@ class ProductCategory(models.Model): @api.multi def write(self, vals): """Fill Category's products with Category's default attribute_set_id if empty""" - super(ProductCategory, self).write(vals) + super().write(vals) if vals.get("attribute_set_id"): product_ids = self.env["product.template"].search( [("categ_id", "=", self.id), ("attribute_set_id", "=", False)] From a9525ff40ffda78e7315cf716e3c55b132e82179 Mon Sep 17 00:00:00 2001 From: clementmbr Date: Wed, 27 May 2020 13:15:02 -0300 Subject: [PATCH 06/27] [FIX] remove tests in product_attribute_set --- product_attribute_set/tests/__init__.py | 1 - .../tests/test_product_attribute.py | 22 ------------------- 2 files changed, 23 deletions(-) delete mode 100644 product_attribute_set/tests/__init__.py delete mode 100644 product_attribute_set/tests/test_product_attribute.py diff --git a/product_attribute_set/tests/__init__.py b/product_attribute_set/tests/__init__.py deleted file mode 100644 index 2ef99fc7..00000000 --- a/product_attribute_set/tests/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from . import test_product_attribute diff --git a/product_attribute_set/tests/test_product_attribute.py b/product_attribute_set/tests/test_product_attribute.py deleted file mode 100644 index 38336491..00000000 --- a/product_attribute_set/tests/test_product_attribute.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright 2018 Akretion (http://www.akretion.com). -# @author Benoit Guillot -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). - -from odoo.tests.common import TransactionCase - - -class TestProductAttribute(TransactionCase): - def setUp(self): - super(TestProductAttribute, self).setUp() - self.product = self.env.ref("product.product_product_3") - - def test_write_attribute_values_text(self): - self.product.write({"x_technical_description": "abcd"}) - self.assertEqual(self.product.x_technical_description, "abcd") - - def test_write_attribute_values_select(self): - option = self.env.ref( - "product_attribute_set.computer_processor_attribute_option_1" - ) - self.product.write({"x_processor": option.id}) - self.assertEqual(self.product.x_processor, option) From 80bd890dd257e0fca959d18948dc986c57b4432c Mon Sep 17 00:00:00 2001 From: clementmbr Date: Wed, 3 Jun 2020 11:09:09 -0300 Subject: [PATCH 07/27] [REF] remove @api.multi [UPD] README.rst [UPD] README.rst --- product_attribute_set/README.rst | 12 ++++++------ product_attribute_set/models/product.py | 1 - product_attribute_set/models/product_category.py | 3 +-- product_attribute_set/static/description/index.html | 8 ++++---- 4 files changed, 11 insertions(+), 13 deletions(-) diff --git a/product_attribute_set/README.rst b/product_attribute_set/README.rst index 9a515a66..7f8465ef 100644 --- a/product_attribute_set/README.rst +++ b/product_attribute_set/README.rst @@ -13,9 +13,9 @@ Product Attribute Set .. |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-clementmbr%2Fodoo--pim-lightgray.png?logo=github - :target: https://github.com/clementmbr/odoo-pim/tree/12.0/product_attribute_set - :alt: clementmbr/odoo-pim +.. |badge3| image:: https://img.shields.io/badge/github-shopinvader%2Fodoo--pim-lightgray.png?logo=github + :target: https://github.com/shopinvader/odoo-pim/tree/13.0/product_attribute_set + :alt: shopinvader/odoo-pim |badge1| |badge2| |badge3| @@ -36,10 +36,10 @@ To understand how to create and use Attributes, please refer to the `attribute_s Bug Tracker =========== -Bugs are tracked on `GitHub Issues `_. +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. @@ -63,6 +63,6 @@ Contributors Maintainers ~~~~~~~~~~~ -This module is part of the `clementmbr/odoo-pim `_ project on GitHub. +This module is part of the `shopinvader/odoo-pim `_ project on GitHub. You are welcome to contribute. diff --git a/product_attribute_set/models/product.py b/product_attribute_set/models/product.py index dfbfbdf5..5a920715 100644 --- a/product_attribute_set/models/product.py +++ b/product_attribute_set/models/product.py @@ -37,7 +37,6 @@ def create(self, vals): vals["attribute_set_id"] = category.attribute_set_id.id return super().create(vals) - @api.multi def write(self, vals): if not vals.get("attribute_set_id") and vals.get("categ_id"): category = self.env["product.category"].browse(vals["categ_id"]) diff --git a/product_attribute_set/models/product_category.py b/product_attribute_set/models/product_category.py index 4d62bd28..db7b4553 100644 --- a/product_attribute_set/models/product_category.py +++ b/product_attribute_set/models/product_category.py @@ -2,7 +2,7 @@ # @author Benoit Guillot # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). -from odoo import api, fields, models +from odoo import fields, models class ProductCategory(models.Model): @@ -14,7 +14,6 @@ class ProductCategory(models.Model): context={"default_model_id": "product.template"}, ) - @api.multi def write(self, vals): """Fill Category's products with Category's default attribute_set_id if empty""" super().write(vals) diff --git a/product_attribute_set/static/description/index.html b/product_attribute_set/static/description/index.html index dac89433..3df3a620 100644 --- a/product_attribute_set/static/description/index.html +++ b/product_attribute_set/static/description/index.html @@ -367,7 +367,7 @@

Product Attribute Set

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

Beta License: AGPL-3 clementmbr/odoo-pim

+

Beta License: AGPL-3 shopinvader/odoo-pim

This module allows to display product’s Attributes in product form views thanks to the attribute_set module. It also adds a suggested link between product’s Category and product’s Attribute Set.

However this module does not provide an Attribute menu to easily manage product’s Attribute as this feature is covered by the pim_attribute_set module in the PIM (Product Information Management) application developed by Akretion

Table of contents

@@ -389,10 +389,10 @@

Usage

Bug Tracker

-

Bugs are tracked on GitHub Issues. +

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.

@@ -415,7 +415,7 @@

Contributors

Maintainers

-

This module is part of the clementmbr/odoo-pim project on GitHub.

+

This module is part of the shopinvader/odoo-pim project on GitHub.

You are welcome to contribute.

From 3793633aa922091e35777fe8bd43bd3cbcf47ef5 Mon Sep 17 00:00:00 2001 From: Denis Roussel Date: Fri, 12 Jun 2020 09:52:35 +0200 Subject: [PATCH 08/27] [13.0] Set modules to installable False --- product_attribute_set/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/product_attribute_set/__manifest__.py b/product_attribute_set/__manifest__.py index 34b51876..2796e973 100644 --- a/product_attribute_set/__manifest__.py +++ b/product_attribute_set/__manifest__.py @@ -12,5 +12,5 @@ "depends": ["product", "attribute_set"], "data": ["views/product.xml", "views/product_category.xml"], "demo": ["demo/product_attribute.xml"], - "installable": True, + "installable": False, } From 4c2d80ace1d04bc6caeac2ec72c31aeb51052834 Mon Sep 17 00:00:00 2001 From: Denis Roussel Date: Fri, 12 Jun 2020 11:23:58 +0200 Subject: [PATCH 09/27] [13.0] Set modules version to 13 --- product_attribute_set/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/product_attribute_set/__manifest__.py b/product_attribute_set/__manifest__.py index 2796e973..359a643b 100644 --- a/product_attribute_set/__manifest__.py +++ b/product_attribute_set/__manifest__.py @@ -4,7 +4,7 @@ { "name": "Product Attribute Set", - "version": "12.0.2.0.0", + "version": "13.0.2.0.0", "category": "Generic Modules/Others", "license": "AGPL-3", "author": "Akretion", From e846f07331d4c2de5d7b97d588a4a4c3aa521506 Mon Sep 17 00:00:00 2001 From: Denis Roussel Date: Mon, 15 Jun 2020 08:48:35 +0200 Subject: [PATCH 10/27] [13.0][MIG] product_attribute_set [UPD] README.rst --- product_attribute_set/README.rst | 1 + product_attribute_set/__manifest__.py | 8 +++----- product_attribute_set/models/product.py | 10 ++++++---- product_attribute_set/readme/CONTRIBUTORS.rst | 1 + product_attribute_set/static/description/index.html | 1 + 5 files changed, 12 insertions(+), 9 deletions(-) diff --git a/product_attribute_set/README.rst b/product_attribute_set/README.rst index 7f8465ef..9d452136 100644 --- a/product_attribute_set/README.rst +++ b/product_attribute_set/README.rst @@ -59,6 +59,7 @@ Contributors * Benoît Guillot * David Dufresne * El Hadji Dem +* Denis Roussel Maintainers ~~~~~~~~~~~ diff --git a/product_attribute_set/__manifest__.py b/product_attribute_set/__manifest__.py index 359a643b..6f854b92 100644 --- a/product_attribute_set/__manifest__.py +++ b/product_attribute_set/__manifest__.py @@ -1,16 +1,14 @@ # Copyright 2015 Akretion (http://www.akretion.com). # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). - - { "name": "Product Attribute Set", - "version": "13.0.2.0.0", + "version": "13.0.1.0.0", "category": "Generic Modules/Others", "license": "AGPL-3", "author": "Akretion", - "website": "https://akretion.com", + "website": "https://shopinvader.com", "depends": ["product", "attribute_set"], "data": ["views/product.xml", "views/product_category.xml"], "demo": ["demo/product_attribute.xml"], - "installable": False, + "installable": True, } diff --git a/product_attribute_set/models/product.py b/product_attribute_set/models/product.py index 5a920715..7e387716 100644 --- a/product_attribute_set/models/product.py +++ b/product_attribute_set/models/product.py @@ -16,6 +16,12 @@ class ProductTemplate(models.Model): _inherit = ["product.template", "attribute.set.owner.mixin"] _name = "product.template" + attribute_set_id = fields.Many2one( + "attribute.set", + "Attribute Set", + default=lambda self: self._get_default_att_set(), + ) + def _get_default_att_set(self): """ Fill default Product's attribute_set with its Category's default attribute_set.""" @@ -26,10 +32,6 @@ def _get_default_att_set(self): ) return default_categ_id.attribute_set_id.id - attribute_set_id = fields.Many2one( - "attribute.set", "Attribute Set", default=_get_default_att_set - ) - @api.model def create(self, vals): if not vals.get("attribute_set_id") and vals.get("categ_id"): diff --git a/product_attribute_set/readme/CONTRIBUTORS.rst b/product_attribute_set/readme/CONTRIBUTORS.rst index 6fcf12ff..21068774 100644 --- a/product_attribute_set/readme/CONTRIBUTORS.rst +++ b/product_attribute_set/readme/CONTRIBUTORS.rst @@ -3,3 +3,4 @@ * Benoît Guillot * David Dufresne * El Hadji Dem +* Denis Roussel diff --git a/product_attribute_set/static/description/index.html b/product_attribute_set/static/description/index.html index 3df3a620..fa819fa0 100644 --- a/product_attribute_set/static/description/index.html +++ b/product_attribute_set/static/description/index.html @@ -411,6 +411,7 @@

Contributors

  • Benoît Guillot <benoit.guillot@akretion.com>
  • David Dufresne <david.dufresne@savoirfairelinux.com>
  • El Hadji Dem <elhadji.dem@savoirfairelinux.com>
  • +
  • Denis Roussel <denis.roussel@acsone.eu>
  • From ebbb0714b4c232b12b9223ce8d4a561001aa81bb Mon Sep 17 00:00:00 2001 From: Pierrick Brun Date: Thu, 18 Feb 2021 10:49:46 +0100 Subject: [PATCH 11/27] [MIG] make all modules uninstallable --- product_attribute_set/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/product_attribute_set/__manifest__.py b/product_attribute_set/__manifest__.py index 6f854b92..0800b15c 100644 --- a/product_attribute_set/__manifest__.py +++ b/product_attribute_set/__manifest__.py @@ -10,5 +10,5 @@ "depends": ["product", "attribute_set"], "data": ["views/product.xml", "views/product_category.xml"], "demo": ["demo/product_attribute.xml"], - "installable": True, + "installable": False, } From 2a3c7699a660de8019e5ff13e9beb2360368f019 Mon Sep 17 00:00:00 2001 From: Pierrick Brun Date: Thu, 18 Feb 2021 10:50:37 +0100 Subject: [PATCH 12/27] [MIG] update pre-commit conf from copier --- product_attribute_set/__manifest__.py | 2 +- product_attribute_set/models/product.py | 2 +- product_attribute_set/views/product.xml | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/product_attribute_set/__manifest__.py b/product_attribute_set/__manifest__.py index 0800b15c..77a1e2bc 100644 --- a/product_attribute_set/__manifest__.py +++ b/product_attribute_set/__manifest__.py @@ -6,7 +6,7 @@ "category": "Generic Modules/Others", "license": "AGPL-3", "author": "Akretion", - "website": "https://shopinvader.com", + "website": "https://github.com/shopinvader/odoo-pim", "depends": ["product", "attribute_set"], "data": ["views/product.xml", "views/product_category.xml"], "demo": ["demo/product_attribute.xml"], diff --git a/product_attribute_set/models/product.py b/product_attribute_set/models/product.py index 7e387716..5aca5d34 100644 --- a/product_attribute_set/models/product.py +++ b/product_attribute_set/models/product.py @@ -23,7 +23,7 @@ class ProductTemplate(models.Model): ) def _get_default_att_set(self): - """ Fill default Product's attribute_set with its Category's + """Fill default Product's attribute_set with its Category's default attribute_set.""" default_categ_id_id = self._get_default_category_id() if default_categ_id_id: diff --git a/product_attribute_set/views/product.xml b/product_attribute_set/views/product.xml index 1d752dc0..b5180a1e 100644 --- a/product_attribute_set/views/product.xml +++ b/product_attribute_set/views/product.xml @@ -1,9 +1,9 @@ - {"include_native_attribute": 1, "search_default_filter_to_sell": 1} + + {"include_native_attribute": 1, "search_default_filter_to_sell": 1} + attributes.product.normal.form From a5266f7d4f22cb226cce41b1673a6acc348609b8 Mon Sep 17 00:00:00 2001 From: Pierrick Brun Date: Wed, 6 Jan 2021 11:27:27 +0100 Subject: [PATCH 13/27] [IMP] product_attribute_set: black, isort, prettier --- product_attribute_set/__manifest__.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/product_attribute_set/__manifest__.py b/product_attribute_set/__manifest__.py index 77a1e2bc..54d9be90 100644 --- a/product_attribute_set/__manifest__.py +++ b/product_attribute_set/__manifest__.py @@ -2,7 +2,7 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { "name": "Product Attribute Set", - "version": "13.0.1.0.0", + "version": "14.0.1.0.0", "category": "Generic Modules/Others", "license": "AGPL-3", "author": "Akretion", @@ -10,5 +10,5 @@ "depends": ["product", "attribute_set"], "data": ["views/product.xml", "views/product_category.xml"], "demo": ["demo/product_attribute.xml"], - "installable": False, + "installable": True, } From cd74163c85afba6dcf4ffa9366f252128bb20c1f Mon Sep 17 00:00:00 2001 From: Pierrick Brun Date: Wed, 6 Jan 2021 11:27:27 +0100 Subject: [PATCH 14/27] [MIG] product_attribute_set: Migration to 14.0 [UPD] README.rst [UPD] README.rst [ADD] icon.png --- product_attribute_set/README.rst | 29 +++++++++++++----- product_attribute_set/models/product.py | 2 +- .../static/description/icon.png | Bin 0 -> 9455 bytes .../static/description/index.html | 15 ++++++--- 4 files changed, 32 insertions(+), 14 deletions(-) create mode 100644 product_attribute_set/static/description/icon.png diff --git a/product_attribute_set/README.rst b/product_attribute_set/README.rst index 9d452136..78c0a6d7 100644 --- a/product_attribute_set/README.rst +++ b/product_attribute_set/README.rst @@ -13,11 +13,14 @@ Product Attribute Set .. |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-shopinvader%2Fodoo--pim-lightgray.png?logo=github - :target: https://github.com/shopinvader/odoo-pim/tree/13.0/product_attribute_set - :alt: shopinvader/odoo-pim +.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fodoo--pim-lightgray.png?logo=github + :target: https://github.com/OCA/odoo-pim/tree/14.0/product_attribute_set + :alt: OCA/odoo-pim +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/odoo-pim-14-0/odoo-pim-14-0-product_attribute_set + :alt: Translate me on Weblate -|badge1| |badge2| |badge3| +|badge1| |badge2| |badge3| |badge4| This module allows to display product's Attributes in product form views thanks to the `attribute_set `_ module. It also adds a suggested link between product's Category and product's Attribute Set. @@ -36,10 +39,10 @@ To understand how to create and use Attributes, please refer to the `attribute_s Bug Tracker =========== -Bugs are tracked on `GitHub Issues `_. +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. @@ -64,6 +67,16 @@ Contributors Maintainers ~~~~~~~~~~~ -This module is part of the `shopinvader/odoo-pim `_ project on GitHub. +This module is maintained by the OCA. -You are welcome to contribute. +.. 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/odoo-pim `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/product_attribute_set/models/product.py b/product_attribute_set/models/product.py index 5aca5d34..7fd7c5dc 100644 --- a/product_attribute_set/models/product.py +++ b/product_attribute_set/models/product.py @@ -28,7 +28,7 @@ def _get_default_att_set(self): default_categ_id_id = self._get_default_category_id() if default_categ_id_id: default_categ_id = self.env["product.category"].search( - [("id", "=", default_categ_id_id)] + [("id", "=", default_categ_id_id.id)] ) return default_categ_id.attribute_set_id.id diff --git a/product_attribute_set/static/description/icon.png b/product_attribute_set/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d GIT binary patch literal 9455 zcmW++2RxMjAAjx~&dlBk9S+%}OXg)AGE&Cb*&}d0jUxM@u(PQx^-s)697TX`ehR4?GS^qbkof1cslKgkU)h65qZ9Oc=ml_0temigYLJfnz{IDzUf>bGs4N!v3=Z3jMq&A#7%rM5eQ#dc?k~! zVpnB`o+K7|Al`Q_U;eD$B zfJtP*jH`siUq~{KE)`jP2|#TUEFGRryE2`i0**z#*^6~AI|YzIWy$Cu#CSLW3q=GA z6`?GZymC;dCPk~rBS%eCb`5OLr;RUZ;D`}um=H)BfVIq%7VhiMr)_#G0N#zrNH|__ zc+blN2UAB0=617@>_u;MPHN;P;N#YoE=)R#i$k_`UAA>WWCcEVMh~L_ zj--gtp&|K1#58Yz*AHCTMziU1Jzt_jG0I@qAOHsk$2}yTmVkBp_eHuY$A9)>P6o~I z%aQ?!(GqeQ-Y+b0I(m9pwgi(IIZZzsbMv+9w{PFtd_<_(LA~0H(xz{=FhLB@(1&qHA5EJw1>>=%q2f&^X>IQ{!GJ4e9U z&KlB)z(84HmNgm2hg2C0>WM{E(DdPr+EeU_N@57;PC2&DmGFW_9kP&%?X4}+xWi)( z;)z%wI5>D4a*5XwD)P--sPkoY(a~WBw;E~AW`Yue4kFa^LM3X`8x|}ZUeMnqr}>kH zG%WWW>3ml$Yez?i%)2pbKPI7?5o?hydokgQyZsNEr{a|mLdt;X2TX(#B1j35xPnPW z*bMSSOauW>o;*=kO8ojw91VX!qoOQb)zHJ!odWB}d+*K?#sY_jqPdg{Sm2HdYzdEx zOGVPhVRTGPtv0o}RfVP;Nd(|CB)I;*t&QO8h zFfekr30S!-LHmV_Su-W+rEwYXJ^;6&3|L$mMC8*bQptyOo9;>Qb9Q9`ySe3%V$A*9 zeKEe+b0{#KWGp$F+tga)0RtI)nhMa-K@JS}2krK~n8vJ=Ngm?R!9G<~RyuU0d?nz# z-5EK$o(!F?hmX*2Yt6+coY`6jGbb7tF#6nHA zuKk=GGJ;ZwON1iAfG$E#Y7MnZVmrY|j0eVI(DN_MNFJmyZ|;w4tf@=CCDZ#5N_0K= z$;R~bbk?}TpfDjfB&aiQ$VA}s?P}xPERJG{kxk5~R`iRS(SK5d+Xs9swCozZISbnS zk!)I0>t=A<-^z(cmSFz3=jZ23u13X><0b)P)^1T_))Kr`e!-pb#q&J*Q`p+B6la%C zuVl&0duN<;uOsB3%T9Fp8t{ED108<+W(nOZd?gDnfNBC3>M8WE61$So|P zVvqH0SNtDTcsUdzaMDpT=Ty0pDHHNL@Z0w$Y`XO z2M-_r1S+GaH%pz#Uy0*w$Vdl=X=rQXEzO}d6J^R6zjM1u&c9vYLvLp?W7w(?np9x1 zE_0JSAJCPB%i7p*Wvg)pn5T`8k3-uR?*NT|J`eS#_#54p>!p(mLDvmc-3o0mX*mp_ zN*AeS<>#^-{S%W<*mz^!X$w_2dHWpcJ6^j64qFBft-o}o_Vx80o0>}Du;>kLts;$8 zC`7q$QI(dKYG`Wa8#wl@V4jVWBRGQ@1dr-hstpQL)Tl+aqVpGpbSfN>5i&QMXfiZ> zaA?T1VGe?rpQ@;+pkrVdd{klI&jVS@I5_iz!=UMpTsa~mBga?1r}aRBm1WS;TT*s0f0lY=JBl66Upy)-k4J}lh=P^8(SXk~0xW=T9v*B|gzIhN z>qsO7dFd~mgxAy4V?&)=5ieYq?zi?ZEoj)&2o)RLy=@hbCRcfT5jigwtQGE{L*8<@Yd{zg;CsL5mvzfDY}P-wos_6PfprFVaeqNE%h zKZhLtcQld;ZD+>=nqN~>GvROfueSzJD&BE*}XfU|H&(FssBqY=hPCt`d zH?@s2>I(|;fcW&YM6#V#!kUIP8$Nkdh0A(bEVj``-AAyYgwY~jB zT|I7Bf@%;7aL7Wf4dZ%VqF$eiaC38OV6oy3Z#TER2G+fOCd9Iaoy6aLYbPTN{XRPz z;U!V|vBf%H!}52L2gH_+j;`bTcQRXB+y9onc^wLm5wi3-Be}U>k_u>2Eg$=k!(l@I zcCg+flakT2Nej3i0yn+g+}%NYb?ta;R?(g5SnwsQ49U8Wng8d|{B+lyRcEDvR3+`O{zfmrmvFrL6acVP%yG98X zo&+VBg@px@i)%o?dG(`T;n*$S5*rnyiR#=wW}}GsAcfyQpE|>a{=$Hjg=-*_K;UtD z#z-)AXwSRY?OPefw^iI+ z)AXz#PfEjlwTes|_{sB?4(O@fg0AJ^g8gP}ex9Ucf*@_^J(s_5jJV}c)s$`Myn|Kd z$6>}#q^n{4vN@+Os$m7KV+`}c%4)4pv@06af4-x5#wj!KKb%caK{A&Y#Rfs z-po?Dcb1({W=6FKIUirH&(yg=*6aLCekcKwyfK^JN5{wcA3nhO(o}SK#!CINhI`-I z1)6&n7O&ZmyFMuNwvEic#IiOAwNkR=u5it{B9n2sAJV5pNhar=j5`*N!Na;c7g!l$ z3aYBqUkqqTJ=Re-;)s!EOeij=7SQZ3Hq}ZRds%IM*PtM$wV z@;rlc*NRK7i3y5BETSKuumEN`Xu_8GP1Ri=OKQ$@I^ko8>H6)4rjiG5{VBM>B|%`&&s^)jS|-_95&yc=GqjNo{zFkw%%HHhS~e=s zD#sfS+-?*t|J!+ozP6KvtOl!R)@@-z24}`9{QaVLD^9VCSR2b`b!KC#o;Ki<+wXB6 zx3&O0LOWcg4&rv4QG0)4yb}7BFSEg~=IR5#ZRj8kg}dS7_V&^%#Do==#`u zpy6{ox?jWuR(;pg+f@mT>#HGWHAJRRDDDv~@(IDw&R>9643kK#HN`!1vBJHnC+RM&yIh8{gG2q zA%e*U3|N0XSRa~oX-3EAneep)@{h2vvd3Xvy$7og(sayr@95+e6~Xvi1tUqnIxoIH zVWo*OwYElb#uyW{Imam6f2rGbjR!Y3`#gPqkv57dB6K^wRGxc9B(t|aYDGS=m$&S!NmCtrMMaUg(c zc2qC=2Z`EEFMW-me5B)24AqF*bV5Dr-M5ig(l-WPS%CgaPzs6p_gnCIvTJ=Y<6!gT zVt@AfYCzjjsMEGi=rDQHo0yc;HqoRNnNFeWZgcm?f;cp(6CNylj36DoL(?TS7eU#+ z7&mfr#y))+CJOXQKUMZ7QIdS9@#-}7y2K1{8)cCt0~-X0O!O?Qx#E4Og+;A2SjalQ zs7r?qn0H044=sDN$SRG$arw~n=+T_DNdSrarmu)V6@|?1-ZB#hRn`uilTGPJ@fqEy zGt(f0B+^JDP&f=r{#Y_wi#AVDf-y!RIXU^0jXsFpf>=Ji*TeqSY!H~AMbJdCGLhC) zn7Rx+sXw6uYj;WRYrLd^5IZq@6JI1C^YkgnedZEYy<&4(z%Q$5yv#Boo{AH8n$a zhb4Y3PWdr269&?V%uI$xMcUrMzl=;w<_nm*qr=c3Rl@i5wWB;e-`t7D&c-mcQl7x! zZWB`UGcw=Y2=}~wzrfLx=uet<;m3~=8I~ZRuzvMQUQdr+yTV|ATf1Uuomr__nDf=X zZ3WYJtHp_ri(}SQAPjv+Y+0=fH4krOP@S&=zZ-t1jW1o@}z;xk8 z(Nz1co&El^HK^NrhVHa-_;&88vTU>_J33=%{if;BEY*J#1n59=07jrGQ#IP>@u#3A z;!q+E1Rj3ZJ+!4bq9F8PXJ@yMgZL;>&gYA0%_Kbi8?S=XGM~dnQZQ!yBSgcZhY96H zrWnU;k)qy`rX&&xlDyA%(a1Hhi5CWkmg(`Gb%m(HKi-7Z!LKGRP_B8@`7&hdDy5n= z`OIxqxiVfX@OX1p(mQu>0Ai*v_cTMiw4qRt3~NBvr9oBy0)r>w3p~V0SCm=An6@3n)>@z!|o-$HvDK z|3D2ZMJkLE5loMKl6R^ez@Zz%S$&mbeoqH5`Bb){Ei21q&VP)hWS2tjShfFtGE+$z zzCR$P#uktu+#!w)cX!lWN1XU%K-r=s{|j?)Akf@q#3b#{6cZCuJ~gCxuMXRmI$nGtnH+-h z+GEi!*X=AP<|fG`1>MBdTb?28JYc=fGvAi2I<$B(rs$;eoJCyR6_bc~p!XR@O-+sD z=eH`-ye})I5ic1eL~TDmtfJ|8`0VJ*Yr=hNCd)G1p2MMz4C3^Mj?7;!w|Ly%JqmuW zlIEW^Ft%z?*|fpXda>Jr^1noFZEwFgVV%|*XhH@acv8rdGxeEX{M$(vG{Zw+x(ei@ zmfXb22}8-?Fi`vo-YVrTH*C?a8%M=Hv9MqVH7H^J$KsD?>!SFZ;ZsvnHr_gn=7acz z#W?0eCdVhVMWN12VV^$>WlQ?f;P^{(&pYTops|btm6aj>_Uz+hqpGwB)vWp0Cf5y< zft8-je~nn?W11plq}N)4A{l8I7$!ks_x$PXW-2XaRFswX_BnF{R#6YIwMhAgd5F9X zGmwdadS6(a^fjHtXg8=l?Rc0Sm%hk6E9!5cLVloEy4eh(=FwgP`)~I^5~pBEWo+F6 zSf2ncyMurJN91#cJTy_u8Y}@%!bq1RkGC~-bV@SXRd4F{R-*V`bS+6;W5vZ(&+I<9$;-V|eNfLa5n-6% z2(}&uGRF;p92eS*sE*oR$@pexaqr*meB)VhmIg@h{uzkk$9~qh#cHhw#>O%)b@+(| z^IQgqzuj~Sk(J;swEM-3TrJAPCq9k^^^`q{IItKBRXYe}e0Tdr=Huf7da3$l4PdpwWDop%^}n;dD#K4s#DYA8SHZ z&1!riV4W4R7R#C))JH1~axJ)RYnM$$lIR%6fIVA@zV{XVyx}C+a-Dt8Y9M)^KU0+H zR4IUb2CJ{Hg>CuaXtD50jB(_Tcx=Z$^WYu2u5kubqmwp%drJ6 z?Fo40g!Qd<-l=TQxqHEOuPX0;^z7iX?Ke^a%XT<13TA^5`4Xcw6D@Ur&VT&CUe0d} z1GjOVF1^L@>O)l@?bD~$wzgf(nxX1OGD8fEV?TdJcZc2KoUe|oP1#=$$7ee|xbY)A zDZq+cuTpc(fFdj^=!;{k03C69lMQ(|>uhRfRu%+!k&YOi-3|1QKB z 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 Xviia!U7SGha1wx#SCgwmn*{w2TRX*I literal 0 HcmV?d00001 diff --git a/product_attribute_set/static/description/index.html b/product_attribute_set/static/description/index.html index fa819fa0..393c8fb5 100644 --- a/product_attribute_set/static/description/index.html +++ b/product_attribute_set/static/description/index.html @@ -367,7 +367,7 @@

    Product Attribute Set

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

    Beta License: AGPL-3 shopinvader/odoo-pim

    +

    Beta License: AGPL-3 OCA/odoo-pim Translate me on Weblate

    This module allows to display product’s Attributes in product form views thanks to the attribute_set module. It also adds a suggested link between product’s Category and product’s Attribute Set.

    However this module does not provide an Attribute menu to easily manage product’s Attribute as this feature is covered by the pim_attribute_set module in the PIM (Product Information Management) application developed by Akretion

    Table of contents

    @@ -389,10 +389,10 @@

    Usage

    Bug Tracker

    -

    Bugs are tracked on GitHub Issues. +

    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.

    @@ -416,8 +416,13 @@

    Contributors

    Maintainers

    -

    This module is part of the shopinvader/odoo-pim project on GitHub.

    -

    You are welcome to contribute.

    +

    This module is maintained by the OCA.

    +Odoo Community Association +

    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/odoo-pim project on GitHub.

    +

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

    From 1667e88a947dc4186cee6a7f6b289af3e155e9c6 Mon Sep 17 00:00:00 2001 From: Pierrick Brun Date: Mon, 4 Jan 2021 15:25:04 +0100 Subject: [PATCH 15/27] [FIX] product_category multiple write courtesy of Apply dotfiles [UPD] Update product_attribute_set.pot --- product_attribute_set/__manifest__.py | 4 +- .../i18n/product_attribute_set.pot | 122 ++++++++++++++++++ .../models/product_category.py | 13 +- 3 files changed, 131 insertions(+), 8 deletions(-) create mode 100644 product_attribute_set/i18n/product_attribute_set.pot diff --git a/product_attribute_set/__manifest__.py b/product_attribute_set/__manifest__.py index 54d9be90..db0f4bb8 100644 --- a/product_attribute_set/__manifest__.py +++ b/product_attribute_set/__manifest__.py @@ -5,8 +5,8 @@ "version": "14.0.1.0.0", "category": "Generic Modules/Others", "license": "AGPL-3", - "author": "Akretion", - "website": "https://github.com/shopinvader/odoo-pim", + "author": "Akretion,Odoo Community Association (OCA)", + "website": "https://github.com/OCA/odoo-pim", "depends": ["product", "attribute_set"], "data": ["views/product.xml", "views/product_category.xml"], "demo": ["demo/product_attribute.xml"], diff --git a/product_attribute_set/i18n/product_attribute_set.pot b/product_attribute_set/i18n/product_attribute_set.pot new file mode 100644 index 00000000..f5ca98da --- /dev/null +++ b/product_attribute_set/i18n/product_attribute_set.pot @@ -0,0 +1,122 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_attribute_set +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.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_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_product__attribute_set_id +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_id +#: model_terms:ir.ui.view,arch_db:product_attribute_set.product_template_search_view +msgid "Attribute Set" +msgstr "" + +#. module: product_attribute_set +#: model_terms:ir.ui.view,arch_db:product_attribute_set.product_template_form_view +msgid "Attributes" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.set,name:product_attribute_set.computer_attribute_set +msgid "Computer" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category__attribute_set_id +msgid "Default Attribute Set" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category__display_name +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__display_name +msgid "Display Name" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category__id +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__id +msgid "ID" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.option,name:product_attribute_set.computer_processor_attribute_option_1 +msgid "Intel i5" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.option,name:product_attribute_set.computer_processor_attribute_option_2 +msgid "Intel i6" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.option,name:product_attribute_set.computer_processor_attribute_option_3 +msgid "Intel i7" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category____last_update +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template____last_update +msgid "Last Modified on" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.set,name:product_attribute_set.mouse_attribute_set +msgid "Mouse" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_processor_attribute +#: model:ir.model.fields,field_description:product_attribute_set.computer_processor_attribute_ir_model_fields +msgid "Processor" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model,name:product_attribute_set.model_product_category +msgid "Product Category" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model,name:product_attribute_set.model_product_template +msgid "Product Template" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.group,name:product_attribute_set.computer_technical_attribute_group +msgid "Technical" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_tech_description_attribute +#: model:ir.model.fields,field_description:product_attribute_set.computer_tech_description_attribute_ir_model_fields +msgid "Technical Description" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.group,name:product_attribute_set.computer_transport_attribute_group +msgid "Transport" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_volume_attribute +msgid "Volume" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_weight_attribute +msgid "Weight" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_linux_compatible_attribute +#: model:ir.model.fields,field_description:product_attribute_set.computer_linux_compatible_attribute_ir_model_fields +msgid "X Linux Compatible" +msgstr "" diff --git a/product_attribute_set/models/product_category.py b/product_attribute_set/models/product_category.py index db7b4553..2a471c5a 100644 --- a/product_attribute_set/models/product_category.py +++ b/product_attribute_set/models/product_category.py @@ -17,11 +17,12 @@ class ProductCategory(models.Model): def write(self, vals): """Fill Category's products with Category's default attribute_set_id if empty""" super().write(vals) - if vals.get("attribute_set_id"): - product_ids = self.env["product.template"].search( - [("categ_id", "=", self.id), ("attribute_set_id", "=", False)] - ) - for product_id in product_ids: - product_id.attribute_set_id = self.attribute_set_id + for record in self: + if vals.get("attribute_set_id"): + product_ids = self.env["product.template"].search( + [("categ_id", "=", record.id), ("attribute_set_id", "=", False)] + ) + for product_id in product_ids: + product_id.attribute_set_id = record.attribute_set_id return True From 4289b5deb4f40928940fc1fb63766a330657c905 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Sat, 15 May 2021 10:33:43 +0000 Subject: [PATCH 16/27] product_attribute_set 14.0.1.0.1 [UPD] README.rst --- product_attribute_set/README.rst | 5 ++++- product_attribute_set/__manifest__.py | 2 +- product_attribute_set/static/description/index.html | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/product_attribute_set/README.rst b/product_attribute_set/README.rst index 78c0a6d7..58f415ce 100644 --- a/product_attribute_set/README.rst +++ b/product_attribute_set/README.rst @@ -19,8 +19,11 @@ Product Attribute Set .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png :target: https://translation.odoo-community.org/projects/odoo-pim-14-0/odoo-pim-14-0-product_attribute_set :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png + :target: https://runbot.odoo-community.org/runbot/295/14.0 + :alt: Try me on Runbot -|badge1| |badge2| |badge3| |badge4| +|badge1| |badge2| |badge3| |badge4| |badge5| This module allows to display product's Attributes in product form views thanks to the `attribute_set `_ module. It also adds a suggested link between product's Category and product's Attribute Set. diff --git a/product_attribute_set/__manifest__.py b/product_attribute_set/__manifest__.py index db0f4bb8..ca0c060d 100644 --- a/product_attribute_set/__manifest__.py +++ b/product_attribute_set/__manifest__.py @@ -2,7 +2,7 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { "name": "Product Attribute Set", - "version": "14.0.1.0.0", + "version": "14.0.1.0.1", "category": "Generic Modules/Others", "license": "AGPL-3", "author": "Akretion,Odoo Community Association (OCA)", diff --git a/product_attribute_set/static/description/index.html b/product_attribute_set/static/description/index.html index 393c8fb5..23524867 100644 --- a/product_attribute_set/static/description/index.html +++ b/product_attribute_set/static/description/index.html @@ -367,7 +367,7 @@

    Product Attribute Set

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

    Beta License: AGPL-3 OCA/odoo-pim Translate me on Weblate

    +

    Beta License: AGPL-3 OCA/odoo-pim Translate me on Weblate Try me on Runbot

    This module allows to display product’s Attributes in product form views thanks to the attribute_set module. It also adds a suggested link between product’s Category and product’s Attribute Set.

    However this module does not provide an Attribute menu to easily manage product’s Attribute as this feature is covered by the pim_attribute_set module in the PIM (Product Information Management) application developed by Akretion

    Table of contents

    From 3b024098fe7ea6aba88e48a1b7f8376665026ba5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Borja=20Garc=C3=ADa=20Rouco?= Date: Thu, 27 May 2021 08:26:07 +0000 Subject: [PATCH 17/27] Added translation using Weblate (Spanish) [UPD] Update product_attribute_set.pot --- product_attribute_set/i18n/es.po | 123 ++++++++++++++++++ .../i18n/product_attribute_set.pot | 35 +++++ 2 files changed, 158 insertions(+) create mode 100644 product_attribute_set/i18n/es.po diff --git a/product_attribute_set/i18n/es.po b/product_attribute_set/i18n/es.po new file mode 100644 index 00000000..6fdd1f4f --- /dev/null +++ b/product_attribute_set/i18n/es.po @@ -0,0 +1,123 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_attribute_set +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: Automatically generated\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" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_product__attribute_set_id +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_id +#: model_terms:ir.ui.view,arch_db:product_attribute_set.product_template_search_view +msgid "Attribute Set" +msgstr "" + +#. module: product_attribute_set +#: model_terms:ir.ui.view,arch_db:product_attribute_set.product_template_form_view +msgid "Attributes" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.set,name:product_attribute_set.computer_attribute_set +msgid "Computer" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category__attribute_set_id +msgid "Default Attribute Set" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category__display_name +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__display_name +msgid "Display Name" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category__id +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__id +msgid "ID" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.option,name:product_attribute_set.computer_processor_attribute_option_1 +msgid "Intel i5" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.option,name:product_attribute_set.computer_processor_attribute_option_2 +msgid "Intel i6" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.option,name:product_attribute_set.computer_processor_attribute_option_3 +msgid "Intel i7" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category____last_update +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template____last_update +msgid "Last Modified on" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.set,name:product_attribute_set.mouse_attribute_set +msgid "Mouse" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_processor_attribute +#: model:ir.model.fields,field_description:product_attribute_set.computer_processor_attribute_ir_model_fields +msgid "Processor" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model,name:product_attribute_set.model_product_category +msgid "Product Category" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model,name:product_attribute_set.model_product_template +msgid "Product Template" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.group,name:product_attribute_set.computer_technical_attribute_group +msgid "Technical" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_tech_description_attribute +#: model:ir.model.fields,field_description:product_attribute_set.computer_tech_description_attribute_ir_model_fields +msgid "Technical Description" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.group,name:product_attribute_set.computer_transport_attribute_group +msgid "Transport" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_volume_attribute +msgid "Volume" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_weight_attribute +msgid "Weight" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_linux_compatible_attribute +#: model:ir.model.fields,field_description:product_attribute_set.computer_linux_compatible_attribute_ir_model_fields +msgid "X Linux Compatible" +msgstr "" diff --git a/product_attribute_set/i18n/product_attribute_set.pot b/product_attribute_set/i18n/product_attribute_set.pot index f5ca98da..70cb9d7e 100644 --- a/product_attribute_set/i18n/product_attribute_set.pot +++ b/product_attribute_set/i18n/product_attribute_set.pot @@ -20,11 +20,46 @@ msgstr "" msgid "Attribute Set" msgstr "" +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completion_rate +msgid "Attribute Set Completion Rate" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completion_state +msgid "Attribute Set Completion State" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completed_ids +msgid "Attribute Set completed criterias" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_not_completed_ids +msgid "Attribute Set not completed criterias" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,help:product_attribute_set.field_product_template__attribute_set_completion_rate +msgid "Attribute set completeness percentage" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,help:product_attribute_set.field_product_template__attribute_set_completion_state +msgid "Attribute set completeness status" +msgstr "" + #. module: product_attribute_set #: model_terms:ir.ui.view,arch_db:product_attribute_set.product_template_form_view msgid "Attributes" msgstr "" +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completeness_ids +msgid "Completeness Requirements" +msgstr "" + #. module: product_attribute_set #: model:attribute.set,name:product_attribute_set.computer_attribute_set msgid "Computer" From f8caa259108eb013d36ddda7ba24398f39be8d19 Mon Sep 17 00:00:00 2001 From: OCA Transbot Date: Wed, 6 Oct 2021 10:21:08 +0000 Subject: [PATCH 18/27] Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: odoo-pim-14.0/odoo-pim-14.0-product_attribute_set Translate-URL: https://translation.odoo-community.org/projects/odoo-pim-14-0/odoo-pim-14-0-product_attribute_set/ --- product_attribute_set/i18n/es.po | 35 ++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/product_attribute_set/i18n/es.po b/product_attribute_set/i18n/es.po index 6fdd1f4f..5eab902e 100644 --- a/product_attribute_set/i18n/es.po +++ b/product_attribute_set/i18n/es.po @@ -21,11 +21,46 @@ msgstr "" msgid "Attribute Set" msgstr "" +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completion_rate +msgid "Attribute Set Completion Rate" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completion_state +msgid "Attribute Set Completion State" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completed_ids +msgid "Attribute Set completed criterias" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_not_completed_ids +msgid "Attribute Set not completed criterias" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,help:product_attribute_set.field_product_template__attribute_set_completion_rate +msgid "Attribute set completeness percentage" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,help:product_attribute_set.field_product_template__attribute_set_completion_state +msgid "Attribute set completeness status" +msgstr "" + #. module: product_attribute_set #: model_terms:ir.ui.view,arch_db:product_attribute_set.product_template_form_view msgid "Attributes" msgstr "" +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completeness_ids +msgid "Completeness Requirements" +msgstr "" + #. module: product_attribute_set #: model:attribute.set,name:product_attribute_set.computer_attribute_set msgid "Computer" From a234aabf5d380016980e1d0ec1a802e49c8ed175 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Wed, 6 Oct 2021 13:09:20 +0000 Subject: [PATCH 19/27] product_attribute_set 14.0.1.0.2 --- product_attribute_set/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/product_attribute_set/__manifest__.py b/product_attribute_set/__manifest__.py index ca0c060d..bf52c1c1 100644 --- a/product_attribute_set/__manifest__.py +++ b/product_attribute_set/__manifest__.py @@ -2,7 +2,7 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { "name": "Product Attribute Set", - "version": "14.0.1.0.1", + "version": "14.0.1.0.2", "category": "Generic Modules/Others", "license": "AGPL-3", "author": "Akretion,Odoo Community Association (OCA)", From 4350bca7a89fad214743853a104d75d97d265462 Mon Sep 17 00:00:00 2001 From: Ignacio Buioli Date: Sun, 18 Sep 2022 14:45:03 +0000 Subject: [PATCH 20/27] Added translation using Weblate (Spanish (Argentina)) --- product_attribute_set/i18n/es_AR.po | 158 ++++++++++++++++++++++++++++ 1 file changed, 158 insertions(+) create mode 100644 product_attribute_set/i18n/es_AR.po diff --git a/product_attribute_set/i18n/es_AR.po b/product_attribute_set/i18n/es_AR.po new file mode 100644 index 00000000..83be5a18 --- /dev/null +++ b/product_attribute_set/i18n/es_AR.po @@ -0,0 +1,158 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_attribute_set +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: es_AR\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" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_product__attribute_set_id +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_id +#: model_terms:ir.ui.view,arch_db:product_attribute_set.product_template_search_view +msgid "Attribute Set" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completion_rate +msgid "Attribute Set Completion Rate" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completion_state +msgid "Attribute Set Completion State" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completed_ids +msgid "Attribute Set completed criterias" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_not_completed_ids +msgid "Attribute Set not completed criterias" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,help:product_attribute_set.field_product_template__attribute_set_completion_rate +msgid "Attribute set completeness percentage" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,help:product_attribute_set.field_product_template__attribute_set_completion_state +msgid "Attribute set completeness status" +msgstr "" + +#. module: product_attribute_set +#: model_terms:ir.ui.view,arch_db:product_attribute_set.product_template_form_view +msgid "Attributes" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completeness_ids +msgid "Completeness Requirements" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.set,name:product_attribute_set.computer_attribute_set +msgid "Computer" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category__attribute_set_id +msgid "Default Attribute Set" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category__display_name +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__display_name +msgid "Display Name" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category__id +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__id +msgid "ID" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.option,name:product_attribute_set.computer_processor_attribute_option_1 +msgid "Intel i5" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.option,name:product_attribute_set.computer_processor_attribute_option_2 +msgid "Intel i6" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.option,name:product_attribute_set.computer_processor_attribute_option_3 +msgid "Intel i7" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category____last_update +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template____last_update +msgid "Last Modified on" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.set,name:product_attribute_set.mouse_attribute_set +msgid "Mouse" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_processor_attribute +#: model:ir.model.fields,field_description:product_attribute_set.computer_processor_attribute_ir_model_fields +msgid "Processor" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model,name:product_attribute_set.model_product_category +msgid "Product Category" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model,name:product_attribute_set.model_product_template +msgid "Product Template" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.group,name:product_attribute_set.computer_technical_attribute_group +msgid "Technical" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_tech_description_attribute +#: model:ir.model.fields,field_description:product_attribute_set.computer_tech_description_attribute_ir_model_fields +msgid "Technical Description" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.group,name:product_attribute_set.computer_transport_attribute_group +msgid "Transport" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_volume_attribute +msgid "Volume" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_weight_attribute +msgid "Weight" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_linux_compatible_attribute +#: model:ir.model.fields,field_description:product_attribute_set.computer_linux_compatible_attribute_ir_model_fields +msgid "X Linux Compatible" +msgstr "" From a1ffea3bd01250244cd09e803f84a939ad472613 Mon Sep 17 00:00:00 2001 From: Ignacio Buioli Date: Sun, 18 Sep 2022 14:49:36 +0000 Subject: [PATCH 21/27] Translated using Weblate (Spanish (Argentina)) Currently translated at 100.0% (27 of 27 strings) Translation: odoo-pim-14.0/odoo-pim-14.0-product_attribute_set Translate-URL: https://translation.odoo-community.org/projects/odoo-pim-14-0/odoo-pim-14-0-product_attribute_set/es_AR/ --- product_attribute_set/i18n/es_AR.po | 58 +++++++++++++++-------------- 1 file changed, 30 insertions(+), 28 deletions(-) diff --git a/product_attribute_set/i18n/es_AR.po b/product_attribute_set/i18n/es_AR.po index 83be5a18..004ae260 100644 --- a/product_attribute_set/i18n/es_AR.po +++ b/product_attribute_set/i18n/es_AR.po @@ -6,153 +6,155 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 14.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: Automatically generated\n" +"PO-Revision-Date: 2022-09-18 17:07+0000\n" +"Last-Translator: Ignacio Buioli \n" "Language-Team: none\n" "Language: es_AR\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_attribute_set #: model:ir.model.fields,field_description:product_attribute_set.field_product_product__attribute_set_id #: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_id #: model_terms:ir.ui.view,arch_db:product_attribute_set.product_template_search_view msgid "Attribute Set" -msgstr "" +msgstr "Conjunto de Atributos" #. module: product_attribute_set #: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completion_rate msgid "Attribute Set Completion Rate" -msgstr "" +msgstr "Tasa de Finalización del Conjunto de Atributos" #. module: product_attribute_set #: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completion_state msgid "Attribute Set Completion State" -msgstr "" +msgstr "Estado de Finalización del Conjunto de Atributos" #. module: product_attribute_set #: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completed_ids msgid "Attribute Set completed criterias" -msgstr "" +msgstr "Criterios de Conjunto de Atributos completados" #. module: product_attribute_set #: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_not_completed_ids msgid "Attribute Set not completed criterias" -msgstr "" +msgstr "Criterios de Conjunto de Atributos no completados" #. module: product_attribute_set #: model:ir.model.fields,help:product_attribute_set.field_product_template__attribute_set_completion_rate msgid "Attribute set completeness percentage" -msgstr "" +msgstr "Porcentaje de finalización del Conjunto de atributos" #. module: product_attribute_set #: model:ir.model.fields,help:product_attribute_set.field_product_template__attribute_set_completion_state msgid "Attribute set completeness status" -msgstr "" +msgstr "Estado de finalización del conjunto de atributos" #. module: product_attribute_set #: model_terms:ir.ui.view,arch_db:product_attribute_set.product_template_form_view msgid "Attributes" -msgstr "" +msgstr "Atributos" #. module: product_attribute_set #: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completeness_ids msgid "Completeness Requirements" -msgstr "" +msgstr "Requerimientos de Finalización" #. module: product_attribute_set #: model:attribute.set,name:product_attribute_set.computer_attribute_set msgid "Computer" -msgstr "" +msgstr "Computadora" #. module: product_attribute_set #: model:ir.model.fields,field_description:product_attribute_set.field_product_category__attribute_set_id msgid "Default Attribute Set" -msgstr "" +msgstr "Conjunto de Atributos Predeterminado" #. module: product_attribute_set #: model:ir.model.fields,field_description:product_attribute_set.field_product_category__display_name #: model:ir.model.fields,field_description:product_attribute_set.field_product_template__display_name msgid "Display Name" -msgstr "" +msgstr "Nombre Mostrado" #. module: product_attribute_set #: model:ir.model.fields,field_description:product_attribute_set.field_product_category__id #: model:ir.model.fields,field_description:product_attribute_set.field_product_template__id msgid "ID" -msgstr "" +msgstr "ID" #. module: product_attribute_set #: model:attribute.option,name:product_attribute_set.computer_processor_attribute_option_1 msgid "Intel i5" -msgstr "" +msgstr "Intel i5" #. module: product_attribute_set #: model:attribute.option,name:product_attribute_set.computer_processor_attribute_option_2 msgid "Intel i6" -msgstr "" +msgstr "Intel i6" #. module: product_attribute_set #: model:attribute.option,name:product_attribute_set.computer_processor_attribute_option_3 msgid "Intel i7" -msgstr "" +msgstr "Intel i7" #. module: product_attribute_set #: model:ir.model.fields,field_description:product_attribute_set.field_product_category____last_update #: model:ir.model.fields,field_description:product_attribute_set.field_product_template____last_update msgid "Last Modified on" -msgstr "" +msgstr "Última Modificación el" #. module: product_attribute_set #: model:attribute.set,name:product_attribute_set.mouse_attribute_set msgid "Mouse" -msgstr "" +msgstr "Mouse" #. module: product_attribute_set #: model:attribute.attribute,field_description:product_attribute_set.computer_processor_attribute #: model:ir.model.fields,field_description:product_attribute_set.computer_processor_attribute_ir_model_fields msgid "Processor" -msgstr "" +msgstr "Procesador" #. module: product_attribute_set #: model:ir.model,name:product_attribute_set.model_product_category msgid "Product Category" -msgstr "" +msgstr "Categoria del Producto" #. module: product_attribute_set #: model:ir.model,name:product_attribute_set.model_product_template msgid "Product Template" -msgstr "" +msgstr "Plantilla de Producto" #. module: product_attribute_set #: model:attribute.group,name:product_attribute_set.computer_technical_attribute_group msgid "Technical" -msgstr "" +msgstr "Técnico" #. module: product_attribute_set #: model:attribute.attribute,field_description:product_attribute_set.computer_tech_description_attribute #: model:ir.model.fields,field_description:product_attribute_set.computer_tech_description_attribute_ir_model_fields msgid "Technical Description" -msgstr "" +msgstr "Descripción Técnica" #. module: product_attribute_set #: model:attribute.group,name:product_attribute_set.computer_transport_attribute_group msgid "Transport" -msgstr "" +msgstr "Transporte" #. module: product_attribute_set #: model:attribute.attribute,field_description:product_attribute_set.computer_volume_attribute msgid "Volume" -msgstr "" +msgstr "Volumen" #. module: product_attribute_set #: model:attribute.attribute,field_description:product_attribute_set.computer_weight_attribute msgid "Weight" -msgstr "" +msgstr "Peso" #. module: product_attribute_set #: model:attribute.attribute,field_description:product_attribute_set.computer_linux_compatible_attribute #: model:ir.model.fields,field_description:product_attribute_set.computer_linux_compatible_attribute_ir_model_fields msgid "X Linux Compatible" -msgstr "" +msgstr "X Compatible con Linux" From f03b34b6e141dc48d25f9ecca1ba448873c3b76c Mon Sep 17 00:00:00 2001 From: chandni299 Date: Tue, 11 Oct 2022 17:41:22 +0200 Subject: [PATCH 22/27] [IMP] product_attribute_set: black, isort, prettier --- product_attribute_set/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/product_attribute_set/__manifest__.py b/product_attribute_set/__manifest__.py index bf52c1c1..b3834987 100644 --- a/product_attribute_set/__manifest__.py +++ b/product_attribute_set/__manifest__.py @@ -2,7 +2,7 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { "name": "Product Attribute Set", - "version": "14.0.1.0.2", + "version": "15.0.1.0.0", "category": "Generic Modules/Others", "license": "AGPL-3", "author": "Akretion,Odoo Community Association (OCA)", From d28e5aa3ecdc25a81011042e1518dac8b6e663fa Mon Sep 17 00:00:00 2001 From: sbejaoui Date: Tue, 28 Feb 2023 12:08:32 +0100 Subject: [PATCH 23/27] [16.0][MIG] - product_attribute_set --- product_attribute_set/__manifest__.py | 2 +- product_attribute_set/models/product.py | 14 ++++++++------ .../odoo/addons/product_attribute_set | 1 + setup/product_attribute_set/setup.py | 6 ++++++ 4 files changed, 16 insertions(+), 7 deletions(-) create mode 120000 setup/product_attribute_set/odoo/addons/product_attribute_set create mode 100644 setup/product_attribute_set/setup.py diff --git a/product_attribute_set/__manifest__.py b/product_attribute_set/__manifest__.py index b3834987..98179607 100644 --- a/product_attribute_set/__manifest__.py +++ b/product_attribute_set/__manifest__.py @@ -2,7 +2,7 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { "name": "Product Attribute Set", - "version": "15.0.1.0.0", + "version": "16.0.1.0.0", "category": "Generic Modules/Others", "license": "AGPL-3", "author": "Akretion,Odoo Community Association (OCA)", diff --git a/product_attribute_set/models/product.py b/product_attribute_set/models/product.py index 7fd7c5dc..c78aa365 100644 --- a/product_attribute_set/models/product.py +++ b/product_attribute_set/models/product.py @@ -32,12 +32,14 @@ def _get_default_att_set(self): ) return default_categ_id.attribute_set_id.id - @api.model - def create(self, vals): - if not vals.get("attribute_set_id") and vals.get("categ_id"): - category = self.env["product.category"].browse(vals["categ_id"]) - vals["attribute_set_id"] = category.attribute_set_id.id - return super().create(vals) + @api.model_create_multi + def create(self, vals_list): + category_model = self.env["product.category"] + for vals in vals_list: + if not vals.get("attribute_set_id") and vals.get("categ_id"): + category = category_model.browse(vals["categ_id"]) + vals["attribute_set_id"] = category.attribute_set_id.id + return super().create(vals_list) def write(self, vals): if not vals.get("attribute_set_id") and vals.get("categ_id"): diff --git a/setup/product_attribute_set/odoo/addons/product_attribute_set b/setup/product_attribute_set/odoo/addons/product_attribute_set new file mode 120000 index 00000000..af8fabc4 --- /dev/null +++ b/setup/product_attribute_set/odoo/addons/product_attribute_set @@ -0,0 +1 @@ +../../../../product_attribute_set \ No newline at end of file diff --git a/setup/product_attribute_set/setup.py b/setup/product_attribute_set/setup.py new file mode 100644 index 00000000..28c57bb6 --- /dev/null +++ b/setup/product_attribute_set/setup.py @@ -0,0 +1,6 @@ +import setuptools + +setuptools.setup( + setup_requires=['setuptools-odoo'], + odoo_addon=True, +) From f30191a544d7fd4b4676798eeb57ff22d5f1e6ba Mon Sep 17 00:00:00 2001 From: hda Date: Tue, 28 Mar 2023 17:26:54 +0200 Subject: [PATCH 24/27] [16.0][MIG] - product_attribute_set: add trnaslation fr_BE --- product_attribute_set/i18n/fr_BE.po | 157 ++++++++++++++++++++++++++++ 1 file changed, 157 insertions(+) create mode 100644 product_attribute_set/i18n/fr_BE.po diff --git a/product_attribute_set/i18n/fr_BE.po b/product_attribute_set/i18n/fr_BE.po new file mode 100644 index 00000000..21f6da9b --- /dev/null +++ b/product_attribute_set/i18n/fr_BE.po @@ -0,0 +1,157 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_attribute_set +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.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_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_product__attribute_set_id +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_id +#: model_terms:ir.ui.view,arch_db:product_attribute_set.product_template_search_view +msgid "Attribute Set" +msgstr "Ensemble d'attribut" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completion_rate +msgid "Attribute Set Completion Rate" +msgstr "Taux d'achèvement de l'ensemble d'attribut" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completion_state +msgid "Attribute Set Completion State" +msgstr "État d'achèvement de l'ensemble d'attribut" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completed_ids +msgid "Attribute Set completed criterias" +msgstr "Critères remplis de l'ensemble d'attribut" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_not_completed_ids +msgid "Attribute Set not completed criterias" +msgstr "Critères non remplis de l'ensemble d'attribut" + +#. module: product_attribute_set +#: model:ir.model.fields,help:product_attribute_set.field_product_template__attribute_set_completion_rate +msgid "Attribute set completeness percentage" +msgstr "Pourcentage de complétude de l'ensemble d'attribut" + +#. module: product_attribute_set +#: model:ir.model.fields,help:product_attribute_set.field_product_template__attribute_set_completion_state +msgid "Attribute set completeness status" +msgstr "État de complétude de l'ensemble d'attribut" + +#. module: product_attribute_set +#: model_terms:ir.ui.view,arch_db:product_attribute_set.product_template_form_view +msgid "Attributes" +msgstr "Attributs" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__attribute_set_completeness_ids +msgid "Completeness Requirements" +msgstr "Exigences d'exhaustivité" + +#. module: product_attribute_set +#: model:attribute.set,name:product_attribute_set.computer_attribute_set +msgid "Computer" +msgstr "Ordinateur" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category__attribute_set_id +msgid "Default Attribute Set" +msgstr "Ensemble d'attribut par défaut" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category__display_name +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__display_name +msgid "Display Name" +msgstr "Nom affiché" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category__id +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template__id +msgid "ID" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.option,name:product_attribute_set.computer_processor_attribute_option_1 +msgid "Intel i5" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.option,name:product_attribute_set.computer_processor_attribute_option_2 +msgid "Intel i6" +msgstr "" + +#. module: product_attribute_set +#: model:attribute.option,name:product_attribute_set.computer_processor_attribute_option_3 +msgid "Intel i7" +msgstr "" + +#. module: product_attribute_set +#: model:ir.model.fields,field_description:product_attribute_set.field_product_category____last_update +#: model:ir.model.fields,field_description:product_attribute_set.field_product_template____last_update +msgid "Last Modified on" +msgstr "Dernière modification le" + +#. module: product_attribute_set +#: model:attribute.set,name:product_attribute_set.mouse_attribute_set +msgid "Mouse" +msgstr "Souris" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_processor_attribute +#: model:ir.model.fields,field_description:product_attribute_set.computer_processor_attribute_ir_model_fields +msgid "Processor" +msgstr "Processeur" + +#. module: product_attribute_set +#: model:ir.model,name:product_attribute_set.model_product_category +msgid "Product Category" +msgstr "Catégorie d'article" + +#. module: product_attribute_set +#: model:ir.model,name:product_attribute_set.model_product_template +msgid "Product Template" +msgstr "Article" + +#. module: product_attribute_set +#: model:attribute.group,name:product_attribute_set.computer_technical_attribute_group +msgid "Technical" +msgstr "Technique" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_tech_description_attribute +#: model:ir.model.fields,field_description:product_attribute_set.computer_tech_description_attribute_ir_model_fields +msgid "Technical Description" +msgstr "Description Technique" + +#. module: product_attribute_set +#: model:attribute.group,name:product_attribute_set.computer_transport_attribute_group +msgid "Transport" +msgstr "Transport" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_volume_attribute +msgid "Volume" +msgstr "Volume" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_weight_attribute +msgid "Weight" +msgstr "Poids" + +#. module: product_attribute_set +#: model:attribute.attribute,field_description:product_attribute_set.computer_linux_compatible_attribute +#: model:ir.model.fields,field_description:product_attribute_set.computer_linux_compatible_attribute_ir_model_fields +msgid "X Linux Compatible" +msgstr "Compatible linux X" From 59aebe6e880df09ccde1f8d0d1c66863f0d75ea3 Mon Sep 17 00:00:00 2001 From: hda Date: Wed, 29 Mar 2023 11:27:40 +0200 Subject: [PATCH 25/27] [16.0][MIG] - product_attribute_set: improve product view --- product_attribute_set/views/product.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/product_attribute_set/views/product.xml b/product_attribute_set/views/product.xml index b5180a1e..e86f1c5d 100644 --- a/product_attribute_set/views/product.xml +++ b/product_attribute_set/views/product.xml @@ -10,7 +10,7 @@ product.template - +