From 3c0d569380f810325cb79dbc28a10fcab8f7c6a5 Mon Sep 17 00:00:00 2001 From: manu Date: Mon, 9 May 2022 16:09:03 +0200 Subject: [PATCH 01/22] [ADD]document_page_access_group: Add access groups to document pages --- document_page_access_group/README.rst | 87 ++++ document_page_access_group/__init__.py | 4 + document_page_access_group/__manifest__.py | 19 + .../i18n/document_page_access_group.pot | 44 ++ document_page_access_group/models/__init__.py | 4 + .../models/document_page.py | 10 + .../readme/CONTRIBUTORS.rst | 1 + .../readme/DESCRIPTION.rst | 2 + document_page_access_group/readme/USAGE.rst | 9 + .../security/security.xml | 24 + .../static/description/icon.png | Bin 0 -> 9455 bytes .../static/description/index.html | 431 ++++++++++++++++++ .../views/document_page.xml | 21 + 13 files changed, 656 insertions(+) create mode 100644 document_page_access_group/README.rst create mode 100644 document_page_access_group/__init__.py create mode 100644 document_page_access_group/__manifest__.py create mode 100644 document_page_access_group/i18n/document_page_access_group.pot create mode 100644 document_page_access_group/models/__init__.py create mode 100644 document_page_access_group/models/document_page.py create mode 100644 document_page_access_group/readme/CONTRIBUTORS.rst create mode 100644 document_page_access_group/readme/DESCRIPTION.rst create mode 100644 document_page_access_group/readme/USAGE.rst create mode 100644 document_page_access_group/security/security.xml create mode 100644 document_page_access_group/static/description/icon.png create mode 100644 document_page_access_group/static/description/index.html create mode 100644 document_page_access_group/views/document_page.xml diff --git a/document_page_access_group/README.rst b/document_page_access_group/README.rst new file mode 100644 index 00000000000..16f0e8627f3 --- /dev/null +++ b/document_page_access_group/README.rst @@ -0,0 +1,87 @@ +========================== +Document Page Access Group +========================== + +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png + :target: https://odoo-community.org/page/development-status + :alt: Beta +.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 +.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fknowledge-lightgray.png?logo=github + :target: https://github.com/OCA/knowledge/tree/14.0/document_page_access_group + :alt: OCA/knowledge +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/knowledge-14-0/knowledge-14-0-document_page_access_group + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png + :target: https://runbot.odoo-community.org/runbot/118/14.0 + :alt: Try me on Runbot + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module allows to select which users groups have access to the +document pages. + +**Table of contents** + +.. contents:: + :local: + +Usage +===== + +To select the users that have access to a given document page +you need to open a document, go to the 'Security' tab +and select which groups will have access. + +Only users that belong to the 'Knowledge / Manager' group can +manage access groups to documents. + +If no groups are selected in a document, all users that can access +document pages can access this document. + +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 +~~~~~~~ + +* Sygel + +Contributors +~~~~~~~~~~~~ + +* Manuel Regidor + +Maintainers +~~~~~~~~~~~ + +This module is maintained by the OCA. + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. + +This module is part of the `OCA/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/__init__.py b/document_page_access_group/__init__.py new file mode 100644 index 00000000000..18143cb955a --- /dev/null +++ b/document_page_access_group/__init__.py @@ -0,0 +1,4 @@ +# Copyright 2022 Manuel Regidor +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from . import models diff --git a/document_page_access_group/__manifest__.py b/document_page_access_group/__manifest__.py new file mode 100644 index 00000000000..fe6e28d0e63 --- /dev/null +++ b/document_page_access_group/__manifest__.py @@ -0,0 +1,19 @@ +# Copyright 2022 Manuel Regidor +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +{ + "name": "Document Page Access Group", + "summary": "Choose groups to access document pages", + "version": "14.0.1.0.0", + "category": "Knowledge", + "website": "https://github.com/OCA/knowledge", + "author": "Sygel, Odoo Community Association (OCA)", + "license": "AGPL-3", + "application": False, + "installable": True, + "depends": [ + "document_page", + "knowledge", + ], + "data": ["views/document_page.xml", "security/security.xml"], +} diff --git a/document_page_access_group/i18n/document_page_access_group.pot b/document_page_access_group/i18n/document_page_access_group.pot new file mode 100644 index 00000000000..13249f5a7bb --- /dev/null +++ b/document_page_access_group/i18n/document_page_access_group.pot @@ -0,0 +1,44 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * document_page_access_group +# +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: document_page_access_group +#: model:ir.model.fields,field_description:document_page_access_group.field_document_page__display_name +msgid "Display Name" +msgstr "" + +#. module: document_page_access_group +#: model:ir.model,name:document_page_access_group.model_document_page +msgid "Document Page" +msgstr "" + +#. module: document_page_access_group +#: model:ir.model.fields,field_description:document_page_access_group.field_document_page__groups_id +msgid "Groups" +msgstr "" + +#. module: document_page_access_group +#: model:ir.model.fields,field_description:document_page_access_group.field_document_page__id +msgid "ID" +msgstr "" + +#. module: document_page_access_group +#: model:ir.model.fields,field_description:document_page_access_group.field_document_page____last_update +msgid "Last Modified on" +msgstr "" + +#. module: document_page_access_group +#: model_terms:ir.ui.view,arch_db:document_page_access_group.document_page_access_group_view_wiki_form +msgid "Security" +msgstr "" diff --git a/document_page_access_group/models/__init__.py b/document_page_access_group/models/__init__.py new file mode 100644 index 00000000000..5aedcf2ac43 --- /dev/null +++ b/document_page_access_group/models/__init__.py @@ -0,0 +1,4 @@ +# Copyright 2022 Manuel Regidor +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from . import document_page diff --git a/document_page_access_group/models/document_page.py b/document_page_access_group/models/document_page.py new file mode 100644 index 00000000000..e8ff91e9bc9 --- /dev/null +++ b/document_page_access_group/models/document_page.py @@ -0,0 +1,10 @@ +# Copyright 2022 Manuel Regidor +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import fields, models + + +class DocumentPage(models.Model): + _inherit = "document.page" + + groups_id = fields.Many2many(comodel_name="res.groups", string="Groups") diff --git a/document_page_access_group/readme/CONTRIBUTORS.rst b/document_page_access_group/readme/CONTRIBUTORS.rst new file mode 100644 index 00000000000..9a191ccca74 --- /dev/null +++ b/document_page_access_group/readme/CONTRIBUTORS.rst @@ -0,0 +1 @@ +* Manuel Regidor diff --git a/document_page_access_group/readme/DESCRIPTION.rst b/document_page_access_group/readme/DESCRIPTION.rst new file mode 100644 index 00000000000..ecf456b6a0b --- /dev/null +++ b/document_page_access_group/readme/DESCRIPTION.rst @@ -0,0 +1,2 @@ +This module allows to select which users groups have access to the +document pages. diff --git a/document_page_access_group/readme/USAGE.rst b/document_page_access_group/readme/USAGE.rst new file mode 100644 index 00000000000..082de78cdbb --- /dev/null +++ b/document_page_access_group/readme/USAGE.rst @@ -0,0 +1,9 @@ +To select the users that have access to a given document page +you need to open a document, go to the 'Security' tab +and select which groups will have access. + +Only users that belong to the 'Knowledge / Manager' group can +manage access groups to documents. + +If no groups are selected in a document, all users that can access +document pages can access this document. diff --git a/document_page_access_group/security/security.xml b/document_page_access_group/security/security.xml new file mode 100644 index 00000000000..74366d60ca9 --- /dev/null +++ b/document_page_access_group/security/security.xml @@ -0,0 +1,24 @@ + + + + + Document Page Access + + + + ['|', ('groups_id', '=', False), ('groups_id', 'in', [g.id for g in user.groups_id])] + + + Document Page Full Access + + + + [(1, '=', 1)] + + diff --git a/document_page_access_group/static/description/icon.png b/document_page_access_group/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/static/description/index.html b/document_page_access_group/static/description/index.html new file mode 100644 index 00000000000..3363ee7e9bd --- /dev/null +++ b/document_page_access_group/static/description/index.html @@ -0,0 +1,431 @@ + + + + + + +Document Page Access Group + + + +
+

Document Page Access Group

+ + +

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

+

This module allows to select which users groups have access to the +document pages.

+

Table of contents

+ +
+

Usage

+

To select the users that have access to a given document page +you need to open a document, go to the ‘Security’ tab +and select which groups will have access.

+

Only users that belong to the ‘Knowledge / Manager’ group can +manage access groups to documents.

+

If no groups are selected in a document, all users that can access +document pages can access this document.

+
+
+

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

+
    +
  • Sygel
  • +
+
+
+

Contributors

+ +
+
+

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.

+

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/views/document_page.xml b/document_page_access_group/views/document_page.xml new file mode 100644 index 00000000000..b09cba7d4e1 --- /dev/null +++ b/document_page_access_group/views/document_page.xml @@ -0,0 +1,21 @@ + + + + + document.page.access.group.view.wiki.form + document.page + + + + + + + + + + From 042592127b492cd0822dc2864584bad3c0ba93f3 Mon Sep 17 00:00:00 2001 From: mymage Date: Wed, 28 Dec 2022 23:09:58 +0000 Subject: [PATCH 02/22] Added translation using Weblate (Italian) --- document_page_access_group/i18n/it.po | 45 +++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 document_page_access_group/i18n/it.po diff --git a/document_page_access_group/i18n/it.po b/document_page_access_group/i18n/it.po new file mode 100644 index 00000000000..3aa4cb220d4 --- /dev/null +++ b/document_page_access_group/i18n/it.po @@ -0,0 +1,45 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * document_page_access_group +# +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: 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 +#: model:ir.model.fields,field_description:document_page_access_group.field_document_page__display_name +msgid "Display Name" +msgstr "" + +#. module: document_page_access_group +#: model:ir.model,name:document_page_access_group.model_document_page +msgid "Document Page" +msgstr "" + +#. module: document_page_access_group +#: model:ir.model.fields,field_description:document_page_access_group.field_document_page__groups_id +msgid "Groups" +msgstr "" + +#. module: document_page_access_group +#: model:ir.model.fields,field_description:document_page_access_group.field_document_page__id +msgid "ID" +msgstr "" + +#. module: document_page_access_group +#: model:ir.model.fields,field_description:document_page_access_group.field_document_page____last_update +msgid "Last Modified on" +msgstr "" + +#. module: document_page_access_group +#: model_terms:ir.ui.view,arch_db:document_page_access_group.document_page_access_group_view_wiki_form +msgid "Security" +msgstr "" From 3d50d8121dbdfdfc5d83da686c35ced185156a99 Mon Sep 17 00:00:00 2001 From: mymage Date: Wed, 28 Dec 2022 23:14:56 +0000 Subject: [PATCH 03/22] Translated using Weblate (Italian) Currently translated at 100.0% (6 of 6 strings) Translation: knowledge-14.0/knowledge-14.0-document_page_access_group Translate-URL: https://translation.odoo-community.org/projects/knowledge-14-0/knowledge-14-0-document_page_access_group/it/ --- document_page_access_group/i18n/it.po | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/document_page_access_group/i18n/it.po b/document_page_access_group/i18n/it.po index 3aa4cb220d4..0457799da90 100644 --- a/document_page_access_group/i18n/it.po +++ b/document_page_access_group/i18n/it.po @@ -6,40 +6,42 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 14.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: Automatically generated\n" +"PO-Revision-Date: 2022-12-29 02:09+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.14.1\n" #. module: document_page_access_group #: model:ir.model.fields,field_description:document_page_access_group.field_document_page__display_name msgid "Display Name" -msgstr "" +msgstr "Nome visualizzato" #. module: document_page_access_group #: model:ir.model,name:document_page_access_group.model_document_page msgid "Document Page" -msgstr "" +msgstr "Pagina documento" #. module: document_page_access_group #: model:ir.model.fields,field_description:document_page_access_group.field_document_page__groups_id msgid "Groups" -msgstr "" +msgstr "Gruppi" #. module: document_page_access_group #: model:ir.model.fields,field_description:document_page_access_group.field_document_page__id msgid "ID" -msgstr "" +msgstr "ID" #. module: document_page_access_group #: model:ir.model.fields,field_description:document_page_access_group.field_document_page____last_update msgid "Last Modified on" -msgstr "" +msgstr "Ultima modifica il" #. module: document_page_access_group #: model_terms:ir.ui.view,arch_db:document_page_access_group.document_page_access_group_view_wiki_form msgid "Security" -msgstr "" +msgstr "Sicurezza" From 9c36104c4e416f3833b6ff162c91dc6ccbd2bdbe Mon Sep 17 00:00:00 2001 From: luis-ron Date: Mon, 5 Jun 2023 11:17:56 +0000 Subject: [PATCH 04/22] Added translation using Weblate (Spanish) --- document_page_access_group/i18n/es.po | 45 +++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 document_page_access_group/i18n/es.po diff --git a/document_page_access_group/i18n/es.po b/document_page_access_group/i18n/es.po new file mode 100644 index 00000000000..6f7c8ec314b --- /dev/null +++ b/document_page_access_group/i18n/es.po @@ -0,0 +1,45 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * document_page_access_group +# +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: document_page_access_group +#: model:ir.model.fields,field_description:document_page_access_group.field_document_page__display_name +msgid "Display Name" +msgstr "" + +#. module: document_page_access_group +#: model:ir.model,name:document_page_access_group.model_document_page +msgid "Document Page" +msgstr "" + +#. module: document_page_access_group +#: model:ir.model.fields,field_description:document_page_access_group.field_document_page__groups_id +msgid "Groups" +msgstr "" + +#. module: document_page_access_group +#: model:ir.model.fields,field_description:document_page_access_group.field_document_page__id +msgid "ID" +msgstr "" + +#. module: document_page_access_group +#: model:ir.model.fields,field_description:document_page_access_group.field_document_page____last_update +msgid "Last Modified on" +msgstr "" + +#. module: document_page_access_group +#: model_terms:ir.ui.view,arch_db:document_page_access_group.document_page_access_group_view_wiki_form +msgid "Security" +msgstr "" From 08e4258148678a5ccfe3e614d27db1aeb284a14d Mon Sep 17 00:00:00 2001 From: luis-ron Date: Mon, 5 Jun 2023 11:18:07 +0000 Subject: [PATCH 05/22] Translated using Weblate (Spanish) Currently translated at 100.0% (6 of 6 strings) Translation: knowledge-14.0/knowledge-14.0-document_page_access_group Translate-URL: https://translation.odoo-community.org/projects/knowledge-14-0/knowledge-14-0-document_page_access_group/es/ --- document_page_access_group/README.rst | 15 +++++--- document_page_access_group/i18n/es.po | 16 ++++---- .../static/description/index.html | 38 ++++++++++--------- 3 files changed, 38 insertions(+), 31 deletions(-) diff --git a/document_page_access_group/README.rst b/document_page_access_group/README.rst index 16f0e8627f3..4a1b4de81cd 100644 --- a/document_page_access_group/README.rst +++ b/document_page_access_group/README.rst @@ -2,10 +2,13 @@ Document Page Access Group ========================== -.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:e7fc1c256036fc0d9e338952db19ce8abcc9cbb414c5264956fb932d6be80e12 + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png :target: https://odoo-community.org/page/development-status @@ -19,11 +22,11 @@ Document Page Access Group .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png :target: https://translation.odoo-community.org/projects/knowledge-14-0/knowledge-14-0-document_page_access_group :alt: Translate me on Weblate -.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/118/14.0 - :alt: Try me on Runbot +.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png + :target: https://runboat.odoo-community.org/builds?repo=OCA/knowledge&target_branch=14.0 + :alt: Try me on Runboat -|badge1| |badge2| |badge3| |badge4| |badge5| +|badge1| |badge2| |badge3| |badge4| |badge5| This module allows to select which users groups have access to the document pages. @@ -51,7 +54,7 @@ Bug Tracker Bugs are tracked on `GitHub Issues `_. In case of trouble, please check there if your issue has already been reported. -If you spotted it first, help us smashing it by providing a detailed and welcomed +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. diff --git a/document_page_access_group/i18n/es.po b/document_page_access_group/i18n/es.po index 6f7c8ec314b..97896a2fbe4 100644 --- a/document_page_access_group/i18n/es.po +++ b/document_page_access_group/i18n/es.po @@ -6,40 +6,42 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 14.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: Automatically generated\n" +"PO-Revision-Date: 2023-06-05 13:08+0000\n" +"Last-Translator: luis-ron \n" "Language-Team: none\n" "Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" "Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" #. module: document_page_access_group #: model:ir.model.fields,field_description:document_page_access_group.field_document_page__display_name msgid "Display Name" -msgstr "" +msgstr "Nombre mostrado" #. module: document_page_access_group #: model:ir.model,name:document_page_access_group.model_document_page msgid "Document Page" -msgstr "" +msgstr "Página de documento" #. module: document_page_access_group #: model:ir.model.fields,field_description:document_page_access_group.field_document_page__groups_id msgid "Groups" -msgstr "" +msgstr "Grupos" #. module: document_page_access_group #: model:ir.model.fields,field_description:document_page_access_group.field_document_page__id msgid "ID" -msgstr "" +msgstr "ID" #. module: document_page_access_group #: model:ir.model.fields,field_description:document_page_access_group.field_document_page____last_update msgid "Last Modified on" -msgstr "" +msgstr "Última modificación el" #. module: document_page_access_group #: model_terms:ir.ui.view,arch_db:document_page_access_group.document_page_access_group_view_wiki_form msgid "Security" -msgstr "" +msgstr "Seguridad" diff --git a/document_page_access_group/static/description/index.html b/document_page_access_group/static/description/index.html index 3363ee7e9bd..637712cbee6 100644 --- a/document_page_access_group/static/description/index.html +++ b/document_page_access_group/static/description/index.html @@ -1,20 +1,20 @@ - + - + Document Page Access Group -
-

Document Page Access Group

+
+ + +Odoo Community Association + +
+

Document Page Access Group

-

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

This module allows to select which users groups have access to the document pages.

Table of contents

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

Document Page Access Group

-

Usage

+

Usage

To select the users that have access to a given document page you need to open a document, go to the ‘Security’ tab and you have 3 options:

    @@ -397,24 +402,24 @@

    Usage

-

Bug Tracker

+

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.

-

Credits

+

Credits

-

Authors

+

Authors

  • Sygel
  • Creu Blanca
-

Contributors

+

Contributors

-

Maintainers

+

Maintainers

This module is maintained by the OCA.

Odoo Community Association @@ -441,10 +446,11 @@

Maintainers

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

-

This module is part of the OCA/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/tests/common.py b/document_page_access_group/tests/common.py index 4feba377718..abf39832b35 100644 --- a/document_page_access_group/tests/common.py +++ b/document_page_access_group/tests/common.py @@ -18,7 +18,7 @@ def setUpClass(cls): login="test-manager-user", groups="document_knowledge.group_document_user", ) - cls.manager_user.write({"groups_id": [Command.link(cls.group.id)]}) + cls.manager_user.write({"group_ids": [Command.link(cls.group.id)]}) cls.public_page = cls.env["document.page"].create( {"name": "Public Page", "type": "content"} ) From 79e95c8f2cf73d97a9281892b4ed2173a6ce16a6 Mon Sep 17 00:00:00 2001 From: Bhavesh Heliconia Date: Mon, 29 Dec 2025 15:58:22 +0530 Subject: [PATCH 22/22] [DON'T MERGE] test-requirements.txt --- test-requirements.txt | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 test-requirements.txt diff --git a/test-requirements.txt b/test-requirements.txt new file mode 100644 index 00000000000..4ea0699c025 --- /dev/null +++ b/test-requirements.txt @@ -0,0 +1,2 @@ +odoo-addon-document_knowledge @ git+https://github.com/OCA/knowledge.git@refs/pull/569/head#subdirectory=document_knowledge +odoo-addon-document_page @ git+https://github.com/OCA/knowledge.git@refs/pull/570/head#subdirectory=document_page