From 31db13cbee5318f47a706db8ce2ec1791adcaab5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Mart=C3=ADnez?= Date: Fri, 7 May 2021 12:39:15 +0200 Subject: [PATCH 01/18] [ADD] crm_security_group: Add new category about CRM and create 3 groups (Own Documents Only, All Documents and Administrator) to separate Sales and CRM apps --- crm_security_group/README.rst | 88 ++++ crm_security_group/__init__.py | 0 crm_security_group/__manifest__.py | 21 + .../i18n/crm_security_group.pot | 35 ++ crm_security_group/readme/CONTRIBUTORS.rst | 3 + crm_security_group/readme/DESCRIPTION.rst | 1 + crm_security_group/readme/ROADMAP.rst | 1 + .../security/ir.model.access.csv | 9 + crm_security_group/security/security.xml | 58 +++ .../static/description/icon.png | Bin 0 -> 9455 bytes .../static/description/index.html | 431 ++++++++++++++++++ crm_security_group/tests/__init__.py | 2 + crm_security_group/tests/test_crm_security.py | 124 +++++ crm_security_group/views/menu_items.xml | 40 ++ 14 files changed, 813 insertions(+) create mode 100644 crm_security_group/README.rst create mode 100644 crm_security_group/__init__.py create mode 100644 crm_security_group/__manifest__.py create mode 100644 crm_security_group/i18n/crm_security_group.pot create mode 100644 crm_security_group/readme/CONTRIBUTORS.rst create mode 100644 crm_security_group/readme/DESCRIPTION.rst create mode 100644 crm_security_group/readme/ROADMAP.rst create mode 100644 crm_security_group/security/ir.model.access.csv create mode 100644 crm_security_group/security/security.xml create mode 100644 crm_security_group/static/description/icon.png create mode 100644 crm_security_group/static/description/index.html create mode 100644 crm_security_group/tests/__init__.py create mode 100644 crm_security_group/tests/test_crm_security.py create mode 100644 crm_security_group/views/menu_items.xml diff --git a/crm_security_group/README.rst b/crm_security_group/README.rst new file mode 100644 index 00000000000..1b2bc20c667 --- /dev/null +++ b/crm_security_group/README.rst @@ -0,0 +1,88 @@ +======================== +CRM Only Security Groups +======================== + +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! 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%2Fcrm-lightgray.png?logo=github + :target: https://github.com/OCA/crm/tree/13.0/crm_security_group + :alt: OCA/crm +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/crm-13-0/crm-13-0-crm_security_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/111/13.0 + :alt: Try me on Runbot + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module adds new security options to CRM by creating 3 groups (Own Documents Only, All Documents and Administrator) to separate Sales and CRM apps permissions + +**Table of contents** + +.. contents:: + :local: + +Known issues / Roadmap +====================== + +- Remove sale_crm dependency (now is not possible), maybe split these part in other addon + +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 +~~~~~~~ + +* Tecnativa + +Contributors +~~~~~~~~~~~~ + +* `Tecnativa `__: + + * Víctor Martínez + +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/crm `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/crm_security_group/__init__.py b/crm_security_group/__init__.py new file mode 100644 index 00000000000..e69de29bb2d diff --git a/crm_security_group/__manifest__.py b/crm_security_group/__manifest__.py new file mode 100644 index 00000000000..48034d7cb2d --- /dev/null +++ b/crm_security_group/__manifest__.py @@ -0,0 +1,21 @@ +# Copyright 2021 Tecnativa - Víctor Martínez +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). +{ + "name": "CRM Only Security Groups", + "summary": "Add new group in Sales to show only CRM", + "version": "13.0.1.0.0", + "category": "Customer Relationship Management", + "website": "https://github.com/OCA/crm/", + "author": "Tecnativa, Odoo Community Association (OCA)", + "license": "AGPL-3", + "application": False, + "installable": True, + "depends": ["crm", "sale_crm"], + # sale_crm dependency is necessary to add groups in some view + "maintainers": ["victoralmau"], + "data": [ + "security/security.xml", + "security/ir.model.access.csv", + "views/menu_items.xml", + ], +} diff --git a/crm_security_group/i18n/crm_security_group.pot b/crm_security_group/i18n/crm_security_group.pot new file mode 100644 index 00000000000..b43a5917cb5 --- /dev/null +++ b/crm_security_group/i18n/crm_security_group.pot @@ -0,0 +1,35 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * crm_security_group +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 13.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: crm_security_group +#: model:res.groups,name:crm_security_group.group_crm_manager +msgid "Administrator" +msgstr "" + +#. module: crm_security_group +#: model:ir.module.category,name:crm_security_group.module_category_crm +#: model:ir.module.category,name:crm_security_group.module_category_crm_crm +msgid "CRM" +msgstr "" + +#. module: crm_security_group +#: model:res.groups,name:crm_security_group.group_crm_all_leads +msgid "User: All Documents" +msgstr "" + +#. module: crm_security_group +#: model:res.groups,name:crm_security_group.group_crm_own_leads +msgid "User: Own Documents Only" +msgstr "" diff --git a/crm_security_group/readme/CONTRIBUTORS.rst b/crm_security_group/readme/CONTRIBUTORS.rst new file mode 100644 index 00000000000..ae3b3ea56a3 --- /dev/null +++ b/crm_security_group/readme/CONTRIBUTORS.rst @@ -0,0 +1,3 @@ +* `Tecnativa `__: + + * Víctor Martínez diff --git a/crm_security_group/readme/DESCRIPTION.rst b/crm_security_group/readme/DESCRIPTION.rst new file mode 100644 index 00000000000..d5dca4251d6 --- /dev/null +++ b/crm_security_group/readme/DESCRIPTION.rst @@ -0,0 +1 @@ +This module adds new security options to CRM by creating 3 groups (Own Documents Only, All Documents and Administrator) to separate Sales and CRM apps permissions diff --git a/crm_security_group/readme/ROADMAP.rst b/crm_security_group/readme/ROADMAP.rst new file mode 100644 index 00000000000..44e75740b69 --- /dev/null +++ b/crm_security_group/readme/ROADMAP.rst @@ -0,0 +1 @@ +- Remove sale_crm dependency (now is not possible), maybe split these part in other addon diff --git a/crm_security_group/security/ir.model.access.csv b/crm_security_group/security/ir.model.access.csv new file mode 100644 index 00000000000..e24f07e6772 --- /dev/null +++ b/crm_security_group/security/ir.model.access.csv @@ -0,0 +1,9 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink +access_crm_lead_user,crm.lead.user,crm.model_crm_lead,crm_security_group.group_crm_own_leads,1,1,1,0 +access_crm_team_user,crm.team.user,sales_team.model_crm_team,crm_security_group.group_crm_own_leads,1,0,0,0 +access_crm_team_manager,crm.team.manager,sales_team.model_crm_team,crm_security_group.group_crm_own_leads,1,1,1,1 +access_crm_stage_manager,crm.stage.manager,crm.model_crm_stage,crm_security_group.group_crm_manager,1,1,1,1 +access_crm_lead_tag_own_leads,crm.lead.tag.own.leads,crm.model_crm_lead_tag,crm_security_group.group_crm_own_leads,1,1,1,0 +access_crm_lead_tag_manager,crm.lead.tag.manager,crm.model_crm_lead_tag,crm_security_group.group_crm_manager,1,1,1,1 +access_crm_lead_scoring_frequency_user,crm.lead.scoring.frequency.user,crm.model_crm_lead_scoring_frequency,crm_security_group.group_crm_own_leads,1,0,0,0 +access_crm_lead_scoring_frequency_field_user,crm.lead.scoring.frequency.field.user,crm.model_crm_lead_scoring_frequency_field,crm_security_group.group_crm_own_leads,1,0,0,0 diff --git a/crm_security_group/security/security.xml b/crm_security_group/security/security.xml new file mode 100644 index 00000000000..b3f0b2ae9ea --- /dev/null +++ b/crm_security_group/security/security.xml @@ -0,0 +1,58 @@ + + + + CRM + 80 + + + CRM + + + + User: Own Documents Only + + + + + User: All Documents + + + + + Administrator + + + + + + + Personal Leads + + ['|',('user_id','=',user.id),('user_id','=',False)] + + + + All Leads + + [(1,'=',1)] + + + + diff --git a/crm_security_group/static/description/icon.png b/crm_security_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/crm_security_group/static/description/index.html b/crm_security_group/static/description/index.html new file mode 100644 index 00000000000..5a3c493a268 --- /dev/null +++ b/crm_security_group/static/description/index.html @@ -0,0 +1,431 @@ + + + + + + +CRM Only Security Groups + + + +
+

CRM Only Security Groups

+ + +

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

+

This module adds new security options to CRM by creating 3 groups (Own Documents Only, All Documents and Administrator) to separate Sales and CRM apps permissions

+

Table of contents

+ +
+

Known issues / Roadmap

+
    +
  • Remove sale_crm dependency (now is not possible), maybe split these part in other addon
  • +
+
+
+

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

+
    +
  • Tecnativa
  • +
+
+
+

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.

+

Current maintainer:

+

victoralmau

+

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

+

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

+
+
+
+ + diff --git a/crm_security_group/tests/__init__.py b/crm_security_group/tests/__init__.py new file mode 100644 index 00000000000..bcb33e9f7e1 --- /dev/null +++ b/crm_security_group/tests/__init__.py @@ -0,0 +1,2 @@ +# License LGPL-3 - See https://www.gnu.org/licenses/lgpl-3.0.html +from . import test_crm_security diff --git a/crm_security_group/tests/test_crm_security.py b/crm_security_group/tests/test_crm_security.py new file mode 100644 index 00000000000..0fefffe0779 --- /dev/null +++ b/crm_security_group/tests/test_crm_security.py @@ -0,0 +1,124 @@ +# Copyright 2021 Tecnativa - Víctor Martínez +# License LGPL-3 - See https://www.gnu.org/licenses/lgpl-3.0.html + +from odoo.exceptions import AccessError +from odoo.tests.common import Form, SavepointCase + + +class TestCrmSecurity(SavepointCase): + @classmethod + def setUpClass(cls): + super().setUpClass() + cls.group_user = cls.env.ref("base.group_user") + cls.group_crm_all_leads = cls.env.ref("crm_security_group.group_crm_all_leads") + cls.group_sale_salesman_all_leads = cls.env.ref( + "sales_team.group_sale_salesman_all_leads" + ) + cls.crm_user = cls.env["res.users"].create( + { + "name": "crm_user", + "login": "crm_user", + "email": "example@crm_user.com", + "groups_id": [(6, 0, [cls.group_user.id, cls.group_crm_all_leads.id])], + } + ) + cls.sale_user = cls.env["res.users"].create( + { + "name": "sale_user", + "login": "sale_user", + "email": "example@sale_user.com", + "groups_id": [ + (6, 0, [cls.group_user.id, cls.group_sale_salesman_all_leads.id]) + ], + } + ) + cls.crm_sale_user = cls.env["res.users"].create( + { + "name": "crm_sale_user", + "login": "crm_sale_user", + "email": "example@crm_sale_user.com", + "groups_id": [ + ( + 6, + 0, + [ + cls.group_user.id, + cls.group_crm_all_leads.id, + cls.group_sale_salesman_all_leads.id, + ], + ) + ], + } + ) + cls.model_ir_ui_menu = cls.env["ir.ui.menu"] + cls.crm_menu = cls.env.ref("crm.crm_menu_root") + cls.sale_menu = cls.env.ref("sale.sale_menu_root") + # create items to test after + cls.partner = cls.env["res.partner"].create({"name": "Test partner"}) + cls.crm_lead = cls.env["crm.lead"].sudo().create({"name": "Lead"}) + cls.sale_order = ( + cls.env["sale.order"].sudo().create({"partner_id": cls.partner.id}) + ) + + def test_user_crm_only(self): + model = self.model_ir_ui_menu.with_user(self.crm_user) + items = model._visible_menu_ids() + self.assertTrue(self.crm_menu.id in items) + self.assertFalse(self.sale_menu.id in items) + # Crm lead checks + crm_lead_model = self.env["crm.lead"].with_user(self.crm_user) + crm_lead = crm_lead_model.browse(self.crm_lead.id) + self.assertEqual(crm_lead, self.crm_lead) + with self.assertRaises(AccessError): + self.crm_lead.with_user(self.crm_user).unlink() + crm_lead_form = Form(crm_lead_model) + crm_lead_form.name = "Lead" + crm_lead_form.save() + + def test_user_sale(self): + model = self.model_ir_ui_menu.with_user(self.sale_user) + items = model._visible_menu_ids() + self.assertTrue(self.crm_menu.id in items) + self.assertTrue(self.sale_menu.id in items) + # Crm lead checks + crm_lead_model = self.env["crm.lead"].with_user(self.sale_user) + crm_lead = crm_lead_model.browse(self.crm_lead.id) + self.assertEqual(crm_lead, self.crm_lead) + with self.assertRaises(AccessError): + self.crm_lead.with_user(self.sale_user).unlink() + crm_lead_form = Form(crm_lead_model) + crm_lead_form.name = "Lead" + crm_lead_form.save() + # Sale order checks + sale_order_model = self.env["sale.order"].with_user(self.sale_user) + sale_order = sale_order_model.browse(self.sale_order.id) + self.assertEqual(sale_order, self.sale_order) + with self.assertRaises(AccessError): + self.sale_order.with_user(self.sale_user).unlink() + sale_order_form = Form(sale_order_model) + sale_order_form.partner_id = self.partner + sale_order_form.save() + + def test_user_crm_sale(self): + model = self.model_ir_ui_menu.with_user(self.crm_sale_user) + items = model._visible_menu_ids() + self.assertTrue(self.crm_menu.id in items) + self.assertTrue(self.sale_menu.id in items) + # Crm lead checks + crm_lead_model = self.env["crm.lead"].with_user(self.crm_sale_user) + crm_lead = crm_lead_model.browse(self.crm_lead.id) + self.assertEqual(crm_lead, self.crm_lead) + with self.assertRaises(AccessError): + self.crm_lead.with_user(self.crm_sale_user).unlink() + crm_lead_form = Form(crm_lead_model) + crm_lead_form.name = "Lead" + crm_lead_form.save() + # Sale order checks + sale_order_model = self.env["sale.order"].with_user(self.crm_sale_user) + sale_order = sale_order_model.browse(self.sale_order.id) + self.assertEqual(sale_order, self.sale_order) + with self.assertRaises(AccessError): + self.sale_order.with_user(self.crm_sale_user).unlink() + sale_order_form = Form(sale_order_model) + sale_order_form.partner_id = self.partner + sale_order_form.save() diff --git a/crm_security_group/views/menu_items.xml b/crm_security_group/views/menu_items.xml new file mode 100644 index 00000000000..f08ad44f95f --- /dev/null +++ b/crm_security_group/views/menu_items.xml @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 32c2e313ec3b41057d65a581a071a52fb681948c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Mart=C3=ADnez?= Date: Fri, 21 May 2021 09:28:53 +0200 Subject: [PATCH 02/18] [IMP] crm_security_group: black, isort, prettier --- crm_security_group/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crm_security_group/__manifest__.py b/crm_security_group/__manifest__.py index 48034d7cb2d..da3533896fb 100644 --- a/crm_security_group/__manifest__.py +++ b/crm_security_group/__manifest__.py @@ -5,7 +5,7 @@ "summary": "Add new group in Sales to show only CRM", "version": "13.0.1.0.0", "category": "Customer Relationship Management", - "website": "https://github.com/OCA/crm/", + "website": "https://github.com/OCA/crm", "author": "Tecnativa, Odoo Community Association (OCA)", "license": "AGPL-3", "application": False, From c26479ce3cdd16d14bca82974c723719b04e0b39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Mart=C3=ADnez?= Date: Fri, 21 May 2021 09:39:17 +0200 Subject: [PATCH 03/18] [MIG] crm_security_group: Migration to 14.0 --- crm_security_group/__manifest__.py | 2 +- crm_security_group/security/ir.model.access.csv | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/crm_security_group/__manifest__.py b/crm_security_group/__manifest__.py index da3533896fb..617d76719e4 100644 --- a/crm_security_group/__manifest__.py +++ b/crm_security_group/__manifest__.py @@ -3,7 +3,7 @@ { "name": "CRM Only Security Groups", "summary": "Add new group in Sales to show only CRM", - "version": "13.0.1.0.0", + "version": "14.0.1.0.0", "category": "Customer Relationship Management", "website": "https://github.com/OCA/crm", "author": "Tecnativa, Odoo Community Association (OCA)", diff --git a/crm_security_group/security/ir.model.access.csv b/crm_security_group/security/ir.model.access.csv index e24f07e6772..d77802ef470 100644 --- a/crm_security_group/security/ir.model.access.csv +++ b/crm_security_group/security/ir.model.access.csv @@ -3,7 +3,7 @@ access_crm_lead_user,crm.lead.user,crm.model_crm_lead,crm_security_group.group_c access_crm_team_user,crm.team.user,sales_team.model_crm_team,crm_security_group.group_crm_own_leads,1,0,0,0 access_crm_team_manager,crm.team.manager,sales_team.model_crm_team,crm_security_group.group_crm_own_leads,1,1,1,1 access_crm_stage_manager,crm.stage.manager,crm.model_crm_stage,crm_security_group.group_crm_manager,1,1,1,1 -access_crm_lead_tag_own_leads,crm.lead.tag.own.leads,crm.model_crm_lead_tag,crm_security_group.group_crm_own_leads,1,1,1,0 -access_crm_lead_tag_manager,crm.lead.tag.manager,crm.model_crm_lead_tag,crm_security_group.group_crm_manager,1,1,1,1 +access_crm_tag_own_leads,sale_team.crm.tag.own.leads,sales_team.model_crm_tag,crm_security_group.group_crm_own_leads,1,1,1,0 +access_crm_tag_manager,sale_team.crm.tag.manager,sales_team.model_crm_tag,crm_security_group.group_crm_manager,1,1,1,1 access_crm_lead_scoring_frequency_user,crm.lead.scoring.frequency.user,crm.model_crm_lead_scoring_frequency,crm_security_group.group_crm_own_leads,1,0,0,0 access_crm_lead_scoring_frequency_field_user,crm.lead.scoring.frequency.field.user,crm.model_crm_lead_scoring_frequency_field,crm_security_group.group_crm_own_leads,1,0,0,0 From 8623c6d53a42ae661495bd5aa78cc0af36392414 Mon Sep 17 00:00:00 2001 From: oca-travis Date: Fri, 21 May 2021 16:55:39 +0000 Subject: [PATCH 04/18] [UPD] Update crm_security_group.pot --- crm_security_group/i18n/crm_security_group.pot | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crm_security_group/i18n/crm_security_group.pot b/crm_security_group/i18n/crm_security_group.pot index b43a5917cb5..90f2ad55561 100644 --- a/crm_security_group/i18n/crm_security_group.pot +++ b/crm_security_group/i18n/crm_security_group.pot @@ -4,7 +4,7 @@ # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 13.0\n" +"Project-Id-Version: Odoo Server 14.0\n" "Report-Msgid-Bugs-To: \n" "Last-Translator: \n" "Language-Team: \n" From 30eee629e31a11cee2e3571d7a86d9514adce341 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Fri, 21 May 2021 17:57:48 +0000 Subject: [PATCH 05/18] [UPD] README.rst --- crm_security_group/README.rst | 10 +++++----- crm_security_group/static/description/index.html | 6 +++--- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/crm_security_group/README.rst b/crm_security_group/README.rst index 1b2bc20c667..655191bc551 100644 --- a/crm_security_group/README.rst +++ b/crm_security_group/README.rst @@ -14,13 +14,13 @@ CRM Only Security Groups :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fcrm-lightgray.png?logo=github - :target: https://github.com/OCA/crm/tree/13.0/crm_security_group + :target: https://github.com/OCA/crm/tree/14.0/crm_security_group :alt: OCA/crm .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/crm-13-0/crm-13-0-crm_security_group + :target: https://translation.odoo-community.org/projects/crm-14-0/crm-14-0-crm_security_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/111/13.0 + :target: https://runbot.odoo-community.org/runbot/111/14.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -43,7 +43,7 @@ Bug Tracker Bugs are tracked on `GitHub Issues `_. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -83,6 +83,6 @@ Current `maintainer `__: |maintainer-victoralmau| -This module is part of the `OCA/crm `_ project on GitHub. +This module is part of the `OCA/crm `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/crm_security_group/static/description/index.html b/crm_security_group/static/description/index.html index 5a3c493a268..7260362d5fe 100644 --- a/crm_security_group/static/description/index.html +++ b/crm_security_group/static/description/index.html @@ -367,7 +367,7 @@

CRM Only Security Groups

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

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

+

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

This module adds new security options to CRM by creating 3 groups (Own Documents Only, All Documents and Administrator) to separate Sales and CRM apps permissions

Table of contents

@@ -393,7 +393,7 @@

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed -feedback.

+feedback.

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

@@ -422,7 +422,7 @@

Maintainers

promote its widespread use.

Current maintainer:

victoralmau

-

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

+

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

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

From 248455f6c0a51a14c70ec10249519786df0fdf46 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Fri, 21 May 2021 17:57:49 +0000 Subject: [PATCH 06/18] crm_security_group 14.0.1.0.1 --- crm_security_group/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crm_security_group/__manifest__.py b/crm_security_group/__manifest__.py index 617d76719e4..dd590ca8eaa 100644 --- a/crm_security_group/__manifest__.py +++ b/crm_security_group/__manifest__.py @@ -3,7 +3,7 @@ { "name": "CRM Only Security Groups", "summary": "Add new group in Sales to show only CRM", - "version": "14.0.1.0.0", + "version": "14.0.1.0.1", "category": "Customer Relationship Management", "website": "https://github.com/OCA/crm", "author": "Tecnativa, Odoo Community Association (OCA)", From 9944650b729e3ff94d751c8c02c66c8b3860e747 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Mart=C3=ADnez?= Date: Tue, 8 Nov 2022 12:59:10 +0100 Subject: [PATCH 07/18] [FIX] crm_security_group: Fix menu visibility: - Show CRM root menu only if user has any CRM permissions. - Show Reporting menu from CRM only if user has any CRM permissions. TT40356 --- crm_security_group/tests/test_crm_security.py | 2 +- crm_security_group/views/menu_items.xml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/crm_security_group/tests/test_crm_security.py b/crm_security_group/tests/test_crm_security.py index 0fefffe0779..7104808a1c0 100644 --- a/crm_security_group/tests/test_crm_security.py +++ b/crm_security_group/tests/test_crm_security.py @@ -78,7 +78,7 @@ def test_user_crm_only(self): def test_user_sale(self): model = self.model_ir_ui_menu.with_user(self.sale_user) items = model._visible_menu_ids() - self.assertTrue(self.crm_menu.id in items) + self.assertFalse(self.crm_menu.id in items) self.assertTrue(self.sale_menu.id in items) # Crm lead checks crm_lead_model = self.env["crm.lead"].with_user(self.sale_user) diff --git a/crm_security_group/views/menu_items.xml b/crm_security_group/views/menu_items.xml index f08ad44f95f..12b2ee72b7b 100644 --- a/crm_security_group/views/menu_items.xml +++ b/crm_security_group/views/menu_items.xml @@ -3,7 +3,7 @@ @@ -18,7 +18,7 @@ From c40c69afd1b64ef64613f490e7f0351addc17f85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Mart=C3=ADnez?= Date: Tue, 8 Nov 2022 15:12:01 +0100 Subject: [PATCH 08/18] [IMP] crm_security_group: Regroup permissions in Sales section. TT40356 --- crm_security_group/security/security.xml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/crm_security_group/security/security.xml b/crm_security_group/security/security.xml index b3f0b2ae9ea..f8488c6b28c 100644 --- a/crm_security_group/security/security.xml +++ b/crm_security_group/security/security.xml @@ -1,12 +1,8 @@ - - CRM - 80 - CRM - + User: Own Documents Only From 905cbe945d5aca82414a40120c4094505da8a28a Mon Sep 17 00:00:00 2001 From: oca-ci Date: Tue, 8 Nov 2022 17:23:16 +0000 Subject: [PATCH 09/18] [UPD] Update crm_security_group.pot --- crm_security_group/i18n/crm_security_group.pot | 1 - 1 file changed, 1 deletion(-) diff --git a/crm_security_group/i18n/crm_security_group.pot b/crm_security_group/i18n/crm_security_group.pot index 90f2ad55561..8eab23ec476 100644 --- a/crm_security_group/i18n/crm_security_group.pot +++ b/crm_security_group/i18n/crm_security_group.pot @@ -19,7 +19,6 @@ msgid "Administrator" msgstr "" #. module: crm_security_group -#: model:ir.module.category,name:crm_security_group.module_category_crm #: model:ir.module.category,name:crm_security_group.module_category_crm_crm msgid "CRM" msgstr "" From a1b193b757326b61bb386d3bd3d8d91fba4f7796 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Tue, 8 Nov 2022 17:27:58 +0000 Subject: [PATCH 10/18] crm_security_group 14.0.1.1.0 --- crm_security_group/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crm_security_group/__manifest__.py b/crm_security_group/__manifest__.py index dd590ca8eaa..7d171eb69fa 100644 --- a/crm_security_group/__manifest__.py +++ b/crm_security_group/__manifest__.py @@ -3,7 +3,7 @@ { "name": "CRM Only Security Groups", "summary": "Add new group in Sales to show only CRM", - "version": "14.0.1.0.1", + "version": "14.0.1.1.0", "category": "Customer Relationship Management", "website": "https://github.com/OCA/crm", "author": "Tecnativa, Odoo Community Association (OCA)", From cc9960d03d2811338ec3d8245fdb58620c775c7c Mon Sep 17 00:00:00 2001 From: luis-ron Date: Tue, 6 Jun 2023 08:28:26 +0000 Subject: [PATCH 11/18] Added translation using Weblate (Spanish) --- crm_security_group/i18n/es.po | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 crm_security_group/i18n/es.po diff --git a/crm_security_group/i18n/es.po b/crm_security_group/i18n/es.po new file mode 100644 index 00000000000..1879b5c59c9 --- /dev/null +++ b/crm_security_group/i18n/es.po @@ -0,0 +1,35 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * crm_security_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: crm_security_group +#: model:res.groups,name:crm_security_group.group_crm_manager +msgid "Administrator" +msgstr "" + +#. module: crm_security_group +#: model:ir.module.category,name:crm_security_group.module_category_crm_crm +msgid "CRM" +msgstr "" + +#. module: crm_security_group +#: model:res.groups,name:crm_security_group.group_crm_all_leads +msgid "User: All Documents" +msgstr "" + +#. module: crm_security_group +#: model:res.groups,name:crm_security_group.group_crm_own_leads +msgid "User: Own Documents Only" +msgstr "" From 37acf3d93862c9110613fb223139df7234e912f5 Mon Sep 17 00:00:00 2001 From: luis-ron Date: Tue, 6 Jun 2023 08:31:23 +0000 Subject: [PATCH 12/18] Translated using Weblate (Spanish) Currently translated at 100.0% (4 of 4 strings) Translation: crm-14.0/crm-14.0-crm_security_group Translate-URL: https://translation.odoo-community.org/projects/crm-14-0/crm-14-0-crm_security_group/es/ --- crm_security_group/i18n/es.po | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/crm_security_group/i18n/es.po b/crm_security_group/i18n/es.po index 1879b5c59c9..46249203a37 100644 --- a/crm_security_group/i18n/es.po +++ b/crm_security_group/i18n/es.po @@ -6,30 +6,32 @@ 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-06 11: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: crm_security_group #: model:res.groups,name:crm_security_group.group_crm_manager msgid "Administrator" -msgstr "" +msgstr "Administrador" #. module: crm_security_group #: model:ir.module.category,name:crm_security_group.module_category_crm_crm msgid "CRM" -msgstr "" +msgstr "CRM" #. module: crm_security_group #: model:res.groups,name:crm_security_group.group_crm_all_leads msgid "User: All Documents" -msgstr "" +msgstr "Usuario: Todos los documentos" #. module: crm_security_group #: model:res.groups,name:crm_security_group.group_crm_own_leads msgid "User: Own Documents Only" -msgstr "" +msgstr "Usuario: Mostrar solo documentos propios" From 74a2d34f9d3dc1e9cb1e1c1f71b863676b11d9a3 Mon Sep 17 00:00:00 2001 From: mymage Date: Mon, 12 Jun 2023 14:58:51 +0000 Subject: [PATCH 13/18] Added translation using Weblate (Italian) --- crm_security_group/i18n/it.po | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 crm_security_group/i18n/it.po diff --git a/crm_security_group/i18n/it.po b/crm_security_group/i18n/it.po new file mode 100644 index 00000000000..cb4d11c4e93 --- /dev/null +++ b/crm_security_group/i18n/it.po @@ -0,0 +1,35 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * crm_security_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: crm_security_group +#: model:res.groups,name:crm_security_group.group_crm_manager +msgid "Administrator" +msgstr "" + +#. module: crm_security_group +#: model:ir.module.category,name:crm_security_group.module_category_crm_crm +msgid "CRM" +msgstr "" + +#. module: crm_security_group +#: model:res.groups,name:crm_security_group.group_crm_all_leads +msgid "User: All Documents" +msgstr "" + +#. module: crm_security_group +#: model:res.groups,name:crm_security_group.group_crm_own_leads +msgid "User: Own Documents Only" +msgstr "" From 133524d15061e1dbfc8d82cb190da5a5c64fb081 Mon Sep 17 00:00:00 2001 From: mymage Date: Tue, 13 Jun 2023 13:46:18 +0000 Subject: [PATCH 14/18] Translated using Weblate (Italian) Currently translated at 100.0% (4 of 4 strings) Translation: crm-14.0/crm-14.0-crm_security_group Translate-URL: https://translation.odoo-community.org/projects/crm-14-0/crm-14-0-crm_security_group/it/ --- crm_security_group/i18n/it.po | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/crm_security_group/i18n/it.po b/crm_security_group/i18n/it.po index cb4d11c4e93..661bbdddecb 100644 --- a/crm_security_group/i18n/it.po +++ b/crm_security_group/i18n/it.po @@ -6,30 +6,32 @@ 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-13 16: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.17\n" #. module: crm_security_group #: model:res.groups,name:crm_security_group.group_crm_manager msgid "Administrator" -msgstr "" +msgstr "Amministratore" #. module: crm_security_group #: model:ir.module.category,name:crm_security_group.module_category_crm_crm msgid "CRM" -msgstr "" +msgstr "CRM" #. module: crm_security_group #: model:res.groups,name:crm_security_group.group_crm_all_leads msgid "User: All Documents" -msgstr "" +msgstr "Utente: tutti i documenti" #. module: crm_security_group #: model:res.groups,name:crm_security_group.group_crm_own_leads msgid "User: Own Documents Only" -msgstr "" +msgstr "Utente: solo i propri documenti" From be843aec6e769b554650a5bdca6ca85f679fa344 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Sun, 3 Sep 2023 12:18:53 +0000 Subject: [PATCH 15/18] [UPD] README.rst --- crm_security_group/README.rst | 15 ++++--- .../static/description/index.html | 40 ++++++++++--------- 2 files changed, 30 insertions(+), 25 deletions(-) diff --git a/crm_security_group/README.rst b/crm_security_group/README.rst index 655191bc551..84c07e7a82e 100644 --- a/crm_security_group/README.rst +++ b/crm_security_group/README.rst @@ -2,10 +2,13 @@ CRM Only Security Groups ======================== -.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:340ce96f2ac6036e579f10556dbafb3172e1fefd14561b6af3470fc796726894 + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png :target: https://odoo-community.org/page/development-status @@ -19,11 +22,11 @@ CRM Only Security Groups .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png :target: https://translation.odoo-community.org/projects/crm-14-0/crm-14-0-crm_security_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/111/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/crm&target_branch=14.0 + :alt: Try me on Runboat -|badge1| |badge2| |badge3| |badge4| |badge5| +|badge1| |badge2| |badge3| |badge4| |badge5| This module adds new security options to CRM by creating 3 groups (Own Documents Only, All Documents and Administrator) to separate Sales and CRM apps permissions @@ -42,7 +45,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/crm_security_group/static/description/index.html b/crm_security_group/static/description/index.html index 7260362d5fe..892ea92aa8e 100644 --- a/crm_security_group/static/description/index.html +++ b/crm_security_group/static/description/index.html @@ -1,20 +1,20 @@ - + - + CRM Only Security Groups