From acf7f9f6185e8c708ff0d4099f7c715c1bdbf1d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Mart=C3=ADnez?= Date: Fri, 31 May 2024 12:29:33 +0200 Subject: [PATCH 01/15] [ADD] document_page_access_group_user_role: New module TT48787 --- .../README.rst | 96 ++++ .../__init__.py | 1 + .../__manifest__.py | 16 + .../document_page_access_group_user_role.pot | 27 ++ .../i18n/es.po | 29 ++ .../models/__init__.py | 3 + .../models/document_page.py | 23 + .../readme/CONTRIBUTORS.rst | 4 + .../readme/DESCRIPTION.rst | 1 + .../readme/USAGE.rst | 5 + .../static/description/icon.png | Bin 0 -> 9455 bytes .../static/description/index.html | 438 ++++++++++++++++++ .../tests/__init__.py | 3 + ...st_document_page_access_group_user_role.py | 30 ++ .../views/document_page_views.xml | 31 ++ 15 files changed, 707 insertions(+) create mode 100644 document_page_access_group_user_role/README.rst create mode 100644 document_page_access_group_user_role/__init__.py create mode 100644 document_page_access_group_user_role/__manifest__.py create mode 100644 document_page_access_group_user_role/i18n/document_page_access_group_user_role.pot create mode 100644 document_page_access_group_user_role/i18n/es.po create mode 100644 document_page_access_group_user_role/models/__init__.py create mode 100644 document_page_access_group_user_role/models/document_page.py create mode 100644 document_page_access_group_user_role/readme/CONTRIBUTORS.rst create mode 100644 document_page_access_group_user_role/readme/DESCRIPTION.rst create mode 100644 document_page_access_group_user_role/readme/USAGE.rst create mode 100644 document_page_access_group_user_role/static/description/icon.png create mode 100644 document_page_access_group_user_role/static/description/index.html create mode 100644 document_page_access_group_user_role/tests/__init__.py create mode 100644 document_page_access_group_user_role/tests/test_document_page_access_group_user_role.py create mode 100644 document_page_access_group_user_role/views/document_page_views.xml diff --git a/document_page_access_group_user_role/README.rst b/document_page_access_group_user_role/README.rst new file mode 100644 index 00000000..da78eeab --- /dev/null +++ b/document_page_access_group_user_role/README.rst @@ -0,0 +1,96 @@ +==================================== +Document Page Access Group User Role +==================================== + +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:3dfd28474555ec556de2976f5339491a487ac211497f0396b3aa176dc457ec79 + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |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%2Fknowledge-lightgray.png?logo=github + :target: https://github.com/OCA/knowledge/tree/16.0/document_page_access_group_user_role + :alt: OCA/knowledge +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/knowledge-16-0/knowledge-16-0-document_page_access_group_user_role + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png + :target: https://runboat.odoo-community.org/builds?repo=OCA/knowledge&target_branch=16.0 + :alt: Try me on Runboat + +|badge1| |badge2| |badge3| |badge4| |badge5| + +Use of roles (module base_user_role) in Document Pages. + +**Table of contents** + +.. contents:: + :local: + +Usage +===== + +#. Go to `Settings / Users & Companies / Roles` and create a new one. +#. Go to `Knowledge / Pages` and create or edit one. +#. Set in the "Roles" tab the one we have just created. +#. Go back to the role, edit it and add any group(s). +#. The role groups will have been added in the "Security" tab. + +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 to smash it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +~~~~~~~ + +* Tecnativa + +Contributors +~~~~~~~~~~~~ + +* `Tecnativa `_: + + * Víctor Martínez + * Pedro M. Baeza + +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. + +.. |maintainer-victoralmau| image:: https://github.com/victoralmau.png?size=40px + :target: https://github.com/victoralmau + :alt: victoralmau + +Current `maintainer `__: + +|maintainer-victoralmau| + +This module is part of the `OCA/knowledge `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/document_page_access_group_user_role/__init__.py b/document_page_access_group_user_role/__init__.py new file mode 100644 index 00000000..0650744f --- /dev/null +++ b/document_page_access_group_user_role/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/document_page_access_group_user_role/__manifest__.py b/document_page_access_group_user_role/__manifest__.py new file mode 100644 index 00000000..45f5a0fc --- /dev/null +++ b/document_page_access_group_user_role/__manifest__.py @@ -0,0 +1,16 @@ +# Copyright 2024 Tecnativa - Víctor Martínez +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). +{ + "name": "Document Page Access Group User Role", + "author": "Tecnativa, Odoo Community Association (OCA)", + "website": "https://github.com/OCA/knowledge", + "version": "16.0.1.0.0", + "depends": ["document_page_access_group", "base_user_role"], + "license": "AGPL-3", + "category": "Knowledge", + "data": [ + "views/document_page_views.xml", + ], + "installable": True, + "maintainers": ["victoralmau"], +} diff --git a/document_page_access_group_user_role/i18n/document_page_access_group_user_role.pot b/document_page_access_group_user_role/i18n/document_page_access_group_user_role.pot new file mode 100644 index 00000000..b2c7f394 --- /dev/null +++ b/document_page_access_group_user_role/i18n/document_page_access_group_user_role.pot @@ -0,0 +1,27 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * document_page_access_group_user_role +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-05-31 10:50+0000\n" +"PO-Revision-Date: 2024-05-31 10:50+0000\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: document_page_access_group_user_role +#: model:ir.model,name:document_page_access_group_user_role.model_document_page +msgid "Document Page" +msgstr "" + +#. module: document_page_access_group_user_role +#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__role_ids +#: model_terms:ir.ui.view,arch_db:document_page_access_group_user_role.document_page_access_group_view_wiki_form +msgid "Roles" +msgstr "" diff --git a/document_page_access_group_user_role/i18n/es.po b/document_page_access_group_user_role/i18n/es.po new file mode 100644 index 00000000..4dd81ee1 --- /dev/null +++ b/document_page_access_group_user_role/i18n/es.po @@ -0,0 +1,29 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * document_page_access_group_user_role +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-05-31 10:50+0000\n" +"PO-Revision-Date: 2024-05-31 12:51+0200\n" +"Last-Translator: \n" +"Language-Team: \n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: \n" +"X-Generator: Poedit 3.0.1\n" + +#. module: document_page_access_group_user_role +#: model:ir.model,name:document_page_access_group_user_role.model_document_page +msgid "Document Page" +msgstr "Página del documento" + +#. module: document_page_access_group_user_role +#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__role_ids +#: model_terms:ir.ui.view,arch_db:document_page_access_group_user_role.document_page_access_group_view_wiki_form +msgid "Roles" +msgstr "Roles" diff --git a/document_page_access_group_user_role/models/__init__.py b/document_page_access_group_user_role/models/__init__.py new file mode 100644 index 00000000..14612b52 --- /dev/null +++ b/document_page_access_group_user_role/models/__init__.py @@ -0,0 +1,3 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import document_page diff --git a/document_page_access_group_user_role/models/document_page.py b/document_page_access_group_user_role/models/document_page.py new file mode 100644 index 00000000..f9bf89cf --- /dev/null +++ b/document_page_access_group_user_role/models/document_page.py @@ -0,0 +1,23 @@ +# Copyright 2024 Tecnativa - Víctor Martínez +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import api, fields, models + + +class DocumentPage(models.Model): + _inherit = "document.page" + + groups_id = fields.Many2many(compute="_compute_groups_id", store=True) + role_ids = fields.Many2many( + comodel_name="res.users.role", + relation="document_page_user_roles_rel", + column1="page_id", + column2="role_id", + string="Roles", + ) + + @api.depends("role_ids", "role_ids.implied_ids") + def _compute_groups_id(self): + """Create a compute to auto-set all the groups of the related roles.""" + for item in self: + item.groups_id = item.mapped("role_ids.implied_ids") diff --git a/document_page_access_group_user_role/readme/CONTRIBUTORS.rst b/document_page_access_group_user_role/readme/CONTRIBUTORS.rst new file mode 100644 index 00000000..5fb71305 --- /dev/null +++ b/document_page_access_group_user_role/readme/CONTRIBUTORS.rst @@ -0,0 +1,4 @@ +* `Tecnativa `_: + + * Víctor Martínez + * Pedro M. Baeza diff --git a/document_page_access_group_user_role/readme/DESCRIPTION.rst b/document_page_access_group_user_role/readme/DESCRIPTION.rst new file mode 100644 index 00000000..cceffd15 --- /dev/null +++ b/document_page_access_group_user_role/readme/DESCRIPTION.rst @@ -0,0 +1 @@ +Use of roles (module base_user_role) in Document Pages. diff --git a/document_page_access_group_user_role/readme/USAGE.rst b/document_page_access_group_user_role/readme/USAGE.rst new file mode 100644 index 00000000..568c9352 --- /dev/null +++ b/document_page_access_group_user_role/readme/USAGE.rst @@ -0,0 +1,5 @@ +#. Go to `Settings / Users & Companies / Roles` and create a new one. +#. Go to `Knowledge / Pages` and create or edit one. +#. Set in the "Roles" tab the one we have just created. +#. Go back to the role, edit it and add any group(s). +#. The role groups will have been added in the "Security" tab. diff --git a/document_page_access_group_user_role/static/description/icon.png b/document_page_access_group_user_role/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/document_page_access_group_user_role/static/description/index.html b/document_page_access_group_user_role/static/description/index.html new file mode 100644 index 00000000..60c98a6a --- /dev/null +++ b/document_page_access_group_user_role/static/description/index.html @@ -0,0 +1,438 @@ + + + + + + +Document Page Access Group User Role + + + +
+

Document Page Access Group User Role

+ + +

Beta License: AGPL-3 OCA/knowledge Translate me on Weblate Try me on Runboat

+

Use of roles (module base_user_role) in Document Pages.

+

Table of contents

+ +
+

Usage

+
    +
  1. Go to Settings / Users & Companies / Roles and create a new one.
  2. +
  3. Go to Knowledge / Pages and create or edit one.
  4. +
  5. Set in the “Roles” tab the one we have just created.
  6. +
  7. Go back to the role, edit it and add any group(s).
  8. +
  9. The role groups will have been added in the “Security” tab.
  10. +
+
+
+

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 to smash it by providing a detailed and welcomed +feedback.

+

Do not contact contributors directly about support or help with technical issues.

+
+
+

Credits

+
+

Authors

+
    +
  • Tecnativa
  • +
+
+
+

Contributors

+
    +
  • Tecnativa:
      +
    • Víctor Martínez
    • +
    • Pedro M. Baeza
    • +
    +
  • +
+
+
+

Maintainers

+

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.

+

Current maintainer:

+

victoralmau

+

This module is part of the OCA/knowledge project on GitHub.

+

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

+
+
+
+ + diff --git a/document_page_access_group_user_role/tests/__init__.py b/document_page_access_group_user_role/tests/__init__.py new file mode 100644 index 00000000..60b36044 --- /dev/null +++ b/document_page_access_group_user_role/tests/__init__.py @@ -0,0 +1,3 @@ +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl) + +from . import test_document_page_access_group_user_role diff --git a/document_page_access_group_user_role/tests/test_document_page_access_group_user_role.py b/document_page_access_group_user_role/tests/test_document_page_access_group_user_role.py new file mode 100644 index 00000000..f830ee1d --- /dev/null +++ b/document_page_access_group_user_role/tests/test_document_page_access_group_user_role.py @@ -0,0 +1,30 @@ +# Copyright 2024 Tecnativa - Víctor Martínez +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo.addons.base.tests.common import BaseCommon + + +class TestDocumentPageAccessGroupUserRole(BaseCommon): + @classmethod + def setUpClass(cls): + super().setUpClass() + cls.page = cls.env["document.page"].create( + {"name": "Page 1", "type": "content"} + ) + cls.group_a = cls.env["res.groups"].create({"name": "Test group A"}) + cls.group_b = cls.env["res.groups"].create({"name": "Test group B"}) + cls.user_role = cls.env["res.users.role"].create( + {"name": "Test role", "implied_ids": [(6, 0, [cls.group_a.id])]} + ) + + def test_document_page_role(self): + self.assertFalse(self.page.groups_id) + self.page.role_ids = [(4, self.user_role.id)] + self.assertIn(self.group_a, self.page.groups_id) + self.assertNotIn(self.group_b, self.page.groups_id) + self.user_role.implied_ids = [(4, self.group_b.id)] + self.assertIn(self.group_a, self.page.groups_id) + self.assertIn(self.group_b, self.page.groups_id) + self.page.role_ids = [(6, 0, [])] + self.assertNotIn(self.group_a, self.page.groups_id) + self.assertNotIn(self.group_b, self.page.groups_id) diff --git a/document_page_access_group_user_role/views/document_page_views.xml b/document_page_access_group_user_role/views/document_page_views.xml new file mode 100644 index 00000000..2a0fe5ae --- /dev/null +++ b/document_page_access_group_user_role/views/document_page_views.xml @@ -0,0 +1,31 @@ + + + + document.page.form + document.page + + + + + + + + + + + + + + + + + {'readonly': [('role_ids', '!=', [])]} + + + + From 8107468dcc68319e85eee56860522d551fc8876a Mon Sep 17 00:00:00 2001 From: oca-ci Date: Fri, 7 Jun 2024 08:50:30 +0000 Subject: [PATCH 02/15] [UPD] Update document_page_access_group_user_role.pot --- .../i18n/document_page_access_group_user_role.pot | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/document_page_access_group_user_role/i18n/document_page_access_group_user_role.pot b/document_page_access_group_user_role/i18n/document_page_access_group_user_role.pot index b2c7f394..ec2750fb 100644 --- a/document_page_access_group_user_role/i18n/document_page_access_group_user_role.pot +++ b/document_page_access_group_user_role/i18n/document_page_access_group_user_role.pot @@ -6,8 +6,6 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 16.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-05-31 10:50+0000\n" -"PO-Revision-Date: 2024-05-31 10:50+0000\n" "Last-Translator: \n" "Language-Team: \n" "MIME-Version: 1.0\n" @@ -20,6 +18,11 @@ msgstr "" msgid "Document Page" msgstr "" +#. module: document_page_access_group_user_role +#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__groups_id +msgid "Groups" +msgstr "" + #. module: document_page_access_group_user_role #: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__role_ids #: model_terms:ir.ui.view,arch_db:document_page_access_group_user_role.document_page_access_group_view_wiki_form From 89e1db7cdb9412d5b14f31dbeec2975578c7b21b Mon Sep 17 00:00:00 2001 From: Weblate Date: Fri, 7 Jun 2024 15:14:46 +0000 Subject: [PATCH 03/15] Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: knowledge-16.0/knowledge-16.0-document_page_access_group_user_role Translate-URL: https://translation.odoo-community.org/projects/knowledge-16-0/knowledge-16-0-document_page_access_group_user_role/ --- document_page_access_group_user_role/i18n/es.po | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/document_page_access_group_user_role/i18n/es.po b/document_page_access_group_user_role/i18n/es.po index 4dd81ee1..4af1f54b 100644 --- a/document_page_access_group_user_role/i18n/es.po +++ b/document_page_access_group_user_role/i18n/es.po @@ -22,6 +22,11 @@ msgstr "" msgid "Document Page" msgstr "Página del documento" +#. module: document_page_access_group_user_role +#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__groups_id +msgid "Groups" +msgstr "" + #. module: document_page_access_group_user_role #: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__role_ids #: model_terms:ir.ui.view,arch_db:document_page_access_group_user_role.document_page_access_group_view_wiki_form From 770cff73c59d17297aeb92dcf443790ac03c587f Mon Sep 17 00:00:00 2001 From: mymage Date: Wed, 12 Jun 2024 19:24:20 +0000 Subject: [PATCH 04/15] Added translation using Weblate (Italian) --- .../i18n/it.po | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 document_page_access_group_user_role/i18n/it.po diff --git a/document_page_access_group_user_role/i18n/it.po b/document_page_access_group_user_role/i18n/it.po new file mode 100644 index 00000000..f3ef543d --- /dev/null +++ b/document_page_access_group_user_role/i18n/it.po @@ -0,0 +1,31 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * document_page_access_group_user_role +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: it\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: document_page_access_group_user_role +#: model:ir.model,name:document_page_access_group_user_role.model_document_page +msgid "Document Page" +msgstr "" + +#. module: document_page_access_group_user_role +#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__groups_id +msgid "Groups" +msgstr "" + +#. module: document_page_access_group_user_role +#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__role_ids +#: model_terms:ir.ui.view,arch_db:document_page_access_group_user_role.document_page_access_group_view_wiki_form +msgid "Roles" +msgstr "" From 098482616a7d2c00a11c31685659315f51c76719 Mon Sep 17 00:00:00 2001 From: mymage Date: Fri, 14 Jun 2024 15:10:23 +0000 Subject: [PATCH 05/15] Translated using Weblate (Italian) Currently translated at 100.0% (3 of 3 strings) Translation: knowledge-16.0/knowledge-16.0-document_page_access_group_user_role Translate-URL: https://translation.odoo-community.org/projects/knowledge-16-0/knowledge-16-0-document_page_access_group_user_role/it/ --- document_page_access_group_user_role/i18n/it.po | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/document_page_access_group_user_role/i18n/it.po b/document_page_access_group_user_role/i18n/it.po index f3ef543d..bef472f1 100644 --- a/document_page_access_group_user_role/i18n/it.po +++ b/document_page_access_group_user_role/i18n/it.po @@ -6,26 +6,28 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 16.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: Automatically generated\n" +"PO-Revision-Date: 2024-06-14 17:39+0000\n" +"Last-Translator: mymage \n" "Language-Team: none\n" "Language: it\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.17\n" #. module: document_page_access_group_user_role #: model:ir.model,name:document_page_access_group_user_role.model_document_page msgid "Document Page" -msgstr "" +msgstr "Pagina documento" #. module: document_page_access_group_user_role #: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__groups_id msgid "Groups" -msgstr "" +msgstr "Gruppi" #. module: document_page_access_group_user_role #: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__role_ids #: model_terms:ir.ui.view,arch_db:document_page_access_group_user_role.document_page_access_group_view_wiki_form msgid "Roles" -msgstr "" +msgstr "Ruoli" From c5951ebb0fca44d9fdcf561c36f0f864f8d229c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20Rom=C3=A3o?= Date: Sat, 27 Jul 2024 03:03:35 +0000 Subject: [PATCH 06/15] Added translation using Weblate (Portuguese) --- .../i18n/pt.po | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 document_page_access_group_user_role/i18n/pt.po diff --git a/document_page_access_group_user_role/i18n/pt.po b/document_page_access_group_user_role/i18n/pt.po new file mode 100644 index 00000000..bb8eaf33 --- /dev/null +++ b/document_page_access_group_user_role/i18n/pt.po @@ -0,0 +1,31 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * document_page_access_group_user_role +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: pt\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: document_page_access_group_user_role +#: model:ir.model,name:document_page_access_group_user_role.model_document_page +msgid "Document Page" +msgstr "" + +#. module: document_page_access_group_user_role +#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__groups_id +msgid "Groups" +msgstr "" + +#. module: document_page_access_group_user_role +#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__role_ids +#: model_terms:ir.ui.view,arch_db:document_page_access_group_user_role.document_page_access_group_view_wiki_form +msgid "Roles" +msgstr "" From 68766adea3035d402d4bcaccb61ea76f2b8d347a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20Rom=C3=A3o?= Date: Sat, 27 Jul 2024 03:03:58 +0000 Subject: [PATCH 07/15] Translated using Weblate (Portuguese) Currently translated at 100.0% (3 of 3 strings) Translation: knowledge-16.0/knowledge-16.0-document_page_access_group_user_role Translate-URL: https://translation.odoo-community.org/projects/knowledge-16-0/knowledge-16-0-document_page_access_group_user_role/pt/ --- document_page_access_group_user_role/i18n/pt.po | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/document_page_access_group_user_role/i18n/pt.po b/document_page_access_group_user_role/i18n/pt.po index bb8eaf33..cf55b1d1 100644 --- a/document_page_access_group_user_role/i18n/pt.po +++ b/document_page_access_group_user_role/i18n/pt.po @@ -6,26 +6,28 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 16.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: Automatically generated\n" +"PO-Revision-Date: 2024-07-27 04:58+0000\n" +"Last-Translator: Peter Romão \n" "Language-Team: none\n" "Language: pt\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 5.6.2\n" #. module: document_page_access_group_user_role #: model:ir.model,name:document_page_access_group_user_role.model_document_page msgid "Document Page" -msgstr "" +msgstr "Página do Documento" #. module: document_page_access_group_user_role #: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__groups_id msgid "Groups" -msgstr "" +msgstr "Grupos" #. module: document_page_access_group_user_role #: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__role_ids #: model_terms:ir.ui.view,arch_db:document_page_access_group_user_role.document_page_access_group_view_wiki_form msgid "Roles" -msgstr "" +msgstr "Papéis" From c12c8c4bef204df99582991095de16a911fcf7a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Mart=C3=ADnez?= Date: Wed, 24 Jul 2024 08:55:20 +0200 Subject: [PATCH 08/15] [IMP] document_page_access_group_user_role: Users compatibility TT48786 --- .../README.rst | 2 +- .../__manifest__.py | 2 +- .../migrations/16.0.1.1.0/post-migration.py | 13 +++++ .../models/document_page.py | 10 ++-- .../readme/USAGE.rst | 2 +- .../static/description/index.html | 3 +- ...st_document_page_access_group_user_role.py | 55 ++++++++++++------- .../views/document_page_views.xml | 23 ++++---- 8 files changed, 68 insertions(+), 42 deletions(-) create mode 100644 document_page_access_group_user_role/migrations/16.0.1.1.0/post-migration.py diff --git a/document_page_access_group_user_role/README.rst b/document_page_access_group_user_role/README.rst index da78eeab..8b160bc9 100644 --- a/document_page_access_group_user_role/README.rst +++ b/document_page_access_group_user_role/README.rst @@ -42,7 +42,7 @@ Usage #. Go to `Knowledge / Pages` and create or edit one. #. Set in the "Roles" tab the one we have just created. #. Go back to the role, edit it and add any group(s). -#. The role groups will have been added in the "Security" tab. +#. The role users will have been added in the "Security" tab. Bug Tracker =========== diff --git a/document_page_access_group_user_role/__manifest__.py b/document_page_access_group_user_role/__manifest__.py index 45f5a0fc..54a075cb 100644 --- a/document_page_access_group_user_role/__manifest__.py +++ b/document_page_access_group_user_role/__manifest__.py @@ -4,7 +4,7 @@ "name": "Document Page Access Group User Role", "author": "Tecnativa, Odoo Community Association (OCA)", "website": "https://github.com/OCA/knowledge", - "version": "16.0.1.0.0", + "version": "16.0.1.1.0", "depends": ["document_page_access_group", "base_user_role"], "license": "AGPL-3", "category": "Knowledge", diff --git a/document_page_access_group_user_role/migrations/16.0.1.1.0/post-migration.py b/document_page_access_group_user_role/migrations/16.0.1.1.0/post-migration.py new file mode 100644 index 00000000..20d09318 --- /dev/null +++ b/document_page_access_group_user_role/migrations/16.0.1.1.0/post-migration.py @@ -0,0 +1,13 @@ +# Copyright 2024 Tecnativa - Víctor Martínez +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + """Pages that had roles should now have the correct users.""" + pages = env["document.page"].sudo().search([("role_ids", "!=", False)]) + for page in pages: + users = page.mapped("role_ids.users") + page.role_ids = False + page.user_ids = users diff --git a/document_page_access_group_user_role/models/document_page.py b/document_page_access_group_user_role/models/document_page.py index f9bf89cf..a4db0ed0 100644 --- a/document_page_access_group_user_role/models/document_page.py +++ b/document_page_access_group_user_role/models/document_page.py @@ -7,7 +7,7 @@ from odoo import api, fields, models class DocumentPage(models.Model): _inherit = "document.page" - groups_id = fields.Many2many(compute="_compute_groups_id", store=True) + user_ids = fields.Many2many(compute="_compute_user_ids", store=True, readonly=False) role_ids = fields.Many2many( comodel_name="res.users.role", relation="document_page_user_roles_rel", @@ -16,8 +16,8 @@ class DocumentPage(models.Model): string="Roles", ) - @api.depends("role_ids", "role_ids.implied_ids") - def _compute_groups_id(self): - """Create a compute to auto-set all the groups of the related roles.""" + @api.depends("role_ids", "role_ids.users") + def _compute_user_ids(self): + """Create a compute to auto-set all the users of the related roles.""" for item in self: - item.groups_id = item.mapped("role_ids.implied_ids") + item.user_ids += item.mapped("role_ids.users") diff --git a/document_page_access_group_user_role/readme/USAGE.rst b/document_page_access_group_user_role/readme/USAGE.rst index 568c9352..4d593dca 100644 --- a/document_page_access_group_user_role/readme/USAGE.rst +++ b/document_page_access_group_user_role/readme/USAGE.rst @@ -2,4 +2,4 @@ #. Go to `Knowledge / Pages` and create or edit one. #. Set in the "Roles" tab the one we have just created. #. Go back to the role, edit it and add any group(s). -#. The role groups will have been added in the "Security" tab. +#. The role users will have been added in the "Security" tab. diff --git a/document_page_access_group_user_role/static/description/index.html b/document_page_access_group_user_role/static/description/index.html index 60c98a6a..f725f4be 100644 --- a/document_page_access_group_user_role/static/description/index.html +++ b/document_page_access_group_user_role/static/description/index.html @@ -1,4 +1,3 @@ - @@ -391,7 +390,7 @@ ul.auto-toc {
  • Go to Knowledge / Pages and create or edit one.
  • Set in the “Roles” tab the one we have just created.
  • Go back to the role, edit it and add any group(s).
  • -
  • The role groups will have been added in the “Security” tab.
  • +
  • The role users will have been added in the “Security” tab.
  • diff --git a/document_page_access_group_user_role/tests/test_document_page_access_group_user_role.py b/document_page_access_group_user_role/tests/test_document_page_access_group_user_role.py index f830ee1d..777e2eaa 100644 --- a/document_page_access_group_user_role/tests/test_document_page_access_group_user_role.py +++ b/document_page_access_group_user_role/tests/test_document_page_access_group_user_role.py @@ -1,30 +1,47 @@ # Copyright 2024 Tecnativa - Víctor Martínez # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +from odoo.tests.common import users -from odoo.addons.base.tests.common import BaseCommon +from odoo.addons.document_page_access_group.tests.common import ( + TestDocumentPageAccessGroupBase, +) -class TestDocumentPageAccessGroupUserRole(BaseCommon): +class TestDocumentPageAccessGroupUserRole(TestDocumentPageAccessGroupBase): @classmethod def setUpClass(cls): super().setUpClass() - cls.page = cls.env["document.page"].create( - {"name": "Page 1", "type": "content"} - ) - cls.group_a = cls.env["res.groups"].create({"name": "Test group A"}) - cls.group_b = cls.env["res.groups"].create({"name": "Test group B"}) cls.user_role = cls.env["res.users.role"].create( - {"name": "Test role", "implied_ids": [(6, 0, [cls.group_a.id])]} + { + "name": "Test role", + "implied_ids": [(6, 0, [cls.group.id])], + "users": [(6, 0, [cls.manager_user.id])], + } + ) + cls.role_page = cls.env["document.page"].create( + { + "name": "Role Page (test role)", + "type": "content", + "role_ids": [(6, 0, [cls.user_role.id])], + } ) - def test_document_page_role(self): - self.assertFalse(self.page.groups_id) - self.page.role_ids = [(4, self.user_role.id)] - self.assertIn(self.group_a, self.page.groups_id) - self.assertNotIn(self.group_b, self.page.groups_id) - self.user_role.implied_ids = [(4, self.group_b.id)] - self.assertIn(self.group_a, self.page.groups_id) - self.assertIn(self.group_b, self.page.groups_id) - self.page.role_ids = [(6, 0, [])] - self.assertNotIn(self.group_a, self.page.groups_id) - self.assertNotIn(self.group_b, self.page.groups_id) + def test_document_page_role_misc(self): + self.assertFalse(self.role_page.groups_id) + self.assertTrue(self.role_page.user_ids) + + @users("test-user") + def test_document_page_role_access_01(self): + pages = self.env["document.page"].search([]) + self.assertIn(self.public_page, pages) + self.assertNotIn(self.knowledge_page, pages) + self.assertIn(self.user_page, pages) + self.assertNotIn(self.role_page, pages) + + @users("test-manager-user") + def test_document_page_role_access_02(self): + pages = self.env["document.page"].search([]) + self.assertIn(self.public_page, pages) + self.assertIn(self.knowledge_page, pages) + self.assertNotIn(self.user_page, pages) + self.assertIn(self.role_page, pages) diff --git a/document_page_access_group_user_role/views/document_page_views.xml b/document_page_access_group_user_role/views/document_page_views.xml index 2a0fe5ae..55506292 100644 --- a/document_page_access_group_user_role/views/document_page_views.xml +++ b/document_page_access_group_user_role/views/document_page_views.xml @@ -8,24 +8,21 @@ ref="document_page_access_group.document_page_access_group_view_wiki_form" /> - - - + + + - - - - - - - {'readonly': [('role_ids', '!=', [])]} - + + From 717e9582396f0e8624311725af9ac707d5ee1151 Mon Sep 17 00:00:00 2001 From: oca-ci Date: Mon, 5 Aug 2024 17:49:04 +0000 Subject: [PATCH 09/15] [UPD] Update document_page_access_group_user_role.pot --- .../i18n/document_page_access_group_user_role.pot | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/document_page_access_group_user_role/i18n/document_page_access_group_user_role.pot b/document_page_access_group_user_role/i18n/document_page_access_group_user_role.pot index ec2750fb..e2b80e08 100644 --- a/document_page_access_group_user_role/i18n/document_page_access_group_user_role.pot +++ b/document_page_access_group_user_role/i18n/document_page_access_group_user_role.pot @@ -18,13 +18,13 @@ msgstr "" msgid "Document Page" msgstr "" -#. module: document_page_access_group_user_role -#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__groups_id -msgid "Groups" -msgstr "" - #. module: document_page_access_group_user_role #: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__role_ids #: model_terms:ir.ui.view,arch_db:document_page_access_group_user_role.document_page_access_group_view_wiki_form msgid "Roles" msgstr "" + +#. module: document_page_access_group_user_role +#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__user_ids +msgid "Users" +msgstr "" From 63e72de27109d517b28d7ce0b365bc7c686f2acd Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Mon, 5 Aug 2024 17:51:12 +0000 Subject: [PATCH 10/15] [BOT] post-merge updates --- document_page_access_group_user_role/README.rst | 2 +- .../static/description/index.html | 13 ++++++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/document_page_access_group_user_role/README.rst b/document_page_access_group_user_role/README.rst index 8b160bc9..bfa4a241 100644 --- a/document_page_access_group_user_role/README.rst +++ b/document_page_access_group_user_role/README.rst @@ -7,7 +7,7 @@ Document Page Access Group User Role !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:3dfd28474555ec556de2976f5339491a487ac211497f0396b3aa176dc457ec79 + !! source digest: sha256:bdf60e5b16d9c0c2dbecaa0d26f451b4bfed4319ed1b1f884d4797ec0ff30faf !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png diff --git a/document_page_access_group_user_role/static/description/index.html b/document_page_access_group_user_role/static/description/index.html index f725f4be..fbce83e6 100644 --- a/document_page_access_group_user_role/static/description/index.html +++ b/document_page_access_group_user_role/static/description/index.html @@ -8,10 +8,11 @@ /* :Author: David Goodger (goodger@python.org) -:Id: $Id: html4css1.css 8954 2022-01-20 10:10:25Z milde $ +:Id: $Id: html4css1.css 9511 2024-01-13 09:50:07Z milde $ :Copyright: This stylesheet has been placed in the public domain. Default cascading style sheet for the HTML output of Docutils. +Despite the name, some widely supported CSS2 features are used. See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to customize this style sheet. @@ -274,7 +275,7 @@ pre.literal-block, pre.doctest-block, pre.math, pre.code { margin-left: 2em ; margin-right: 2em } -pre.code .ln { color: grey; } /* line numbers */ +pre.code .ln { color: gray; } /* line numbers */ pre.code, code { background-color: #eeeeee } pre.code .comment, code .comment { color: #5C6576 } pre.code .keyword, code .keyword { color: #3B0D06; font-weight: bold } @@ -300,7 +301,7 @@ span.option { span.pre { white-space: pre } -span.problematic { +span.problematic, pre.problematic { color: red } span.section-subtitle { @@ -366,7 +367,7 @@ ul.auto-toc { !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:3dfd28474555ec556de2976f5339491a487ac211497f0396b3aa176dc457ec79 +!! source digest: sha256:bdf60e5b16d9c0c2dbecaa0d26f451b4bfed4319ed1b1f884d4797ec0ff30faf !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

    Beta License: AGPL-3 OCA/knowledge Translate me on Weblate Try me on Runboat

    Use of roles (module base_user_role) in Document Pages.

    @@ -422,7 +423,9 @@ If you spotted it first, help us to smash it by providing a detailed and welcome

    Maintainers

    This module is maintained by the OCA.

    -Odoo Community Association + +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.

    From bb5c3687d244298b6d6247cb6d235f8695a40696 Mon Sep 17 00:00:00 2001 From: Weblate Date: Mon, 5 Aug 2024 17:51:20 +0000 Subject: [PATCH 11/15] Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: knowledge-16.0/knowledge-16.0-document_page_access_group_user_role Translate-URL: https://translation.odoo-community.org/projects/knowledge-16-0/knowledge-16-0-document_page_access_group_user_role/ --- document_page_access_group_user_role/i18n/es.po | 10 +++++----- document_page_access_group_user_role/i18n/it.po | 13 ++++++++----- document_page_access_group_user_role/i18n/pt.po | 13 ++++++++----- 3 files changed, 21 insertions(+), 15 deletions(-) diff --git a/document_page_access_group_user_role/i18n/es.po b/document_page_access_group_user_role/i18n/es.po index 4af1f54b..ec752f89 100644 --- a/document_page_access_group_user_role/i18n/es.po +++ b/document_page_access_group_user_role/i18n/es.po @@ -22,13 +22,13 @@ msgstr "" msgid "Document Page" msgstr "Página del documento" -#. module: document_page_access_group_user_role -#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__groups_id -msgid "Groups" -msgstr "" - #. module: document_page_access_group_user_role #: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__role_ids #: model_terms:ir.ui.view,arch_db:document_page_access_group_user_role.document_page_access_group_view_wiki_form msgid "Roles" msgstr "Roles" + +#. module: document_page_access_group_user_role +#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__user_ids +msgid "Users" +msgstr "" diff --git a/document_page_access_group_user_role/i18n/it.po b/document_page_access_group_user_role/i18n/it.po index bef472f1..fbd3e7ed 100644 --- a/document_page_access_group_user_role/i18n/it.po +++ b/document_page_access_group_user_role/i18n/it.po @@ -21,13 +21,16 @@ msgstr "" msgid "Document Page" msgstr "Pagina documento" -#. module: document_page_access_group_user_role -#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__groups_id -msgid "Groups" -msgstr "Gruppi" - #. module: document_page_access_group_user_role #: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__role_ids #: model_terms:ir.ui.view,arch_db:document_page_access_group_user_role.document_page_access_group_view_wiki_form msgid "Roles" msgstr "Ruoli" + +#. module: document_page_access_group_user_role +#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__user_ids +msgid "Users" +msgstr "" + +#~ msgid "Groups" +#~ msgstr "Gruppi" diff --git a/document_page_access_group_user_role/i18n/pt.po b/document_page_access_group_user_role/i18n/pt.po index cf55b1d1..f1b0c4fb 100644 --- a/document_page_access_group_user_role/i18n/pt.po +++ b/document_page_access_group_user_role/i18n/pt.po @@ -21,13 +21,16 @@ msgstr "" msgid "Document Page" msgstr "Página do Documento" -#. module: document_page_access_group_user_role -#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__groups_id -msgid "Groups" -msgstr "Grupos" - #. module: document_page_access_group_user_role #: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__role_ids #: model_terms:ir.ui.view,arch_db:document_page_access_group_user_role.document_page_access_group_view_wiki_form msgid "Roles" msgstr "Papéis" + +#. module: document_page_access_group_user_role +#: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__user_ids +msgid "Users" +msgstr "" + +#~ msgid "Groups" +#~ msgstr "Grupos" From 3c9af0d2f0de9b2c56d2cfd47b7a92ddbf73d1e7 Mon Sep 17 00:00:00 2001 From: mymage Date: Mon, 12 Aug 2024 06:55:55 +0000 Subject: [PATCH 12/15] Translated using Weblate (Italian) Currently translated at 100.0% (3 of 3 strings) Translation: knowledge-16.0/knowledge-16.0-document_page_access_group_user_role Translate-URL: https://translation.odoo-community.org/projects/knowledge-16-0/knowledge-16-0-document_page_access_group_user_role/it/ --- document_page_access_group_user_role/i18n/it.po | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/document_page_access_group_user_role/i18n/it.po b/document_page_access_group_user_role/i18n/it.po index fbd3e7ed..9118c3e5 100644 --- a/document_page_access_group_user_role/i18n/it.po +++ b/document_page_access_group_user_role/i18n/it.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 16.0\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-06-14 17:39+0000\n" +"PO-Revision-Date: 2024-08-12 08:58+0000\n" "Last-Translator: mymage \n" "Language-Team: none\n" "Language: it\n" @@ -14,7 +14,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.17\n" +"X-Generator: Weblate 5.6.2\n" #. module: document_page_access_group_user_role #: model:ir.model,name:document_page_access_group_user_role.model_document_page @@ -30,7 +30,7 @@ msgstr "Ruoli" #. module: document_page_access_group_user_role #: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__user_ids msgid "Users" -msgstr "" +msgstr "Utenti" #~ msgid "Groups" #~ msgstr "Gruppi" From cb9364228772e1fc7f35a60eff230b1f4d9b9575 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20Rom=C3=A3o?= Date: Tue, 4 Feb 2025 17:11:02 +0000 Subject: [PATCH 13/15] Translated using Weblate (Portuguese) Currently translated at 100.0% (3 of 3 strings) Translation: knowledge-16.0/knowledge-16.0-document_page_access_group_user_role Translate-URL: https://translation.odoo-community.org/projects/knowledge-16-0/knowledge-16-0-document_page_access_group_user_role/pt/ --- document_page_access_group_user_role/i18n/pt.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/document_page_access_group_user_role/i18n/pt.po b/document_page_access_group_user_role/i18n/pt.po index f1b0c4fb..2b226f06 100644 --- a/document_page_access_group_user_role/i18n/pt.po +++ b/document_page_access_group_user_role/i18n/pt.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 16.0\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-27 04:58+0000\n" +"PO-Revision-Date: 2025-02-04 17:11+0000\n" "Last-Translator: Peter Romão \n" "Language-Team: none\n" "Language: pt\n" @@ -30,7 +30,7 @@ msgstr "Papéis" #. module: document_page_access_group_user_role #: model:ir.model.fields,field_description:document_page_access_group_user_role.field_document_page__user_ids msgid "Users" -msgstr "" +msgstr "Utilizadores" #~ msgid "Groups" #~ msgstr "Grupos" From cb89126ca2636648235e1779e9bf1b021206e951 Mon Sep 17 00:00:00 2001 From: Anusha Date: Thu, 8 May 2025 11:12:34 +0200 Subject: [PATCH 14/15] [IMP] document_page_access_group_user_role: pre-commit auto fixes --- .../README.rst | 32 +++++++++---------- .../pyproject.toml | 3 ++ .../readme/CONTRIBUTORS.md | 3 ++ .../readme/CONTRIBUTORS.rst | 4 --- .../{DESCRIPTION.rst => DESCRIPTION.md} | 0 .../readme/USAGE.md | 5 +++ .../readme/USAGE.rst | 5 --- .../static/description/index.html | 10 +++--- 8 files changed, 32 insertions(+), 30 deletions(-) create mode 100644 document_page_access_group_user_role/pyproject.toml create mode 100644 document_page_access_group_user_role/readme/CONTRIBUTORS.md delete mode 100644 document_page_access_group_user_role/readme/CONTRIBUTORS.rst rename document_page_access_group_user_role/readme/{DESCRIPTION.rst => DESCRIPTION.md} (100%) create mode 100644 document_page_access_group_user_role/readme/USAGE.md delete mode 100644 document_page_access_group_user_role/readme/USAGE.rst diff --git a/document_page_access_group_user_role/README.rst b/document_page_access_group_user_role/README.rst index bfa4a241..642d3011 100644 --- a/document_page_access_group_user_role/README.rst +++ b/document_page_access_group_user_role/README.rst @@ -17,13 +17,13 @@ Document Page Access Group User Role :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fknowledge-lightgray.png?logo=github - :target: https://github.com/OCA/knowledge/tree/16.0/document_page_access_group_user_role + :target: https://github.com/OCA/knowledge/tree/18.0/document_page_access_group_user_role :alt: OCA/knowledge .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/knowledge-16-0/knowledge-16-0-document_page_access_group_user_role + :target: https://translation.odoo-community.org/projects/knowledge-18-0/knowledge-18-0-document_page_access_group_user_role :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png - :target: https://runboat.odoo-community.org/builds?repo=OCA/knowledge&target_branch=16.0 + :target: https://runboat.odoo-community.org/builds?repo=OCA/knowledge&target_branch=18.0 :alt: Try me on Runboat |badge1| |badge2| |badge3| |badge4| |badge5| @@ -38,11 +38,11 @@ Use of roles (module base_user_role) in Document Pages. Usage ===== -#. Go to `Settings / Users & Companies / Roles` and create a new one. -#. Go to `Knowledge / Pages` and create or edit one. -#. Set in the "Roles" tab the one we have just created. -#. Go back to the role, edit it and add any group(s). -#. The role users will have been added in the "Security" tab. +1. Go to Settings / Users & Companies / Roles and create a new one. +2. Go to Knowledge / Pages and create or edit one. +3. Set in the "Roles" tab the one we have just created. +4. Go back to the role, edit it and add any group(s). +5. The role users will have been added in the "Security" tab. Bug Tracker =========== @@ -50,7 +50,7 @@ Bug Tracker Bugs are tracked on `GitHub Issues `_. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -58,20 +58,20 @@ Credits ======= Authors -~~~~~~~ +------- * Tecnativa Contributors -~~~~~~~~~~~~ +------------ -* `Tecnativa `_: +- `Tecnativa `__: - * Víctor Martínez - * Pedro M. Baeza + - Víctor Martínez + - Pedro M. Baeza Maintainers -~~~~~~~~~~~ +----------- This module is maintained by the OCA. @@ -91,6 +91,6 @@ Current `maintainer `__: |maintainer-victoralmau| -This module is part of the `OCA/knowledge `_ project on GitHub. +This module is part of the `OCA/knowledge `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/document_page_access_group_user_role/pyproject.toml b/document_page_access_group_user_role/pyproject.toml new file mode 100644 index 00000000..4231d0cc --- /dev/null +++ b/document_page_access_group_user_role/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["whool"] +build-backend = "whool.buildapi" diff --git a/document_page_access_group_user_role/readme/CONTRIBUTORS.md b/document_page_access_group_user_role/readme/CONTRIBUTORS.md new file mode 100644 index 00000000..5fee3904 --- /dev/null +++ b/document_page_access_group_user_role/readme/CONTRIBUTORS.md @@ -0,0 +1,3 @@ +- [Tecnativa](https://www.tecnativa.com): + - Víctor Martínez + - Pedro M. Baeza diff --git a/document_page_access_group_user_role/readme/CONTRIBUTORS.rst b/document_page_access_group_user_role/readme/CONTRIBUTORS.rst deleted file mode 100644 index 5fb71305..00000000 --- a/document_page_access_group_user_role/readme/CONTRIBUTORS.rst +++ /dev/null @@ -1,4 +0,0 @@ -* `Tecnativa `_: - - * Víctor Martínez - * Pedro M. Baeza diff --git a/document_page_access_group_user_role/readme/DESCRIPTION.rst b/document_page_access_group_user_role/readme/DESCRIPTION.md similarity index 100% rename from document_page_access_group_user_role/readme/DESCRIPTION.rst rename to document_page_access_group_user_role/readme/DESCRIPTION.md diff --git a/document_page_access_group_user_role/readme/USAGE.md b/document_page_access_group_user_role/readme/USAGE.md new file mode 100644 index 00000000..a60aa288 --- /dev/null +++ b/document_page_access_group_user_role/readme/USAGE.md @@ -0,0 +1,5 @@ +1. Go to Settings / Users & Companies / Roles and create a new one. +2. Go to Knowledge / Pages and create or edit one. +3. Set in the "Roles" tab the one we have just created. +4. Go back to the role, edit it and add any group(s). +5. The role users will have been added in the "Security" tab. diff --git a/document_page_access_group_user_role/readme/USAGE.rst b/document_page_access_group_user_role/readme/USAGE.rst deleted file mode 100644 index 4d593dca..00000000 --- a/document_page_access_group_user_role/readme/USAGE.rst +++ /dev/null @@ -1,5 +0,0 @@ -#. Go to `Settings / Users & Companies / Roles` and create a new one. -#. Go to `Knowledge / Pages` and create or edit one. -#. Set in the "Roles" tab the one we have just created. -#. Go back to the role, edit it and add any group(s). -#. The role users will have been added in the "Security" tab. diff --git a/document_page_access_group_user_role/static/description/index.html b/document_page_access_group_user_role/static/description/index.html index fbce83e6..660c6ea4 100644 --- a/document_page_access_group_user_role/static/description/index.html +++ b/document_page_access_group_user_role/static/description/index.html @@ -369,7 +369,7 @@ ul.auto-toc { !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! source digest: sha256:bdf60e5b16d9c0c2dbecaa0d26f451b4bfed4319ed1b1f884d4797ec0ff30faf !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

    Beta License: AGPL-3 OCA/knowledge Translate me on Weblate Try me on Runboat

    +

    Beta License: AGPL-3 OCA/knowledge Translate me on Weblate Try me on Runboat

    Use of roles (module base_user_role) in Document Pages.

    Table of contents

    @@ -387,8 +387,8 @@ ul.auto-toc {

    Usage

      -
    1. Go to Settings / Users & Companies / Roles and create a new one.
    2. -
    3. Go to Knowledge / Pages and create or edit one.
    4. +
    5. Go to Settings / Users & Companies / Roles and create a new one.
    6. +
    7. Go to Knowledge / Pages and create or edit one.
    8. Set in the “Roles” tab the one we have just created.
    9. Go back to the role, edit it and add any group(s).
    10. The role users will have been added in the “Security” tab.
    11. @@ -399,7 +399,7 @@ ul.auto-toc {

      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 to smash it by providing a detailed and welcomed -feedback.

      +feedback.

      Do not contact contributors directly about support or help with technical issues.

    @@ -431,7 +431,7 @@ mission is to support the collaborative development of Odoo features and promote its widespread use.

    Current maintainer:

    victoralmau

    -

    This module is part of the OCA/knowledge project on GitHub.

    +

    This module is part of the OCA/knowledge project on GitHub.

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

    From 3aa9cc535023d1e895b030335cab9c61a32104b0 Mon Sep 17 00:00:00 2001 From: Anusha Date: Thu, 8 May 2025 11:14:57 +0200 Subject: [PATCH 15/15] [MIG] document_page_access_group_user_role: Migration to 18.0 --- .../__manifest__.py | 2 +- .../migrations/16.0.1.1.0/post-migration.py | 13 ------------- .../models/document_page.py | 2 +- .../views/document_page_views.xml | 6 +++--- 4 files changed, 5 insertions(+), 18 deletions(-) delete mode 100644 document_page_access_group_user_role/migrations/16.0.1.1.0/post-migration.py diff --git a/document_page_access_group_user_role/__manifest__.py b/document_page_access_group_user_role/__manifest__.py index 54a075cb..e7ebe10f 100644 --- a/document_page_access_group_user_role/__manifest__.py +++ b/document_page_access_group_user_role/__manifest__.py @@ -4,7 +4,7 @@ "name": "Document Page Access Group User Role", "author": "Tecnativa, Odoo Community Association (OCA)", "website": "https://github.com/OCA/knowledge", - "version": "16.0.1.1.0", + "version": "18.0.1.0.0", "depends": ["document_page_access_group", "base_user_role"], "license": "AGPL-3", "category": "Knowledge", diff --git a/document_page_access_group_user_role/migrations/16.0.1.1.0/post-migration.py b/document_page_access_group_user_role/migrations/16.0.1.1.0/post-migration.py deleted file mode 100644 index 20d09318..00000000 --- a/document_page_access_group_user_role/migrations/16.0.1.1.0/post-migration.py +++ /dev/null @@ -1,13 +0,0 @@ -# Copyright 2024 Tecnativa - Víctor Martínez -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -from openupgradelib import openupgrade - - -@openupgrade.migrate() -def migrate(env, version): - """Pages that had roles should now have the correct users.""" - pages = env["document.page"].sudo().search([("role_ids", "!=", False)]) - for page in pages: - users = page.mapped("role_ids.users") - page.role_ids = False - page.user_ids = users diff --git a/document_page_access_group_user_role/models/document_page.py b/document_page_access_group_user_role/models/document_page.py index a4db0ed0..54d5e448 100644 --- a/document_page_access_group_user_role/models/document_page.py +++ b/document_page_access_group_user_role/models/document_page.py @@ -18,6 +18,6 @@ class DocumentPage(models.Model): @api.depends("role_ids", "role_ids.users") def _compute_user_ids(self): - """Create a compute to auto-set all the users of the related roles.""" + """compute to auto-set all the users of the related roles.""" for item in self: item.user_ids += item.mapped("role_ids.users") diff --git a/document_page_access_group_user_role/views/document_page_views.xml b/document_page_access_group_user_role/views/document_page_views.xml index 55506292..63888e3b 100644 --- a/document_page_access_group_user_role/views/document_page_views.xml +++ b/document_page_access_group_user_role/views/document_page_views.xml @@ -12,14 +12,14 @@ - + - +