From 0864b227b2cc9c9ae7013d7cdc31cb65235fc555 Mon Sep 17 00:00:00 2001
From: Andrea
Date: Tue, 27 Dec 2016 10:31:18 +0100
Subject: [PATCH 01/26] 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 000000000000..3eee5cecba1e
--- /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 000000000000..9b9ad0f122dd
--- /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 000000000000..32e48d5c6a1b
--- /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 000000000000..b06e8e83a295
--- /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 000000000000..2f5740e5a539
--- /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 000000000000..e9fe7f05ad9f
--- /dev/null
+++ b/web_disable_export_group/templates/assets.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
From 7c5b51641bf65025a0a49cd91e3469077e2f8df6 Mon Sep 17 00:00:00 2001
From: David
Date: Mon, 16 Jul 2018 12:07:52 +0200
Subject: [PATCH 02/26] [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 3eee5cecba1e..374c44c239d1 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
-------------
+~~~~~~~~~~~~
+
+* `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.
-* Dennis Sluijk
-* Andrea Stirpe
+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 9b9ad0f122dd..0650744f6bc6 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 32e48d5c6a1b..1a9f0c36ae02 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 000000000000..d588f0655d93
--- /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 000000000000..9a5eb71871d4
--- /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 000000000000..1ce239b403e5
--- /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 000000000000..df6b1e4b7352
--- /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 000000000000..69dbb60098ae
--- /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 000000000000..ecc454e24b71
--- /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 000000000000..9e1706a1b0a6
--- /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 b06e8e83a295..b5e0d65280a5 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 000000000000..574d7458206d
--- /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 2f5740e5a539..6c26f9e644ce 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 e9fe7f05ad9f..90d171c0de36 100644
--- a/web_disable_export_group/templates/assets.xml
+++ b/web_disable_export_group/templates/assets.xml
@@ -1,6 +1,7 @@
+
-
From 360b4bd1fe375f68c350155ea9bbf1078c50389a Mon Sep 17 00:00:00 2001
From: tarteo
Date: Tue, 2 Oct 2018 16:01:56 +0200
Subject: [PATCH 03/26] [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 374c44c239d1..dbafd0dab01d 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 1a9f0c36ae02..c26d7021d64c 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 d588f0655d93..8fb6a85ed4b0 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 b5e0d65280a5..029d8e693212 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 574d7458206d..15a9f1743be9 100644
--- a/web_disable_export_group/static/description/index.html
+++ b/web_disable_export_group/static/description/index.html
@@ -367,7 +367,7 @@ Web Disable Export Group
!! 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 @@
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 @@
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 e17959f9104e1faaef1b7265d93295278805de87 Mon Sep 17 00:00:00 2001
From: tarteo
Date: Tue, 6 Nov 2018 12:06:15 +0100
Subject: [PATCH 04/26] [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 000000000000..dc30298a9b6f
--- /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 000000000000..3315b63eb6f0
--- /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 21f1ef04725b3d984db1e82d7108187a8c6c3c1a 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/26] [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 15a9f1743be9..cca285d6e7ab 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