From f16b11836b401db29dd33c230c2bfaafbd31ecda Mon Sep 17 00:00:00 2001 From: Sylvain LE GAL Date: Tue, 23 Jul 2024 13:11:32 +0200 Subject: [PATCH] [ADD] New module mail_discuss_group to hide 'Discuss' Application by default --- mail_discuss_group/README.rst | 94 ++++ mail_discuss_group/__init__.py | 0 mail_discuss_group/__manifest__.py | 26 ++ mail_discuss_group/i18n/fr.po | 21 + mail_discuss_group/readme/CONTRIBUTORS.rst | 1 + mail_discuss_group/readme/DESCRIPTION.rst | 11 + mail_discuss_group/security/res_groups.xml | 13 + .../static/description/index.html | 435 ++++++++++++++++++ .../static/description/menu_list.png | Bin 0 -> 33971 bytes .../static/description/systray.png | Bin 0 -> 5604 bytes .../static/src/js/systray_service.esm.js | 25 + mail_discuss_group/views/menu.xml | 19 + .../odoo/addons/mail_discuss_group | 1 + setup/mail_discuss_group/setup.py | 6 + 14 files changed, 652 insertions(+) create mode 100644 mail_discuss_group/README.rst create mode 100644 mail_discuss_group/__init__.py create mode 100644 mail_discuss_group/__manifest__.py create mode 100644 mail_discuss_group/i18n/fr.po create mode 100644 mail_discuss_group/readme/CONTRIBUTORS.rst create mode 100644 mail_discuss_group/readme/DESCRIPTION.rst create mode 100644 mail_discuss_group/security/res_groups.xml create mode 100644 mail_discuss_group/static/description/index.html create mode 100644 mail_discuss_group/static/description/menu_list.png create mode 100644 mail_discuss_group/static/description/systray.png create mode 100644 mail_discuss_group/static/src/js/systray_service.esm.js create mode 100644 mail_discuss_group/views/menu.xml create mode 120000 setup/mail_discuss_group/odoo/addons/mail_discuss_group create mode 100644 setup/mail_discuss_group/setup.py diff --git a/mail_discuss_group/README.rst b/mail_discuss_group/README.rst new file mode 100644 index 0000000000..ea06eab899 --- /dev/null +++ b/mail_discuss_group/README.rst @@ -0,0 +1,94 @@ +============= +Discuss Group +============= + +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:fe2d7959aa71ca276bb4b9fb395d9588490642e013a064a6c332860fa24edfeb + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |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%2Fsocial-lightgray.png?logo=github + :target: https://github.com/OCA/social/tree/16.0/mail_discuss_group + :alt: OCA/social +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/social-16-0/social-16-0-mail_discuss_group + :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/social&target_branch=16.0 + :alt: Try me on Runboat + +|badge1| |badge2| |badge3| |badge4| |badge5| + +In odoo, by default, all user can see messages ("Discuss" menu entry). +This feature is not interesting in some instances. + +This module so creates a new group 'See Discuss Menu' to display this entry menu +and users are not member of this group by default. + +.. figure:: https://raw.githubusercontent.com/OCA/social/16.0/mail_discuss_group/static/description/menu_list.png + +Also in the systray, the message icon is removed: + +.. figure:: https://raw.githubusercontent.com/OCA/social/16.0/mail_discuss_group/static/description/systray.png + +**Table of contents** + +.. contents:: + :local: + +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 +~~~~~~~ + +* GRAP + +Contributors +~~~~~~~~~~~~ + +* Sylvain LE GAL (https://twitter.com/legalsylvain) + +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-legalsylvain| image:: https://github.com/legalsylvain.png?size=40px + :target: https://github.com/legalsylvain + :alt: legalsylvain + +Current `maintainer `__: + +|maintainer-legalsylvain| + +This module is part of the `OCA/social `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/mail_discuss_group/__init__.py b/mail_discuss_group/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/mail_discuss_group/__manifest__.py b/mail_discuss_group/__manifest__.py new file mode 100644 index 0000000000..62508e9663 --- /dev/null +++ b/mail_discuss_group/__manifest__.py @@ -0,0 +1,26 @@ +# Copyright 2015 Anubía, soluciones en la nube,SL (http://www.anubia.es) +# Copyright 2017 Onestein (http://www.onestein.eu) +# Copyright (C) 2019-Today: Druidoo () +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +{ + "name": "Discuss Group", + "summary": "Add a group to display 'Discuss' Application menu entry", + "version": "16.0.1.0.0", + "category": "Usability", + "license": "AGPL-3", + "author": "GRAP, Odoo Community Association (OCA)", + "maintainers": ["legalsylvain"], + "website": "https://github.com/OCA/social", + "depends": ["mail"], + "data": [ + "security/res_groups.xml", + "views/menu.xml", + ], + "assets": { + "web.assets_backend": [ + "mail_discuss_group/static/src/js/*.js", + ], + }, + "installable": True, +} diff --git a/mail_discuss_group/i18n/fr.po b/mail_discuss_group/i18n/fr.po new file mode 100644 index 0000000000..276e4183e2 --- /dev/null +++ b/mail_discuss_group/i18n/fr.po @@ -0,0 +1,21 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mail_discuss_group +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-07-23 11:24+0000\n" +"PO-Revision-Date: 2024-07-23 11:24+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: mail_discuss_group +#: model:res.groups,name:mail_discuss_group.group_discuss +msgid "See Discuss Menu" +msgstr "Voir le menu Discussion" diff --git a/mail_discuss_group/readme/CONTRIBUTORS.rst b/mail_discuss_group/readme/CONTRIBUTORS.rst new file mode 100644 index 0000000000..ae6f43a86d --- /dev/null +++ b/mail_discuss_group/readme/CONTRIBUTORS.rst @@ -0,0 +1 @@ +* Sylvain LE GAL (https://twitter.com/legalsylvain) diff --git a/mail_discuss_group/readme/DESCRIPTION.rst b/mail_discuss_group/readme/DESCRIPTION.rst new file mode 100644 index 0000000000..16372336d9 --- /dev/null +++ b/mail_discuss_group/readme/DESCRIPTION.rst @@ -0,0 +1,11 @@ +In odoo, by default, all user can see messages ("Discuss" menu entry). +This feature is not interesting in some instances. + +This module so creates a new group 'See Discuss Menu' to display this entry menu +and users are not member of this group by default. + +.. figure:: static/description/menu_list.png + +Also in the systray, the message icon is removed: + +.. figure:: static/description/systray.png diff --git a/mail_discuss_group/security/res_groups.xml b/mail_discuss_group/security/res_groups.xml new file mode 100644 index 0000000000..6ee2476ffd --- /dev/null +++ b/mail_discuss_group/security/res_groups.xml @@ -0,0 +1,13 @@ + + + + + + See Discuss Menu + + + diff --git a/mail_discuss_group/static/description/index.html b/mail_discuss_group/static/description/index.html new file mode 100644 index 0000000000..2f6dc00cb8 --- /dev/null +++ b/mail_discuss_group/static/description/index.html @@ -0,0 +1,435 @@ + + + + + +Discuss Group + + + +
+

Discuss Group

+ + +

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

+

In odoo, by default, all user can see messages (“Discuss” menu entry). +This feature is not interesting in some instances.

+

This module so creates a new group ‘See Discuss Menu’ to display this entry menu +and users are not member of this group by default.

+
+https://raw.githubusercontent.com/OCA/social/16.0/mail_discuss_group/static/description/menu_list.png +
+

Also in the systray, the message icon is removed:

+
+https://raw.githubusercontent.com/OCA/social/16.0/mail_discuss_group/static/description/systray.png +
+

Table of contents

+ +
+

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

+
    +
  • GRAP
  • +
+
+ +
+

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:

+

legalsylvain

+

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

+

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

+
+
+
+ + diff --git a/mail_discuss_group/static/description/menu_list.png b/mail_discuss_group/static/description/menu_list.png new file mode 100644 index 0000000000000000000000000000000000000000..cecab41624714bef03c9d4f8fbf3ccf0825890ca GIT binary patch literal 33971 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⩔Xrq}v_G8!9 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 literal 0 HcmV?d00001 diff --git a/mail_discuss_group/static/description/systray.png b/mail_discuss_group/static/description/systray.png new file mode 100644 index 0000000000000000000000000000000000000000..908ccef59649f39a44c6618e557dd52ea42da329 GIT binary patch literal 5604 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 literal 0 HcmV?d00001 diff --git a/mail_discuss_group/static/src/js/systray_service.esm.js b/mail_discuss_group/static/src/js/systray_service.esm.js new file mode 100644 index 0000000000..a02c61a489 --- /dev/null +++ b/mail_discuss_group/static/src/js/systray_service.esm.js @@ -0,0 +1,25 @@ +/** @odoo-module **/ + +import {MessagingMenuContainer} from "@mail/components/messaging_menu_container/messaging_menu_container"; +import {registry} from "@web/core/registry"; +import session from "web.session"; + +const systrayRegistry = registry.category("systray"); + +export const systrayService = { + dependencies: ["messaging"], + start() { + session + .user_has_group("mail_discuss_group.group_discuss") + .then(function (has_group) { + if (!has_group) { + systrayRegistry.remove("mail.MessagingMenuContainer", { + Component: MessagingMenuContainer, + }); + } + }); + }, +}; + +const serviceRegistry = registry.category("services"); +serviceRegistry.add("mail_discuss_group_systray_service", systrayService); diff --git a/mail_discuss_group/views/menu.xml b/mail_discuss_group/views/menu.xml new file mode 100644 index 0000000000..a77b817acf --- /dev/null +++ b/mail_discuss_group/views/menu.xml @@ -0,0 +1,19 @@ + + + + + + + + + diff --git a/setup/mail_discuss_group/odoo/addons/mail_discuss_group b/setup/mail_discuss_group/odoo/addons/mail_discuss_group new file mode 120000 index 0000000000..e1a0672d81 --- /dev/null +++ b/setup/mail_discuss_group/odoo/addons/mail_discuss_group @@ -0,0 +1 @@ +../../../../mail_discuss_group \ No newline at end of file diff --git a/setup/mail_discuss_group/setup.py b/setup/mail_discuss_group/setup.py new file mode 100644 index 0000000000..28c57bb640 --- /dev/null +++ b/setup/mail_discuss_group/setup.py @@ -0,0 +1,6 @@ +import setuptools + +setuptools.setup( + setup_requires=['setuptools-odoo'], + odoo_addon=True, +)