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. + +* 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: -* proxy_set_header X-OpenERP-dbfilter [your filter]; -* proxy_set_header X-Odoo-dbfilter [your filter]; + ``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",