From 9023bca63414b6d24c53a2fc383eba3363fd2f07 Mon Sep 17 00:00:00 2001
From: Andrea
Date: Tue, 27 Dec 2016 10:31:18 +0100
Subject: [PATCH 01/25] Add module web_disable_export_group
---
web_disable_export_group/README.rst | 35 ++++++++++++++++
web_disable_export_group/__init__.py | 3 ++
web_disable_export_group/__manifest__.py | 18 ++++++++
web_disable_export_group/security/groups.xml | 8 ++++
.../static/src/js/disable_export_group.js | 41 +++++++++++++++++++
web_disable_export_group/templates/assets.xml | 10 +++++
6 files changed, 115 insertions(+)
create mode 100644 web_disable_export_group/README.rst
create mode 100644 web_disable_export_group/__init__.py
create mode 100644 web_disable_export_group/__manifest__.py
create mode 100644 web_disable_export_group/security/groups.xml
create mode 100644 web_disable_export_group/static/src/js/disable_export_group.js
create mode 100644 web_disable_export_group/templates/assets.xml
diff --git a/web_disable_export_group/README.rst b/web_disable_export_group/README.rst
new file mode 100644
index 000000000..3eee5cecb
--- /dev/null
+++ b/web_disable_export_group/README.rst
@@ -0,0 +1,35 @@
+.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
+ :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
+ :alt: License: AGPL-3
+
+========================
+Web Disable Export Group
+========================
+
+In the standard Odoo the UI option 'Export' that is present in the 'Action' menu
+of any list view is always enabled (for every user).
+
+This module makes the option 'Export' enabled only for the users that belong
+to the Export Data group.
+
+Admin user can always use the export option.
+
+
+Usage
+=====
+
+Enable the group "Export Data group" to the users who are allowed to
+make use of the option 'Export'.
+
+
+Credits
+=======
+
+Original code from module web_disable_export by Noviat,
+reviewed and modified by Onestein.
+
+Contributors
+------------
+
+* Dennis Sluijk
+* Andrea Stirpe
diff --git a/web_disable_export_group/__init__.py b/web_disable_export_group/__init__.py
new file mode 100644
index 000000000..9b9ad0f12
--- /dev/null
+++ b/web_disable_export_group/__init__.py
@@ -0,0 +1,3 @@
+# -*- coding: utf-8 -*-
+# Copyright 2016 Onestein ()
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
diff --git a/web_disable_export_group/__manifest__.py b/web_disable_export_group/__manifest__.py
new file mode 100644
index 000000000..32e48d5c6
--- /dev/null
+++ b/web_disable_export_group/__manifest__.py
@@ -0,0 +1,18 @@
+# -*- coding: utf-8 -*-
+# Copyright 2016 Onestein ()
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
+
+{
+ 'name': 'Web Disable Export Group',
+ 'version': '10.0.1.0.0',
+ 'license': 'AGPL-3',
+ 'author': 'Onestein',
+ 'website': 'http://www.onestein.eu',
+ 'category': 'Web',
+ 'depends': ['web'],
+ 'data': [
+ 'security/groups.xml',
+ 'templates/assets.xml',
+ ],
+ 'installable': True,
+}
diff --git a/web_disable_export_group/security/groups.xml b/web_disable_export_group/security/groups.xml
new file mode 100644
index 000000000..b06e8e83a
--- /dev/null
+++ b/web_disable_export_group/security/groups.xml
@@ -0,0 +1,8 @@
+
+
+
+
+ Export Data
+
+
+
diff --git a/web_disable_export_group/static/src/js/disable_export_group.js b/web_disable_export_group/static/src/js/disable_export_group.js
new file mode 100644
index 000000000..2f5740e5a
--- /dev/null
+++ b/web_disable_export_group/static/src/js/disable_export_group.js
@@ -0,0 +1,41 @@
+odoo.define("web_disable_export_group", function(require) {
+"use strict";
+
+ var core = require("web.core");
+ var Sidebar = require("web.Sidebar");
+ var _t = core._t;
+ var Model = require("web.Model");
+ var session = require("web.session");
+
+ Sidebar.include({
+ add_items: function(section_code, items) {
+ var self = this;
+ var _super = this._super;
+ if (session.is_superuser) {
+ _super.apply(this, arguments);
+ } else {
+ var model_res_users = new Model("res.users");
+ model_res_users.call("has_group", ["web_disable_export_group.group_export_data"]).done(function(can_export) {
+ if (!can_export) {
+ var export_label = _t("Export");
+ var new_items = items;
+ if (section_code === "other") {
+ new_items = [];
+ for (var i = 0; i < items.length; i++) {
+ console.log("items[i]: ", items[i]);
+ if (items[i]["label"] !== export_label) {
+ new_items.push(items[i]);
+ }
+ }
+ }
+ if (new_items.length > 0) {
+ _super.call(self, section_code, new_items);
+ }
+ } else {
+ _super.call(self, section_code, items);
+ }
+ });
+ }
+ }
+ });
+});
diff --git a/web_disable_export_group/templates/assets.xml b/web_disable_export_group/templates/assets.xml
new file mode 100644
index 000000000..e9fe7f05a
--- /dev/null
+++ b/web_disable_export_group/templates/assets.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
From e248584d341029cff737f5665dd56d0b45e71708 Mon Sep 17 00:00:00 2001
From: David
Date: Mon, 16 Jul 2018 12:07:52 +0200
Subject: [PATCH 02/25] [MIG] web_disable_group_export: Migration to 11.0
---
web_disable_export_group/README.rst | 85 +++-
web_disable_export_group/__init__.py | 4 +-
web_disable_export_group/__manifest__.py | 15 +-
.../i18n/web_disable_export_group.pot | 32 ++
web_disable_export_group/models/__init__.py | 1 +
web_disable_export_group/models/ir_http.py | 18 +
web_disable_export_group/readme/CONFIGURE.rst | 2 +
.../readme/CONTRIBUTORS.rst | 8 +
.../readme/DESCRIPTION.rst | 7 +
web_disable_export_group/readme/USAGE.rst | 1 +
web_disable_export_group/security/groups.xml | 2 +
.../static/description/index.html | 443 ++++++++++++++++++
.../static/src/js/disable_export_group.js | 40 +-
web_disable_export_group/templates/assets.xml | 3 +-
14 files changed, 610 insertions(+), 51 deletions(-)
create mode 100644 web_disable_export_group/i18n/web_disable_export_group.pot
create mode 100644 web_disable_export_group/models/__init__.py
create mode 100644 web_disable_export_group/models/ir_http.py
create mode 100644 web_disable_export_group/readme/CONFIGURE.rst
create mode 100644 web_disable_export_group/readme/CONTRIBUTORS.rst
create mode 100644 web_disable_export_group/readme/DESCRIPTION.rst
create mode 100644 web_disable_export_group/readme/USAGE.rst
create mode 100644 web_disable_export_group/static/description/index.html
diff --git a/web_disable_export_group/README.rst b/web_disable_export_group/README.rst
index 3eee5cecb..374c44c23 100644
--- a/web_disable_export_group/README.rst
+++ b/web_disable_export_group/README.rst
@@ -1,11 +1,30 @@
-.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
- :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
- :alt: License: AGPL-3
-
========================
Web Disable Export 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%2Fweb-lightgray.png?logo=github
+ :target: https://github.com/OCA/web/tree/11.0/web_disable_export_group
+ :alt: OCA/web
+.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
+ :target: https://translation.odoo-community.org/projects/web-11-0/web-11-0-web_disable_export_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/162/11.0
+ :alt: Try me on Runbot
+
+|badge1| |badge2| |badge3| |badge4| |badge5|
+
In the standard Odoo the UI option 'Export' that is present in the 'Action' menu
of any list view is always enabled (for every user).
@@ -14,22 +33,66 @@ to the Export Data group.
Admin user can always use the export option.
+**Table of contents**
-Usage
-=====
+.. contents::
+ :local:
+
+Configuration
+=============
Enable the group "Export Data group" to the users who are allowed to
make use of the option 'Export'.
+Usage
+=====
+
+Every user without *Export Data* permission won't have the option available.
+
+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
=======
-Original code from module web_disable_export by Noviat,
-reviewed and modified by Onestein.
+Authors
+~~~~~~~
+
+* Onestein
+* Tecnativa
Contributors
-------------
+~~~~~~~~~~~~
-* Dennis Sluijk
-* Andrea Stirpe
+* `Onestein `_:
+
+ * Dennis Sluijk
+ * Andrea Stirpe
+
+* `Tecnativa `_:
+
+ * David Vidal
+
+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/web `_ project on GitHub.
+
+You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/web_disable_export_group/__init__.py b/web_disable_export_group/__init__.py
index 9b9ad0f12..0650744f6 100644
--- a/web_disable_export_group/__init__.py
+++ b/web_disable_export_group/__init__.py
@@ -1,3 +1 @@
-# -*- coding: utf-8 -*-
-# Copyright 2016 Onestein ()
-# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
+from . import models
diff --git a/web_disable_export_group/__manifest__.py b/web_disable_export_group/__manifest__.py
index 32e48d5c6..1a9f0c36a 100644
--- a/web_disable_export_group/__manifest__.py
+++ b/web_disable_export_group/__manifest__.py
@@ -1,15 +1,18 @@
-# -*- coding: utf-8 -*-
# Copyright 2016 Onestein ()
+# Copyright 2018 Tecnativa - David Vidal
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
-
{
'name': 'Web Disable Export Group',
- 'version': '10.0.1.0.0',
+ 'version': '11.0.1.0.0',
'license': 'AGPL-3',
- 'author': 'Onestein',
- 'website': 'http://www.onestein.eu',
+ 'author': 'Onestein, '
+ 'Tecnativa, '
+ 'Odoo Community Association (OCA)',
+ 'website': 'http://www.github.com/OCA/web',
'category': 'Web',
- 'depends': ['web'],
+ 'depends': [
+ 'web',
+ ],
'data': [
'security/groups.xml',
'templates/assets.xml',
diff --git a/web_disable_export_group/i18n/web_disable_export_group.pot b/web_disable_export_group/i18n/web_disable_export_group.pot
new file mode 100644
index 000000000..d588f0655
--- /dev/null
+++ b/web_disable_export_group/i18n/web_disable_export_group.pot
@@ -0,0 +1,32 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * web_disable_export_group
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 11.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: web_disable_export_group
+#. openerp-web
+#: code:addons/web_disable_export_group/static/src/js/disable_export_group.js:16
+#, python-format
+msgid "Export"
+msgstr ""
+
+#. module: web_disable_export_group
+#: model:res.groups,name:web_disable_export_group.group_export_data
+msgid "Export Data"
+msgstr ""
+
+#. module: web_disable_export_group
+#: model:ir.model,name:web_disable_export_group.model_ir_http
+msgid "HTTP routing"
+msgstr ""
+
diff --git a/web_disable_export_group/models/__init__.py b/web_disable_export_group/models/__init__.py
new file mode 100644
index 000000000..9a5eb7187
--- /dev/null
+++ b/web_disable_export_group/models/__init__.py
@@ -0,0 +1 @@
+from . import ir_http
diff --git a/web_disable_export_group/models/ir_http.py b/web_disable_export_group/models/ir_http.py
new file mode 100644
index 000000000..1ce239b40
--- /dev/null
+++ b/web_disable_export_group/models/ir_http.py
@@ -0,0 +1,18 @@
+# Copyright 2018 Tecnativa - David Vidal
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
+
+from odoo import models
+from odoo.http import request
+
+
+class Http(models.AbstractModel):
+ _inherit = 'ir.http'
+
+ def session_info(self):
+ res = super(Http, self).session_info()
+ user = request.env.user
+ res.update({
+ 'group_export_data': user and user.has_group(
+ 'web_disable_export_group.group_export_data'),
+ })
+ return res
diff --git a/web_disable_export_group/readme/CONFIGURE.rst b/web_disable_export_group/readme/CONFIGURE.rst
new file mode 100644
index 000000000..df6b1e4b7
--- /dev/null
+++ b/web_disable_export_group/readme/CONFIGURE.rst
@@ -0,0 +1,2 @@
+Enable the group "Export Data group" to the users who are allowed to
+make use of the option 'Export'.
diff --git a/web_disable_export_group/readme/CONTRIBUTORS.rst b/web_disable_export_group/readme/CONTRIBUTORS.rst
new file mode 100644
index 000000000..69dbb6009
--- /dev/null
+++ b/web_disable_export_group/readme/CONTRIBUTORS.rst
@@ -0,0 +1,8 @@
+* `Onestein `_:
+
+ * Dennis Sluijk
+ * Andrea Stirpe
+
+* `Tecnativa `_:
+
+ * David Vidal
diff --git a/web_disable_export_group/readme/DESCRIPTION.rst b/web_disable_export_group/readme/DESCRIPTION.rst
new file mode 100644
index 000000000..ecc454e24
--- /dev/null
+++ b/web_disable_export_group/readme/DESCRIPTION.rst
@@ -0,0 +1,7 @@
+In the standard Odoo the UI option 'Export' that is present in the 'Action' menu
+of any list view is always enabled (for every user).
+
+This module makes the option 'Export' enabled only for the users that belong
+to the Export Data group.
+
+Admin user can always use the export option.
diff --git a/web_disable_export_group/readme/USAGE.rst b/web_disable_export_group/readme/USAGE.rst
new file mode 100644
index 000000000..9e1706a1b
--- /dev/null
+++ b/web_disable_export_group/readme/USAGE.rst
@@ -0,0 +1 @@
+Every user without *Export Data* permission won't have the option available.
diff --git a/web_disable_export_group/security/groups.xml b/web_disable_export_group/security/groups.xml
index b06e8e83a..b5e0d6528 100644
--- a/web_disable_export_group/security/groups.xml
+++ b/web_disable_export_group/security/groups.xml
@@ -1,4 +1,6 @@
+
diff --git a/web_disable_export_group/static/description/index.html b/web_disable_export_group/static/description/index.html
new file mode 100644
index 000000000..574d74582
--- /dev/null
+++ b/web_disable_export_group/static/description/index.html
@@ -0,0 +1,443 @@
+
+
+
+
+
+
+Web Disable Export Group
+
+
+
+
+
Web Disable Export Group
+
+
+

+
In the standard Odoo the UI option ‘Export’ that is present in the ‘Action’ menu
+of any list view is always enabled (for every user).
+
This module makes the option ‘Export’ enabled only for the users that belong
+to the Export Data group.
+
Admin user can always use the export option.
+
Table of contents
+
+
+
+
Enable the group “Export Data group” to the users who are allowed to
+make use of the option ‘Export’.
+
+
+
+
Every user without Export Data permission won’t have the option available.
+
+
+
+
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.
+
+
+
+
+
+
+
+
This module is maintained by the OCA.
+

+
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/web project on GitHub.
+
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
+
+
+
+
+
diff --git a/web_disable_export_group/static/src/js/disable_export_group.js b/web_disable_export_group/static/src/js/disable_export_group.js
index 2f5740e5a..6c26f9e64 100644
--- a/web_disable_export_group/static/src/js/disable_export_group.js
+++ b/web_disable_export_group/static/src/js/disable_export_group.js
@@ -1,41 +1,21 @@
+/* Copyright 2016 Onestein
+ Copyright 2018 Tecnativa - David Vidal
+ License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl). */
odoo.define("web_disable_export_group", function(require) {
"use strict";
var core = require("web.core");
var Sidebar = require("web.Sidebar");
- var _t = core._t;
- var Model = require("web.Model");
var session = require("web.session");
+ var _t = core._t;
Sidebar.include({
- add_items: function(section_code, items) {
- var self = this;
- var _super = this._super;
- if (session.is_superuser) {
- _super.apply(this, arguments);
- } else {
- var model_res_users = new Model("res.users");
- model_res_users.call("has_group", ["web_disable_export_group.group_export_data"]).done(function(can_export) {
- if (!can_export) {
- var export_label = _t("Export");
- var new_items = items;
- if (section_code === "other") {
- new_items = [];
- for (var i = 0; i < items.length; i++) {
- console.log("items[i]: ", items[i]);
- if (items[i]["label"] !== export_label) {
- new_items.push(items[i]);
- }
- }
- }
- if (new_items.length > 0) {
- _super.call(self, section_code, new_items);
- }
- } else {
- _super.call(self, section_code, items);
- }
- });
+ _addItems: function (sectionCode, items) {
+ var _items = items;
+ if (!session.is_superuser && sectionCode === 'other' && items.length && !session.group_export_data) {
+ _items = _.reject(_items, {label:_t("Export")});
}
- }
+ this._super(sectionCode, _items);
+ },
});
});
diff --git a/web_disable_export_group/templates/assets.xml b/web_disable_export_group/templates/assets.xml
index e9fe7f05a..90d171c0d 100644
--- a/web_disable_export_group/templates/assets.xml
+++ b/web_disable_export_group/templates/assets.xml
@@ -1,6 +1,7 @@
+
-
From d6f2d2a0547fc5d6cc153237d37c90534176c9fd Mon Sep 17 00:00:00 2001
From: tarteo
Date: Tue, 2 Oct 2018 16:01:56 +0200
Subject: [PATCH 03/25] [MIG] web_disable_export_group: Migration to 12.0
[IMP] Automatically add root and admin to group
[FIX] Website in manifest
---
web_disable_export_group/README.rst | 10 +++++-----
web_disable_export_group/__manifest__.py | 4 ++--
.../i18n/web_disable_export_group.pot | 4 ++--
web_disable_export_group/security/groups.xml | 1 +
web_disable_export_group/static/description/index.html | 6 +++---
5 files changed, 13 insertions(+), 12 deletions(-)
diff --git a/web_disable_export_group/README.rst b/web_disable_export_group/README.rst
index 374c44c23..dbafd0dab 100644
--- a/web_disable_export_group/README.rst
+++ b/web_disable_export_group/README.rst
@@ -14,13 +14,13 @@ Web Disable Export Group
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github
- :target: https://github.com/OCA/web/tree/11.0/web_disable_export_group
+ :target: https://github.com/OCA/web/tree/12.0/web_disable_export_group
:alt: OCA/web
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/web-11-0/web-11-0-web_disable_export_group
+ :target: https://translation.odoo-community.org/projects/web-12-0/web-12-0-web_disable_export_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/162/11.0
+ :target: https://runbot.odoo-community.org/runbot/162/12.0
:alt: Try me on Runbot
|badge1| |badge2| |badge3| |badge4| |badge5|
@@ -55,7 +55,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.
@@ -93,6 +93,6 @@ 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/web `_ project on GitHub.
+This module is part of the `OCA/web `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/web_disable_export_group/__manifest__.py b/web_disable_export_group/__manifest__.py
index 1a9f0c36a..c26d7021d 100644
--- a/web_disable_export_group/__manifest__.py
+++ b/web_disable_export_group/__manifest__.py
@@ -3,12 +3,12 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
{
'name': 'Web Disable Export Group',
- 'version': '11.0.1.0.0',
+ 'version': '12.0.1.0.0',
'license': 'AGPL-3',
'author': 'Onestein, '
'Tecnativa, '
'Odoo Community Association (OCA)',
- 'website': 'http://www.github.com/OCA/web',
+ 'website': 'https://github.com/OCA/web',
'category': 'Web',
'depends': [
'web',
diff --git a/web_disable_export_group/i18n/web_disable_export_group.pot b/web_disable_export_group/i18n/web_disable_export_group.pot
index d588f0655..8fb6a85ed 100644
--- a/web_disable_export_group/i18n/web_disable_export_group.pot
+++ b/web_disable_export_group/i18n/web_disable_export_group.pot
@@ -4,7 +4,7 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Odoo Server 11.0\n"
+"Project-Id-Version: Odoo Server 12.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: <>\n"
"Language-Team: \n"
@@ -27,6 +27,6 @@ msgstr ""
#. module: web_disable_export_group
#: model:ir.model,name:web_disable_export_group.model_ir_http
-msgid "HTTP routing"
+msgid "HTTP Routing"
msgstr ""
diff --git a/web_disable_export_group/security/groups.xml b/web_disable_export_group/security/groups.xml
index b5e0d6528..029d8e693 100644
--- a/web_disable_export_group/security/groups.xml
+++ b/web_disable_export_group/security/groups.xml
@@ -5,6 +5,7 @@
Export Data
+
diff --git a/web_disable_export_group/static/description/index.html b/web_disable_export_group/static/description/index.html
index 574d74582..15a9f1743 100644
--- a/web_disable_export_group/static/description/index.html
+++ b/web_disable_export_group/static/description/index.html
@@ -367,7 +367,7 @@ ul.auto-toc {
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-

+

In the standard Odoo the UI option ‘Export’ that is present in the ‘Action’ menu
of any list view is always enabled (for every user).
This module makes the option ‘Export’ enabled only for the users that belong
@@ -401,7 +401,7 @@ make use of the option ‘Export’.
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.
@@ -434,7 +434,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
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/web project on GitHub.
+
This module is part of the OCA/web project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
From f3058d501fb6a990427596cec493514ac4ea26b7 Mon Sep 17 00:00:00 2001
From: tarteo
Date: Tue, 6 Nov 2018 12:06:15 +0100
Subject: [PATCH 04/25] [IMP] web_disable_export_group: Tests
---
web_disable_export_group/tests/__init__.py | 1 +
.../tests/test_disable_export_group.py | 33 +++++++++++++++++++
2 files changed, 34 insertions(+)
create mode 100644 web_disable_export_group/tests/__init__.py
create mode 100644 web_disable_export_group/tests/test_disable_export_group.py
diff --git a/web_disable_export_group/tests/__init__.py b/web_disable_export_group/tests/__init__.py
new file mode 100644
index 000000000..dc30298a9
--- /dev/null
+++ b/web_disable_export_group/tests/__init__.py
@@ -0,0 +1 @@
+from . import test_disable_export_group
diff --git a/web_disable_export_group/tests/test_disable_export_group.py b/web_disable_export_group/tests/test_disable_export_group.py
new file mode 100644
index 000000000..3315b63eb
--- /dev/null
+++ b/web_disable_export_group/tests/test_disable_export_group.py
@@ -0,0 +1,33 @@
+# Copyright 2018 Onestein
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
+
+from mock import patch
+from odoo.api import Environment
+from odoo.tests.common import SavepointCase
+
+
+class TestDisableExportGroup(SavepointCase):
+ @patch('odoo.addons.web_disable_export_group.models.ir_http.request')
+ @patch('odoo.addons.web.models.ir_http.request')
+ @patch('odoo.addons.web_tour.models.ir_http.request')
+ def test_session_info(self, request, request1, request2):
+ request.env = self.env
+ request1.env = self.env
+ request2.env = self.env
+ session_info = self.env['ir.http'].session_info()
+ self.assertTrue(session_info['group_export_data'])
+
+ @patch('odoo.addons.web_disable_export_group.models.ir_http.request')
+ @patch('odoo.addons.web.models.ir_http.request')
+ @patch('odoo.addons.web_tour.models.ir_http.request')
+ def test_session_info_not_allowed(self, request, request1, request2):
+ demo_env = Environment(
+ self.env.cr,
+ self.env.ref('base.default_user').id,
+ {}
+ )
+ request.env = demo_env
+ request1.env = demo_env
+ request2.env = demo_env
+ session_info = demo_env['ir.http'].session_info()
+ self.assertFalse(session_info['group_export_data'])
From 48d1ad5bc3234130e794d4dba119cbace48ce31a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Alexandre=20D=C3=ADaz?=
Date: Mon, 25 Feb 2019 17:45:58 +0100
Subject: [PATCH 05/25] [FIX] Tests
---
.../static/description/icon.png | Bin 0 -> 9455 bytes
.../static/description/index.html | 2 +-
.../tests/test_disable_export_group.py | 10 ++++++++--
3 files changed, 9 insertions(+), 3 deletions(-)
create mode 100644 web_disable_export_group/static/description/icon.png
diff --git a/web_disable_export_group/static/description/icon.png b/web_disable_export_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/web_disable_export_group/static/description/index.html b/web_disable_export_group/static/description/index.html
index 15a9f1743..cca285d6e 100644
--- a/web_disable_export_group/static/description/index.html
+++ b/web_disable_export_group/static/description/index.html
@@ -3,7 +3,7 @@
-
+
Web Disable Export Group