From 4a0df4dea5d53e26371e079dfd0f0e7bab099162 Mon Sep 17 00:00:00 2001 From: Holger Brunn Date: Thu, 4 Jul 2013 22:01:18 +0200 Subject: [PATCH 01/18] [ADD] dbfilter_from_header Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/__init__.py | 31 +++++++++++ dbfilter_from_header/__openerp__.py | 52 +++++++++++++++++++ .../i18n/dbfilter_from_header.pot | 16 ++++++ 3 files changed, 99 insertions(+) create mode 100644 dbfilter_from_header/__init__.py create mode 100644 dbfilter_from_header/__openerp__.py create mode 100644 dbfilter_from_header/i18n/dbfilter_from_header.pot diff --git a/dbfilter_from_header/__init__.py b/dbfilter_from_header/__init__.py new file mode 100644 index 000000000..00ccc56d5 --- /dev/null +++ b/dbfilter_from_header/__init__.py @@ -0,0 +1,31 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# This module copyright (C) 2013 Therp BV (). +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################## +import re +from openerp.addons.web.controllers import main as web_main + +db_list_org = web_main.db_list + +def db_list(req, force=False): + db_filter = req.httprequest.environ.get('HTTP_X_OPENERP_DBFILTER', '.*') + dbs = db_list_org(req, force=force) + return [db for db in dbs if re.match(db_filter, db)] + +web_main.db_list = db_list diff --git a/dbfilter_from_header/__openerp__.py b/dbfilter_from_header/__openerp__.py new file mode 100644 index 000000000..7baf1f9e7 --- /dev/null +++ b/dbfilter_from_header/__openerp__.py @@ -0,0 +1,52 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# This module copyright (C) 2013 Therp BV (). +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################## +{ + "name" : "dbfilter_from_header", + "version" : "1.0", + "author" : "Therp BV", + "complexity": "normal", + "description": """ + This addon lets you pass a dbfilter as a HTTP header. + + This is interesting for setups where database names can't be mapped to + proxied host names. + + In nginx, use + proxy_set_header X-OpenERP-dbfilter [your filter]; + + The addon has to be loaded as server-wide module. + """, + "category" : "Tools", + "depends" : [ + 'web', + ], + "data" : [ + ], + "js": [ + ], + "css": [ + ], + "auto_install": False, + "installable": True, + "external_dependencies" : { + 'python' : [], + }, +} diff --git a/dbfilter_from_header/i18n/dbfilter_from_header.pot b/dbfilter_from_header/i18n/dbfilter_from_header.pot new file mode 100644 index 000000000..3c201b4a8 --- /dev/null +++ b/dbfilter_from_header/i18n/dbfilter_from_header.pot @@ -0,0 +1,16 @@ +# Translation of OpenERP Server. +# This file contains the translation of the following modules: +# +msgid "" +msgstr "" +"Project-Id-Version: OpenERP Server 7.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-03-14 17:40+0000\n" +"PO-Revision-Date: 2014-03-14 17:40+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" + From a5d13cbba977d60339f6e07c06edd9177aaaffb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Bidoul?= Date: Sat, 12 Jul 2014 12:02:52 +0200 Subject: [PATCH 02/18] [MIG] dbfilter_from_header: Migration to 8.0 Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/__init__.py | 21 ++++++++++++------ dbfilter_from_header/__openerp__.py | 19 ++++++++-------- .../static/description/icon.png | Bin 0 -> 9455 bytes 3 files changed, 24 insertions(+), 16 deletions(-) create mode 100644 dbfilter_from_header/static/description/icon.png diff --git a/dbfilter_from_header/__init__.py b/dbfilter_from_header/__init__.py index 00ccc56d5..5f8b01ec0 100644 --- a/dbfilter_from_header/__init__.py +++ b/dbfilter_from_header/__init__.py @@ -3,6 +3,7 @@ # # OpenERP, Open Source Management Solution # This module copyright (C) 2013 Therp BV (). +# This module copyright (C) 2014 ACSONE SA/NV (). # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as @@ -19,13 +20,19 @@ # ############################################################################## import re -from openerp.addons.web.controllers import main as web_main +from openerp import http -db_list_org = web_main.db_list +db_filter_org = http.db_filter -def db_list(req, force=False): - db_filter = req.httprequest.environ.get('HTTP_X_OPENERP_DBFILTER', '.*') - dbs = db_list_org(req, force=force) - return [db for db in dbs if re.match(db_filter, db)] -web_main.db_list = db_list +def db_filter(dbs, httprequest=None): + dbs = db_filter_org(dbs, httprequest) + httprequest = httprequest or http.request.httprequest + db_filter_hdr = \ + httprequest.environ.get('HTTP_X_ODOO_DBFILTER') or \ + httprequest.environ.get('HTTP_X_OPENERP_DBFILTER') + if db_filter_hdr: + dbs = [db for db in dbs if re.match(db_filter_hdr, db)] + return dbs + +http.db_filter = db_filter diff --git a/dbfilter_from_header/__openerp__.py b/dbfilter_from_header/__openerp__.py index 7baf1f9e7..8a750cacd 100644 --- a/dbfilter_from_header/__openerp__.py +++ b/dbfilter_from_header/__openerp__.py @@ -19,14 +19,15 @@ # ############################################################################## { - "name" : "dbfilter_from_header", - "version" : "1.0", - "author" : "Therp BV", + "name": "dbfilter_from_header", + "version": "8.0.1.0.0", + "author": "Therp BV,Odoo Community Association (OCA)", + "license": "AGPL-3", "complexity": "normal", "description": """ This addon lets you pass a dbfilter as a HTTP header. - This is interesting for setups where database names can't be mapped to + This is interesting for setups where database names can't be mapped to proxied host names. In nginx, use @@ -34,11 +35,11 @@ The addon has to be loaded as server-wide module. """, - "category" : "Tools", - "depends" : [ + "category": "Tools", + "depends": [ 'web', ], - "data" : [ + "data": [ ], "js": [ ], @@ -46,7 +47,7 @@ ], "auto_install": False, "installable": True, - "external_dependencies" : { - 'python' : [], + "external_dependencies": { + 'python': [], }, } diff --git a/dbfilter_from_header/static/description/icon.png b/dbfilter_from_header/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 From 77a7bfda1d554f4dabed84e052d165f97d804cee Mon Sep 17 00:00:00 2001 From: Fabio Vilchez Date: Mon, 7 Mar 2016 16:54:46 -0600 Subject: [PATCH 03/18] [ADD] - dbfilter_from_header: Added module to version 9.0. Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/__openerp__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dbfilter_from_header/__openerp__.py b/dbfilter_from_header/__openerp__.py index 8a750cacd..f7308f54b 100644 --- a/dbfilter_from_header/__openerp__.py +++ b/dbfilter_from_header/__openerp__.py @@ -20,7 +20,7 @@ ############################################################################## { "name": "dbfilter_from_header", - "version": "8.0.1.0.0", + "version": "9.0.1.0.0", "author": "Therp BV,Odoo Community Association (OCA)", "license": "AGPL-3", "complexity": "normal", From 4c22a340d8ffa98f2c7f3cb7f6d19dd4d6fc6041 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Bidoul?= Date: Wed, 18 Nov 2015 22:16:10 +0100 Subject: [PATCH 04/18] [ADD] - cherry picked 5737ebc Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/__init__.py | 9 ++++++--- dbfilter_from_header/__openerp__.py | 3 ++- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/dbfilter_from_header/__init__.py b/dbfilter_from_header/__init__.py index 5f8b01ec0..14138f080 100644 --- a/dbfilter_from_header/__init__.py +++ b/dbfilter_from_header/__init__.py @@ -28,9 +28,12 @@ db_filter_org = http.db_filter def db_filter(dbs, httprequest=None): dbs = db_filter_org(dbs, httprequest) httprequest = httprequest or http.request.httprequest - db_filter_hdr = \ - httprequest.environ.get('HTTP_X_ODOO_DBFILTER') or \ - httprequest.environ.get('HTTP_X_OPENERP_DBFILTER') + db_filter_hdr_odoo = httprequest.environ.get('HTTP_X_ODOO_DBFILTER') + db_filter_hdr_openerp = httprequest.environ.get('HTTP_X_OPENERP_DBFILTER') + if db_filter_hdr_odoo and db_filter_hdr_openerp: + raise RuntimeError("x-odoo-dbfilter and x-openerp-dbfiter " + "are both set") + db_filter_hdr = db_filter_hdr_odoo or db_filter_hdr_openerp if db_filter_hdr: dbs = [db for db in dbs if re.match(db_filter_hdr, db)] return dbs diff --git a/dbfilter_from_header/__openerp__.py b/dbfilter_from_header/__openerp__.py index f7308f54b..32b2651ab 100644 --- a/dbfilter_from_header/__openerp__.py +++ b/dbfilter_from_header/__openerp__.py @@ -30,8 +30,9 @@ This is interesting for setups where database names can't be mapped to proxied host names. - In nginx, use + In nginx, use one of proxy_set_header X-OpenERP-dbfilter [your filter]; + proxy_set_header X-Odoo-dbfilter [your filter]; The addon has to be loaded as server-wide module. """, From e90ee745fd6092d04e83e812cd23fecec80ae41f Mon Sep 17 00:00:00 2001 From: Fabio Vilchez Date: Tue, 8 Mar 2016 10:49:46 -0600 Subject: [PATCH 05/18] [FIX] - dbfilter_from_header: Updated the module to latest conventions. Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/README.rst | 62 +++++++++++++++++++++++++++++ dbfilter_from_header/__init__.py | 24 ++--------- dbfilter_from_header/__openerp__.py | 36 +++-------------- 3 files changed, 71 insertions(+), 51 deletions(-) create mode 100644 dbfilter_from_header/README.rst diff --git a/dbfilter_from_header/README.rst b/dbfilter_from_header/README.rst new file mode 100644 index 000000000..2b9626afd --- /dev/null +++ b/dbfilter_from_header/README.rst @@ -0,0 +1,62 @@ +.. 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 + +==================== +dbfilter_from_header +==================== + +This addon lets you pass a dbfilter as a HTTP header. + +This is interesting for setups where database names can't be mapped to proxied host names. + +Configuration +============= + +In nginx, use one of: + +* proxy_set_header X-OpenERP-dbfilter [your filter]; +* proxy_set_header X-Odoo-dbfilter [your filter]; + +This addon has to be loaded as server-wide module. + +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 +`_. + +Credits +======= + +Contributors +------------ + +* Stéphane Bidoul +* Yannick Vaucher +* Alexandre Fayolle +* Holger Brunn +* Laurent Mignon (aka lmi) +* Sandy Carter +* Fabio Vilchez + +Maintainer +---------- + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +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. + +To contribute to this module, please visit https://odoo-community.org. diff --git a/dbfilter_from_header/__init__.py b/dbfilter_from_header/__init__.py index 14138f080..63ebcefb4 100644 --- a/dbfilter_from_header/__init__.py +++ b/dbfilter_from_header/__init__.py @@ -1,24 +1,8 @@ # -*- coding: utf-8 -*- -############################################################################## -# -# OpenERP, Open Source Management Solution -# This module copyright (C) 2013 Therp BV (). -# This module copyright (C) 2014 ACSONE SA/NV (). -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . -# -############################################################################## +# © 2013 Therp BV +# © 2014 ACSONE SA/NV +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + import re from openerp import http diff --git a/dbfilter_from_header/__openerp__.py b/dbfilter_from_header/__openerp__.py index 32b2651ab..fc337b896 100644 --- a/dbfilter_from_header/__openerp__.py +++ b/dbfilter_from_header/__openerp__.py @@ -1,41 +1,15 @@ # -*- coding: utf-8 -*- -############################################################################## -# -# OpenERP, Open Source Management Solution -# This module copyright (C) 2013 Therp BV (). -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . -# -############################################################################## +# © 2013 Therp BV +# © 2014 ACSONE SA/NV +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + { "name": "dbfilter_from_header", + "summary": "Filter databases with HTTP headers", "version": "9.0.1.0.0", "author": "Therp BV,Odoo Community Association (OCA)", "license": "AGPL-3", "complexity": "normal", - "description": """ - This addon lets you pass a dbfilter as a HTTP header. - - This is interesting for setups where database names can't be mapped to - proxied host names. - - In nginx, use one of - proxy_set_header X-OpenERP-dbfilter [your filter]; - proxy_set_header X-Odoo-dbfilter [your filter]; - - The addon has to be loaded as server-wide module. - """, "category": "Tools", "depends": [ 'web', From f93ae6c9539c9dc33b09d65b8c970fd1b71214ab Mon Sep 17 00:00:00 2001 From: Jos De Graeve Date: Mon, 17 Oct 2016 14:39:59 +0200 Subject: [PATCH 06/18] [MIG] migrate dbfilter_from_header to 10.0 (#571) [MIG] migrate dbfilter_from_header to 10.0 I have also removed the ability to use HTTP_X_OPENERP_DBFILTER Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/README.rst | 35 ++++++++++++++----- dbfilter_from_header/__init__.py | 9 ++--- .../{__openerp__.py => __manifest__.py} | 2 +- 3 files changed, 29 insertions(+), 17 deletions(-) rename dbfilter_from_header/{__openerp__.py => __manifest__.py} (95%) diff --git a/dbfilter_from_header/README.rst b/dbfilter_from_header/README.rst index 2b9626afd..5107a5b2c 100644 --- a/dbfilter_from_header/README.rst +++ b/dbfilter_from_header/README.rst @@ -10,15 +10,35 @@ This addon lets you pass a dbfilter as a HTTP header. This is interesting for setups where database names can't be mapped to proxied host names. +Installation +============ + +To install this module, you only need to add it to your addons, and load it as +a server-wide module. + +This can be done with the ``load`` parameter in ``/etc/odoo.conf`` or with the +``--load`` command-line parameter + +``load = "web, web_kanban, dbfilter_from_header"`` + Configuration ============= -In nginx, use one of: +Please keep in mind that the standard odoo dbfilter configuration is still +applied before looking at the regular expression in the header. -* proxy_set_header X-OpenERP-dbfilter [your filter]; -* proxy_set_header X-Odoo-dbfilter [your filter]; +* For nginx, use: + + ``proxy_set_header X-Odoo-dbfilter [your filter regex];`` + +* For caddy, use: + + ``proxy_header X-Odoo-dbfilter [your filter regex]`` + +* For Apache, use: + + ``RequestHeader set X-Odoo-dbfilter [your filter regex]`` -This addon has to be loaded as server-wide module. Bug Tracker =========== @@ -26,11 +46,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 -`_. +help us smashing it by providing a detailed and welcomed feedback. Credits ======= @@ -45,6 +61,7 @@ Contributors * Laurent Mignon (aka lmi) * Sandy Carter * Fabio Vilchez +* Jos De Graeve Maintainer ---------- diff --git a/dbfilter_from_header/__init__.py b/dbfilter_from_header/__init__.py index 63ebcefb4..4d7ba003e 100644 --- a/dbfilter_from_header/__init__.py +++ b/dbfilter_from_header/__init__.py @@ -4,7 +4,7 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). import re -from openerp import http +from odoo import http db_filter_org = http.db_filter @@ -12,12 +12,7 @@ db_filter_org = http.db_filter def db_filter(dbs, httprequest=None): dbs = db_filter_org(dbs, httprequest) httprequest = httprequest or http.request.httprequest - db_filter_hdr_odoo = httprequest.environ.get('HTTP_X_ODOO_DBFILTER') - db_filter_hdr_openerp = httprequest.environ.get('HTTP_X_OPENERP_DBFILTER') - if db_filter_hdr_odoo and db_filter_hdr_openerp: - raise RuntimeError("x-odoo-dbfilter and x-openerp-dbfiter " - "are both set") - db_filter_hdr = db_filter_hdr_odoo or db_filter_hdr_openerp + db_filter_hdr = httprequest.environ.get('HTTP_X_ODOO_DBFILTER') if db_filter_hdr: dbs = [db for db in dbs if re.match(db_filter_hdr, db)] return dbs diff --git a/dbfilter_from_header/__openerp__.py b/dbfilter_from_header/__manifest__.py similarity index 95% rename from dbfilter_from_header/__openerp__.py rename to dbfilter_from_header/__manifest__.py index fc337b896..24bb1733a 100644 --- a/dbfilter_from_header/__openerp__.py +++ b/dbfilter_from_header/__manifest__.py @@ -6,7 +6,7 @@ { "name": "dbfilter_from_header", "summary": "Filter databases with HTTP headers", - "version": "9.0.1.0.0", + "version": "10.0.1.0.0", "author": "Therp BV,Odoo Community Association (OCA)", "license": "AGPL-3", "complexity": "normal", From a862f34c20df359e3751e281ff1b58ed0cea8554 Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Thu, 8 Mar 2018 05:07:17 +0500 Subject: [PATCH 07/18] [11.0][MIG] dbfilter_from_header updates were made in #1137 by @TimLai125 and small lint fixes by @yelizariev Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/README.rst | 3 ++- dbfilter_from_header/__init__.py | 20 +----------------- dbfilter_from_header/__manifest__.py | 4 ++-- .../i18n/dbfilter_from_header.pot | 6 ++---- dbfilter_from_header/override.py | 21 +++++++++++++++++++ 5 files changed, 28 insertions(+), 26 deletions(-) create mode 100644 dbfilter_from_header/override.py diff --git a/dbfilter_from_header/README.rst b/dbfilter_from_header/README.rst index 5107a5b2c..03293e46b 100644 --- a/dbfilter_from_header/README.rst +++ b/dbfilter_from_header/README.rst @@ -19,7 +19,7 @@ a server-wide module. This can be done with the ``load`` parameter in ``/etc/odoo.conf`` or with the ``--load`` command-line parameter -``load = "web, web_kanban, dbfilter_from_header"`` +``load = "web, dbfilter_from_header"`` Configuration ============= @@ -62,6 +62,7 @@ Contributors * Sandy Carter * Fabio Vilchez * Jos De Graeve +* Lai Tim Siu (Quaritle Limited) Maintainer ---------- diff --git a/dbfilter_from_header/__init__.py b/dbfilter_from_header/__init__.py index 4d7ba003e..b57de876a 100644 --- a/dbfilter_from_header/__init__.py +++ b/dbfilter_from_header/__init__.py @@ -1,20 +1,2 @@ -# -*- coding: utf-8 -*- -# © 2013 Therp BV -# © 2014 ACSONE SA/NV -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -import re -from odoo import http - -db_filter_org = http.db_filter - - -def db_filter(dbs, httprequest=None): - dbs = db_filter_org(dbs, httprequest) - httprequest = httprequest or http.request.httprequest - db_filter_hdr = httprequest.environ.get('HTTP_X_ODOO_DBFILTER') - if db_filter_hdr: - dbs = [db for db in dbs if re.match(db_filter_hdr, db)] - return dbs - -http.db_filter = db_filter +from . import override diff --git a/dbfilter_from_header/__manifest__.py b/dbfilter_from_header/__manifest__.py index 24bb1733a..835579122 100644 --- a/dbfilter_from_header/__manifest__.py +++ b/dbfilter_from_header/__manifest__.py @@ -1,12 +1,12 @@ -# -*- coding: utf-8 -*- # © 2013 Therp BV # © 2014 ACSONE SA/NV +# Copyright 2018 Quartile Limited # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). { "name": "dbfilter_from_header", "summary": "Filter databases with HTTP headers", - "version": "10.0.1.0.0", + "version": "11.0.1.0.0", "author": "Therp BV,Odoo Community Association (OCA)", "license": "AGPL-3", "complexity": "normal", diff --git a/dbfilter_from_header/i18n/dbfilter_from_header.pot b/dbfilter_from_header/i18n/dbfilter_from_header.pot index 3c201b4a8..447d3bb3c 100644 --- a/dbfilter_from_header/i18n/dbfilter_from_header.pot +++ b/dbfilter_from_header/i18n/dbfilter_from_header.pot @@ -1,12 +1,10 @@ -# Translation of OpenERP Server. +# Translation of Odoo Server. # This file contains the translation of the following modules: # msgid "" msgstr "" -"Project-Id-Version: OpenERP Server 7.0\n" +"Project-Id-Version: Odoo Server 11.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-03-14 17:40+0000\n" -"PO-Revision-Date: 2014-03-14 17:40+0000\n" "Last-Translator: <>\n" "Language-Team: \n" "MIME-Version: 1.0\n" diff --git a/dbfilter_from_header/override.py b/dbfilter_from_header/override.py new file mode 100644 index 000000000..a347c30ed --- /dev/null +++ b/dbfilter_from_header/override.py @@ -0,0 +1,21 @@ +# © 2013 Therp BV +# © 2014 ACSONE SA/NV +# Copyright 2018 Quartile Limited +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +import re +from odoo import http + +db_filter_org = http.db_filter + + +def db_filter(dbs, httprequest=None): + dbs = db_filter_org(dbs, httprequest) + httprequest = httprequest or http.request.httprequest + db_filter_hdr = httprequest.environ.get('HTTP_X_ODOO_DBFILTER') + if db_filter_hdr: + dbs = [db for db in dbs if re.match(db_filter_hdr, db)] + return dbs + + +http.db_filter = db_filter From b21cbd1214e94c8509bbf8a867bd6d1d8bd26799 Mon Sep 17 00:00:00 2001 From: Nils Hamerlinck Date: Thu, 26 Jul 2018 23:13:00 +0700 Subject: [PATCH 08/18] [FIX] dbfilter_from_header: prevent autoloading Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/README.rst | 9 ++++++--- dbfilter_from_header/override.py | 8 +++++++- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/dbfilter_from_header/README.rst b/dbfilter_from_header/README.rst index 03293e46b..e8f5a6cb8 100644 --- a/dbfilter_from_header/README.rst +++ b/dbfilter_from_header/README.rst @@ -16,10 +16,10 @@ Installation To install this module, you only need to add it to your addons, and load it as a server-wide module. -This can be done with the ``load`` parameter in ``/etc/odoo.conf`` or with the -``--load`` command-line parameter +This can be done with the ``server_wide_modules`` parameter in ``/etc/odoo.conf`` +or with the ``--load`` command-line parameter -``load = "web, dbfilter_from_header"`` +``server_wide_modules = "web, dbfilter_from_header"`` Configuration ============= @@ -39,6 +39,9 @@ applied before looking at the regular expression in the header. ``RequestHeader set X-Odoo-dbfilter [your filter regex]`` +And make sure that proxy mode is enabled in Odoo's configuration file: + +``proxy_mode = True`` Bug Tracker =========== diff --git a/dbfilter_from_header/override.py b/dbfilter_from_header/override.py index a347c30ed..113acb6a0 100644 --- a/dbfilter_from_header/override.py +++ b/dbfilter_from_header/override.py @@ -3,8 +3,10 @@ # Copyright 2018 Quartile Limited # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). +import logging import re from odoo import http +from odoo.tools import config db_filter_org = http.db_filter @@ -18,4 +20,8 @@ def db_filter(dbs, httprequest=None): return dbs -http.db_filter = db_filter +if config.get('proxy_mode') and \ + 'dbfilter_from_header' in config.get('server_wide_modules'): + _logger = logging.getLogger(__name__) + _logger.info('monkey patching http.db_filter') + http.db_filter = db_filter From 75070c85ab0c049e208ee9cfec820e617f101db2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20Taymans?= Date: Tue, 9 Apr 2019 18:26:01 +0200 Subject: [PATCH 09/18] [MIG] dbfilter_from_header: Migration to 12.0 Signed-off-by: Carmen Bianca Bakker [UPD] Update dbfilter_from_header.pot Signed-off-by: Carmen Bianca Bakker [UPD] README.rst Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/README.rst | 67 ++- dbfilter_from_header/__manifest__.py | 17 +- .../i18n/dbfilter_from_header.pot | 2 +- dbfilter_from_header/readme/CONFIGURE.rst | 18 + dbfilter_from_header/readme/CONTRIBUTORS.rst | 9 + dbfilter_from_header/readme/DESCRIPTION.rst | 3 + dbfilter_from_header/readme/INSTALL.rst | 7 + dbfilter_from_header/readme/USAGE.rst | 2 + .../static/description/index.html | 462 ++++++++++++++++++ 9 files changed, 560 insertions(+), 27 deletions(-) create mode 100644 dbfilter_from_header/readme/CONFIGURE.rst create mode 100644 dbfilter_from_header/readme/CONTRIBUTORS.rst create mode 100644 dbfilter_from_header/readme/DESCRIPTION.rst create mode 100644 dbfilter_from_header/readme/INSTALL.rst create mode 100644 dbfilter_from_header/readme/USAGE.rst create mode 100644 dbfilter_from_header/static/description/index.html diff --git a/dbfilter_from_header/README.rst b/dbfilter_from_header/README.rst index e8f5a6cb8..f87147be1 100644 --- a/dbfilter_from_header/README.rst +++ b/dbfilter_from_header/README.rst @@ -1,15 +1,39 @@ -.. 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 - ==================== dbfilter_from_header ==================== +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! 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%2Fserver--tools-lightgray.png?logo=github + :target: https://github.com/OCA/server-tools/tree/12.0/dbfilter_from_header + :alt: OCA/server-tools +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/server-tools-12-0/server-tools-12-0-dbfilter_from_header + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png + :target: https://runbot.odoo-community.org/runbot/149/12.0 + :alt: Try me on Runbot + +|badge1| |badge2| |badge3| |badge4| |badge5| + This addon lets you pass a dbfilter as a HTTP header. This is interesting for setups where database names can't be mapped to proxied host names. +**Table of contents** + +.. contents:: + :local: + Installation ============ @@ -43,19 +67,32 @@ And make sure that proxy mode is enabled in Odoo's configuration file: ``proxy_mode = True`` +Usage +===== + +To use this module, you need to complete installation and configuration +parts. + 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. +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 +~~~~~~~ + +* Therp BV + Contributors ------------- +~~~~~~~~~~~~ * Stéphane Bidoul * Yannick Vaucher @@ -67,17 +104,19 @@ Contributors * Jos De Graeve * Lai Tim Siu (Quaritle Limited) -Maintainer ----------- +Maintainers +~~~~~~~~~~~ + +This module is maintained by the OCA. .. image:: https://odoo-community.org/logo.png :alt: Odoo Community Association :target: https://odoo-community.org -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. -To contribute to this module, please visit https://odoo-community.org. +This module is part of the `OCA/server-tools `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/dbfilter_from_header/__manifest__.py b/dbfilter_from_header/__manifest__.py index 835579122..b9bd1e912 100644 --- a/dbfilter_from_header/__manifest__.py +++ b/dbfilter_from_header/__manifest__.py @@ -6,23 +6,16 @@ { "name": "dbfilter_from_header", "summary": "Filter databases with HTTP headers", - "version": "11.0.1.0.0", - "author": "Therp BV,Odoo Community Association (OCA)", + "version": "12.0.1.0.0", + "website": "https://github.com/OCA/server-tools", + "author": "Therp BV, " + "Odoo Community Association (OCA)", "license": "AGPL-3", "complexity": "normal", "category": "Tools", "depends": [ 'web', ], - "data": [ - ], - "js": [ - ], - "css": [ - ], "auto_install": False, - "installable": True, - "external_dependencies": { - 'python': [], - }, + 'installable': True, } diff --git a/dbfilter_from_header/i18n/dbfilter_from_header.pot b/dbfilter_from_header/i18n/dbfilter_from_header.pot index 447d3bb3c..d2e396f15 100644 --- a/dbfilter_from_header/i18n/dbfilter_from_header.pot +++ b/dbfilter_from_header/i18n/dbfilter_from_header.pot @@ -3,7 +3,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" diff --git a/dbfilter_from_header/readme/CONFIGURE.rst b/dbfilter_from_header/readme/CONFIGURE.rst new file mode 100644 index 000000000..11da21c49 --- /dev/null +++ b/dbfilter_from_header/readme/CONFIGURE.rst @@ -0,0 +1,18 @@ +Please keep in mind that the standard odoo dbfilter configuration is still +applied before looking at the regular expression in the header. + +* For nginx, use: + + ``proxy_set_header X-Odoo-dbfilter [your filter regex];`` + +* For caddy, use: + + ``proxy_header X-Odoo-dbfilter [your filter regex]`` + +* For Apache, use: + + ``RequestHeader set X-Odoo-dbfilter [your filter regex]`` + +And make sure that proxy mode is enabled in Odoo's configuration file: + +``proxy_mode = True`` diff --git a/dbfilter_from_header/readme/CONTRIBUTORS.rst b/dbfilter_from_header/readme/CONTRIBUTORS.rst new file mode 100644 index 000000000..3ce1edb3a --- /dev/null +++ b/dbfilter_from_header/readme/CONTRIBUTORS.rst @@ -0,0 +1,9 @@ +* Stéphane Bidoul +* Yannick Vaucher +* Alexandre Fayolle +* Holger Brunn +* Laurent Mignon (aka lmi) +* Sandy Carter +* Fabio Vilchez +* Jos De Graeve +* Lai Tim Siu (Quaritle Limited) diff --git a/dbfilter_from_header/readme/DESCRIPTION.rst b/dbfilter_from_header/readme/DESCRIPTION.rst new file mode 100644 index 000000000..8f058402a --- /dev/null +++ b/dbfilter_from_header/readme/DESCRIPTION.rst @@ -0,0 +1,3 @@ +This addon lets you pass a dbfilter as a HTTP header. + +This is interesting for setups where database names can't be mapped to proxied host names. diff --git a/dbfilter_from_header/readme/INSTALL.rst b/dbfilter_from_header/readme/INSTALL.rst new file mode 100644 index 000000000..07de52fd3 --- /dev/null +++ b/dbfilter_from_header/readme/INSTALL.rst @@ -0,0 +1,7 @@ +To install this module, you only need to add it to your addons, and load it as +a server-wide module. + +This can be done with the ``server_wide_modules`` parameter in ``/etc/odoo.conf`` +or with the ``--load`` command-line parameter + +``server_wide_modules = "web, dbfilter_from_header"`` diff --git a/dbfilter_from_header/readme/USAGE.rst b/dbfilter_from_header/readme/USAGE.rst new file mode 100644 index 000000000..873c97460 --- /dev/null +++ b/dbfilter_from_header/readme/USAGE.rst @@ -0,0 +1,2 @@ +To use this module, you need to complete installation and configuration +parts. diff --git a/dbfilter_from_header/static/description/index.html b/dbfilter_from_header/static/description/index.html new file mode 100644 index 000000000..b794c1163 --- /dev/null +++ b/dbfilter_from_header/static/description/index.html @@ -0,0 +1,462 @@ + + + + + + +dbfilter_from_header + + + +
+

dbfilter_from_header

+ + +

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

+

This addon lets you pass a dbfilter as a HTTP header.

+

This is interesting for setups where database names can’t be mapped to proxied host names.

+

Table of contents

+ +
+

Installation

+

To install this module, you only need to add it to your addons, and load it as +a server-wide module.

+

This can be done with the server_wide_modules parameter in /etc/odoo.conf +or with the --load command-line parameter

+

server_wide_modules = "web, dbfilter_from_header"

+
+
+

Configuration

+

Please keep in mind that the standard odoo dbfilter configuration is still +applied before looking at the regular expression in the header.

+
    +
  • For nginx, use:

    +

    proxy_set_header X-Odoo-dbfilter [your filter regex];

    +
  • +
  • For caddy, use:

    +

    proxy_header X-Odoo-dbfilter [your filter regex]

    +
  • +
  • For Apache, use:

    +

    RequestHeader set X-Odoo-dbfilter [your filter regex]

    +
  • +
+

And make sure that proxy mode is enabled in Odoo’s configuration file:

+

proxy_mode = True

+
+
+

Usage

+

To use this module, you need to complete installation and configuration +parts.

+
+
+

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

+
    +
  • Therp BV
  • +
+
+
+

Contributors

+ +
+
+

Maintainers

+

This module is maintained by the OCA.

+Odoo Community Association +

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

+

This module is part of the OCA/server-tools project on GitHub.

+

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

+
+
+
+ + From 9c725ac1608fc0a102995b3d95e4f8c791f3a9be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E4=BC=9F=E6=9D=B0?= <674416404@qq.com> Date: Sat, 31 Aug 2019 05:08:31 +0000 Subject: [PATCH 10/18] Added translation using Weblate (Chinese (Simplified)) Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/i18n/zh_CN.po | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 dbfilter_from_header/i18n/zh_CN.po diff --git a/dbfilter_from_header/i18n/zh_CN.po b/dbfilter_from_header/i18n/zh_CN.po new file mode 100644 index 000000000..4159be77e --- /dev/null +++ b/dbfilter_from_header/i18n/zh_CN.po @@ -0,0 +1,14 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 12.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: zh_CN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=1; plural=0;\n" From 723ff14c3942ecb6fcf57caec930dffa9fe84561 Mon Sep 17 00:00:00 2001 From: newtratip Date: Wed, 4 Mar 2020 23:09:17 +0700 Subject: [PATCH 11/18] [IMP] dbfilter_from_header: black, isort Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/__init__.py | 1 - dbfilter_from_header/__manifest__.py | 11 ++++------- dbfilter_from_header/override.py | 10 ++++++---- 3 files changed, 10 insertions(+), 12 deletions(-) diff --git a/dbfilter_from_header/__init__.py b/dbfilter_from_header/__init__.py index b57de876a..3b8cc81fa 100644 --- a/dbfilter_from_header/__init__.py +++ b/dbfilter_from_header/__init__.py @@ -1,2 +1 @@ - from . import override diff --git a/dbfilter_from_header/__manifest__.py b/dbfilter_from_header/__manifest__.py index b9bd1e912..22b7f0ede 100644 --- a/dbfilter_from_header/__manifest__.py +++ b/dbfilter_from_header/__manifest__.py @@ -6,16 +6,13 @@ { "name": "dbfilter_from_header", "summary": "Filter databases with HTTP headers", - "version": "12.0.1.0.0", + "version": "13.0.1.0.0", "website": "https://github.com/OCA/server-tools", - "author": "Therp BV, " - "Odoo Community Association (OCA)", + "author": "Therp BV, " "Odoo Community Association (OCA)", "license": "AGPL-3", "complexity": "normal", "category": "Tools", - "depends": [ - 'web', - ], + "depends": ["web"], "auto_install": False, - 'installable': True, + "installable": True, } diff --git a/dbfilter_from_header/override.py b/dbfilter_from_header/override.py index 113acb6a0..b7cde207d 100644 --- a/dbfilter_from_header/override.py +++ b/dbfilter_from_header/override.py @@ -5,6 +5,7 @@ import logging import re + from odoo import http from odoo.tools import config @@ -14,14 +15,15 @@ db_filter_org = http.db_filter def db_filter(dbs, httprequest=None): dbs = db_filter_org(dbs, httprequest) httprequest = httprequest or http.request.httprequest - db_filter_hdr = httprequest.environ.get('HTTP_X_ODOO_DBFILTER') + db_filter_hdr = httprequest.environ.get("HTTP_X_ODOO_DBFILTER") if db_filter_hdr: dbs = [db for db in dbs if re.match(db_filter_hdr, db)] return dbs -if config.get('proxy_mode') and \ - 'dbfilter_from_header' in config.get('server_wide_modules'): +if config.get("proxy_mode") and "dbfilter_from_header" in config.get( + "server_wide_modules" +): _logger = logging.getLogger(__name__) - _logger.info('monkey patching http.db_filter') + _logger.info("monkey patching http.db_filter") http.db_filter = db_filter From 937f512c7f75bb8f638331218de7694a103d567d Mon Sep 17 00:00:00 2001 From: newtratip Date: Wed, 4 Mar 2020 23:19:30 +0700 Subject: [PATCH 12/18] [13.0][MIG] dbfilter_from_header Signed-off-by: Carmen Bianca Bakker [UPD] Update dbfilter_from_header.pot Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/README.rst | 11 ++++++----- dbfilter_from_header/__manifest__.py | 3 +-- dbfilter_from_header/i18n/dbfilter_from_header.pot | 5 ++--- dbfilter_from_header/i18n/zh_CN.po | 2 +- dbfilter_from_header/readme/CONTRIBUTORS.rst | 1 + dbfilter_from_header/static/description/index.html | 7 ++++--- 6 files changed, 15 insertions(+), 14 deletions(-) diff --git a/dbfilter_from_header/README.rst b/dbfilter_from_header/README.rst index f87147be1..b5694ad85 100644 --- a/dbfilter_from_header/README.rst +++ b/dbfilter_from_header/README.rst @@ -14,13 +14,13 @@ dbfilter_from_header :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--tools-lightgray.png?logo=github - :target: https://github.com/OCA/server-tools/tree/12.0/dbfilter_from_header + :target: https://github.com/OCA/server-tools/tree/13.0/dbfilter_from_header :alt: OCA/server-tools .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/server-tools-12-0/server-tools-12-0-dbfilter_from_header + :target: https://translation.odoo-community.org/projects/server-tools-13-0/server-tools-13-0-dbfilter_from_header :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/149/12.0 + :target: https://runbot.odoo-community.org/runbot/149/13.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -79,7 +79,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. @@ -103,6 +103,7 @@ Contributors * Fabio Vilchez * Jos De Graeve * Lai Tim Siu (Quaritle Limited) +* Tharathip Chaweewongphan Maintainers ~~~~~~~~~~~ @@ -117,6 +118,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/server-tools `_ project on GitHub. +This module is part of the `OCA/server-tools `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/dbfilter_from_header/__manifest__.py b/dbfilter_from_header/__manifest__.py index 22b7f0ede..bf8d65d33 100644 --- a/dbfilter_from_header/__manifest__.py +++ b/dbfilter_from_header/__manifest__.py @@ -8,9 +8,8 @@ "summary": "Filter databases with HTTP headers", "version": "13.0.1.0.0", "website": "https://github.com/OCA/server-tools", - "author": "Therp BV, " "Odoo Community Association (OCA)", + "author": "Therp BV, Odoo Community Association (OCA)", "license": "AGPL-3", - "complexity": "normal", "category": "Tools", "depends": ["web"], "auto_install": False, diff --git a/dbfilter_from_header/i18n/dbfilter_from_header.pot b/dbfilter_from_header/i18n/dbfilter_from_header.pot index d2e396f15..cc93d01ee 100644 --- a/dbfilter_from_header/i18n/dbfilter_from_header.pot +++ b/dbfilter_from_header/i18n/dbfilter_from_header.pot @@ -3,12 +3,11 @@ # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 12.0\n" +"Project-Id-Version: Odoo Server 13.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: <>\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" - diff --git a/dbfilter_from_header/i18n/zh_CN.po b/dbfilter_from_header/i18n/zh_CN.po index 4159be77e..b8cb4812f 100644 --- a/dbfilter_from_header/i18n/zh_CN.po +++ b/dbfilter_from_header/i18n/zh_CN.po @@ -3,7 +3,7 @@ # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 12.0\n" +"Project-Id-Version: Odoo Server 13.0\n" "Report-Msgid-Bugs-To: \n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" diff --git a/dbfilter_from_header/readme/CONTRIBUTORS.rst b/dbfilter_from_header/readme/CONTRIBUTORS.rst index 3ce1edb3a..ebb59af19 100644 --- a/dbfilter_from_header/readme/CONTRIBUTORS.rst +++ b/dbfilter_from_header/readme/CONTRIBUTORS.rst @@ -7,3 +7,4 @@ * Fabio Vilchez * Jos De Graeve * Lai Tim Siu (Quaritle Limited) +* Tharathip Chaweewongphan diff --git a/dbfilter_from_header/static/description/index.html b/dbfilter_from_header/static/description/index.html index b794c1163..cda563aa8 100644 --- a/dbfilter_from_header/static/description/index.html +++ b/dbfilter_from_header/static/description/index.html @@ -367,7 +367,7 @@ ul.auto-toc { !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

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

+

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

This addon lets you pass a dbfilter as a HTTP header.

This is interesting for setups where database names can’t be mapped to proxied host names.

Table of contents

@@ -421,7 +421,7 @@ parts.

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.

@@ -444,6 +444,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
  • Fabio Vilchez <fabio.vilchez@clearcorp.co.cr>
  • Jos De Graeve <Jos.DeGraeve@apertoso.be>
  • Lai Tim Siu (Quaritle Limited) <info@quartile.co>
  • +
  • Tharathip Chaweewongphan <tharathipc@ecosoft.co.th>
  • @@ -453,7 +454,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/server-tools project on GitHub.

    +

    This module is part of the OCA/server-tools project on GitHub.

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

    From 65c48751aee031d32391ba696e221dcada867d58 Mon Sep 17 00:00:00 2001 From: OCA Transbot Date: Tue, 15 Dec 2020 11:53:47 +0000 Subject: [PATCH 13/18] Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: server-tools-13.0/server-tools-13.0-dbfilter_from_header Translate-URL: https://translation.odoo-community.org/projects/server-tools-13-0/server-tools-13-0-dbfilter_from_header/ Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/i18n/zh_CN.po | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/dbfilter_from_header/i18n/zh_CN.po b/dbfilter_from_header/i18n/zh_CN.po index b8cb4812f..e69de29bb 100644 --- a/dbfilter_from_header/i18n/zh_CN.po +++ b/dbfilter_from_header/i18n/zh_CN.po @@ -1,14 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 13.0\n" -"Report-Msgid-Bugs-To: \n" -"Last-Translator: Automatically generated\n" -"Language-Team: none\n" -"Language: zh_CN\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Plural-Forms: nplurals=1; plural=0;\n" From de108d0a25c87fedcecc47f93f734b824259c24a Mon Sep 17 00:00:00 2001 From: Eric Antones Date: Mon, 1 Feb 2021 18:32:48 +0100 Subject: [PATCH 14/18] [MIG] dbfilter_from_header: Migration to 14.0 Signed-off-by: Carmen Bianca Bakker [UPD] Update dbfilter_from_header.pot Signed-off-by: Carmen Bianca Bakker [UPD] README.rst Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/README.rst | 13 +++++++------ dbfilter_from_header/__manifest__.py | 2 +- dbfilter_from_header/i18n/dbfilter_from_header.pot | 2 +- dbfilter_from_header/readme/CONTRIBUTORS.rst | 1 + dbfilter_from_header/readme/INSTALL.rst | 2 +- dbfilter_from_header/static/description/index.html | 9 +++++---- 6 files changed, 16 insertions(+), 13 deletions(-) diff --git a/dbfilter_from_header/README.rst b/dbfilter_from_header/README.rst index b5694ad85..48dcf3ddc 100644 --- a/dbfilter_from_header/README.rst +++ b/dbfilter_from_header/README.rst @@ -14,13 +14,13 @@ dbfilter_from_header :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--tools-lightgray.png?logo=github - :target: https://github.com/OCA/server-tools/tree/13.0/dbfilter_from_header + :target: https://github.com/OCA/server-tools/tree/14.0/dbfilter_from_header :alt: OCA/server-tools .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/server-tools-13-0/server-tools-13-0-dbfilter_from_header + :target: https://translation.odoo-community.org/projects/server-tools-14-0/server-tools-14-0-dbfilter_from_header :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/149/13.0 + :target: https://runbot.odoo-community.org/runbot/149/14.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -43,7 +43,7 @@ a server-wide module. This can be done with the ``server_wide_modules`` parameter in ``/etc/odoo.conf`` or with the ``--load`` command-line parameter -``server_wide_modules = "web, dbfilter_from_header"`` +``server_wide_modules = base,web,dbfilter_from_header`` Configuration ============= @@ -79,7 +79,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. @@ -104,6 +104,7 @@ Contributors * Jos De Graeve * Lai Tim Siu (Quaritle Limited) * Tharathip Chaweewongphan +* Eric Antones Maintainers ~~~~~~~~~~~ @@ -118,6 +119,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/server-tools `_ project on GitHub. +This module is part of the `OCA/server-tools `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/dbfilter_from_header/__manifest__.py b/dbfilter_from_header/__manifest__.py index bf8d65d33..303b2a470 100644 --- a/dbfilter_from_header/__manifest__.py +++ b/dbfilter_from_header/__manifest__.py @@ -6,7 +6,7 @@ { "name": "dbfilter_from_header", "summary": "Filter databases with HTTP headers", - "version": "13.0.1.0.0", + "version": "14.0.1.0.0", "website": "https://github.com/OCA/server-tools", "author": "Therp BV, Odoo Community Association (OCA)", "license": "AGPL-3", diff --git a/dbfilter_from_header/i18n/dbfilter_from_header.pot b/dbfilter_from_header/i18n/dbfilter_from_header.pot index cc93d01ee..4d8b20f91 100644 --- a/dbfilter_from_header/i18n/dbfilter_from_header.pot +++ b/dbfilter_from_header/i18n/dbfilter_from_header.pot @@ -3,7 +3,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" diff --git a/dbfilter_from_header/readme/CONTRIBUTORS.rst b/dbfilter_from_header/readme/CONTRIBUTORS.rst index ebb59af19..8be29af70 100644 --- a/dbfilter_from_header/readme/CONTRIBUTORS.rst +++ b/dbfilter_from_header/readme/CONTRIBUTORS.rst @@ -8,3 +8,4 @@ * Jos De Graeve * Lai Tim Siu (Quaritle Limited) * Tharathip Chaweewongphan +* Eric Antones diff --git a/dbfilter_from_header/readme/INSTALL.rst b/dbfilter_from_header/readme/INSTALL.rst index 07de52fd3..86ee135b7 100644 --- a/dbfilter_from_header/readme/INSTALL.rst +++ b/dbfilter_from_header/readme/INSTALL.rst @@ -4,4 +4,4 @@ a server-wide module. This can be done with the ``server_wide_modules`` parameter in ``/etc/odoo.conf`` or with the ``--load`` command-line parameter -``server_wide_modules = "web, dbfilter_from_header"`` +``server_wide_modules = base,web,dbfilter_from_header`` diff --git a/dbfilter_from_header/static/description/index.html b/dbfilter_from_header/static/description/index.html index cda563aa8..dd776be93 100644 --- a/dbfilter_from_header/static/description/index.html +++ b/dbfilter_from_header/static/description/index.html @@ -367,7 +367,7 @@ ul.auto-toc { !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

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

    +

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

    This addon lets you pass a dbfilter as a HTTP header.

    This is interesting for setups where database names can’t be mapped to proxied host names.

    Table of contents

    @@ -391,7 +391,7 @@ ul.auto-toc { a server-wide module.

    This can be done with the server_wide_modules parameter in /etc/odoo.conf or with the --load command-line parameter

    -

    server_wide_modules = "web, dbfilter_from_header"

    +

    server_wide_modules = base,web,dbfilter_from_header

    Configuration

    @@ -421,7 +421,7 @@ parts.

    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.

    @@ -445,6 +445,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
  • Jos De Graeve <Jos.DeGraeve@apertoso.be>
  • Lai Tim Siu (Quaritle Limited) <info@quartile.co>
  • Tharathip Chaweewongphan <tharathipc@ecosoft.co.th>
  • +
  • Eric Antones <eantones@nuobit.com>
  • @@ -454,7 +455,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/server-tools project on GitHub.

    +

    This module is part of the OCA/server-tools project on GitHub.

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

    From 6460d4837a237defecefa2be71c0363dfee024c9 Mon Sep 17 00:00:00 2001 From: Entrepreneur AJ Date: Tue, 30 Nov 2021 09:35:05 +0000 Subject: [PATCH 15/18] [MIG] dbfilter_from_header: Migration to 15.0 Signed-off-by: Carmen Bianca Bakker [UPD] Update dbfilter_from_header.pot Signed-off-by: Carmen Bianca Bakker [UPD] README.rst Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/README.rst | 10 +++++----- dbfilter_from_header/__manifest__.py | 2 +- dbfilter_from_header/i18n/dbfilter_from_header.pot | 2 +- dbfilter_from_header/static/description/index.html | 6 +++--- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/dbfilter_from_header/README.rst b/dbfilter_from_header/README.rst index 48dcf3ddc..a411b9856 100644 --- a/dbfilter_from_header/README.rst +++ b/dbfilter_from_header/README.rst @@ -14,13 +14,13 @@ dbfilter_from_header :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--tools-lightgray.png?logo=github - :target: https://github.com/OCA/server-tools/tree/14.0/dbfilter_from_header + :target: https://github.com/OCA/server-tools/tree/15.0/dbfilter_from_header :alt: OCA/server-tools .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/server-tools-14-0/server-tools-14-0-dbfilter_from_header + :target: https://translation.odoo-community.org/projects/server-tools-15-0/server-tools-15-0-dbfilter_from_header :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/149/14.0 + :target: https://runbot.odoo-community.org/runbot/149/15.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -79,7 +79,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. @@ -119,6 +119,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/server-tools `_ project on GitHub. +This module is part of the `OCA/server-tools `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/dbfilter_from_header/__manifest__.py b/dbfilter_from_header/__manifest__.py index 303b2a470..789ff70a5 100644 --- a/dbfilter_from_header/__manifest__.py +++ b/dbfilter_from_header/__manifest__.py @@ -6,7 +6,7 @@ { "name": "dbfilter_from_header", "summary": "Filter databases with HTTP headers", - "version": "14.0.1.0.0", + "version": "15.0.1.0.0", "website": "https://github.com/OCA/server-tools", "author": "Therp BV, Odoo Community Association (OCA)", "license": "AGPL-3", diff --git a/dbfilter_from_header/i18n/dbfilter_from_header.pot b/dbfilter_from_header/i18n/dbfilter_from_header.pot index 4d8b20f91..a11baf5cd 100644 --- a/dbfilter_from_header/i18n/dbfilter_from_header.pot +++ b/dbfilter_from_header/i18n/dbfilter_from_header.pot @@ -3,7 +3,7 @@ # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 14.0\n" +"Project-Id-Version: Odoo Server 15.0\n" "Report-Msgid-Bugs-To: \n" "Last-Translator: \n" "Language-Team: \n" diff --git a/dbfilter_from_header/static/description/index.html b/dbfilter_from_header/static/description/index.html index dd776be93..607a244df 100644 --- a/dbfilter_from_header/static/description/index.html +++ b/dbfilter_from_header/static/description/index.html @@ -367,7 +367,7 @@ ul.auto-toc { !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

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

    +

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

    This addon lets you pass a dbfilter as a HTTP header.

    This is interesting for setups where database names can’t be mapped to proxied host names.

    Table of contents

    @@ -421,7 +421,7 @@ parts.

    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.

    @@ -455,7 +455,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/server-tools project on GitHub.

    +

    This module is part of the OCA/server-tools project on GitHub.

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

    From 4bef334dec6de161e6c36ef8285c0ddf7027b208 Mon Sep 17 00:00:00 2001 From: Ignacio Buioli Date: Sun, 4 Sep 2022 03:48:03 +0000 Subject: [PATCH 16/18] Added translation using Weblate (Spanish (Argentina)) Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/i18n/es_AR.po | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 dbfilter_from_header/i18n/es_AR.po diff --git a/dbfilter_from_header/i18n/es_AR.po b/dbfilter_from_header/i18n/es_AR.po new file mode 100644 index 000000000..4b37bb93d --- /dev/null +++ b/dbfilter_from_header/i18n/es_AR.po @@ -0,0 +1,14 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 15.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: es_AR\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" From a6fee2bdaaf826e1ea78ab2fd3ad2d5ef8fce151 Mon Sep 17 00:00:00 2001 From: Carmen Bianca Bakker Date: Thu, 13 Oct 2022 16:10:08 +0200 Subject: [PATCH 17/18] [IMP] dbfilter_from_header: black, isort, prettier --- setup/dbfilter_from_header/odoo/addons/dbfilter_from_header | 1 + setup/dbfilter_from_header/setup.py | 6 ++++++ 2 files changed, 7 insertions(+) create mode 120000 setup/dbfilter_from_header/odoo/addons/dbfilter_from_header create mode 100644 setup/dbfilter_from_header/setup.py diff --git a/setup/dbfilter_from_header/odoo/addons/dbfilter_from_header b/setup/dbfilter_from_header/odoo/addons/dbfilter_from_header new file mode 120000 index 000000000..261765463 --- /dev/null +++ b/setup/dbfilter_from_header/odoo/addons/dbfilter_from_header @@ -0,0 +1 @@ +../../../../dbfilter_from_header \ No newline at end of file diff --git a/setup/dbfilter_from_header/setup.py b/setup/dbfilter_from_header/setup.py new file mode 100644 index 000000000..28c57bb64 --- /dev/null +++ b/setup/dbfilter_from_header/setup.py @@ -0,0 +1,6 @@ +import setuptools + +setuptools.setup( + setup_requires=['setuptools-odoo'], + odoo_addon=True, +) From e6cec5324eeec53f83192091ed02126e4a1950e1 Mon Sep 17 00:00:00 2001 From: Carmen Bianca Bakker Date: Thu, 13 Oct 2022 16:17:20 +0200 Subject: [PATCH 18/18] [MIG] dbfilter_from_header: Migration to 16.0 Signed-off-by: Carmen Bianca Bakker --- dbfilter_from_header/__manifest__.py | 2 +- dbfilter_from_header/override.py | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/dbfilter_from_header/__manifest__.py b/dbfilter_from_header/__manifest__.py index 789ff70a5..72cc9b4c6 100644 --- a/dbfilter_from_header/__manifest__.py +++ b/dbfilter_from_header/__manifest__.py @@ -6,7 +6,7 @@ { "name": "dbfilter_from_header", "summary": "Filter databases with HTTP headers", - "version": "15.0.1.0.0", + "version": "16.0.1.0.0", "website": "https://github.com/OCA/server-tools", "author": "Therp BV, Odoo Community Association (OCA)", "license": "AGPL-3", diff --git a/dbfilter_from_header/override.py b/dbfilter_from_header/override.py index b7cde207d..f759575b1 100644 --- a/dbfilter_from_header/override.py +++ b/dbfilter_from_header/override.py @@ -12,9 +12,9 @@ from odoo.tools import config db_filter_org = http.db_filter -def db_filter(dbs, httprequest=None): - dbs = db_filter_org(dbs, httprequest) - httprequest = httprequest or http.request.httprequest +def db_filter(dbs, host=None): + dbs = db_filter_org(dbs, host) + httprequest = http.request.httprequest db_filter_hdr = httprequest.environ.get("HTTP_X_ODOO_DBFILTER") if db_filter_hdr: dbs = [db for db in dbs if re.match(db_filter_hdr, db)]