Browse Source

[FIX] make dbfilter_from_header compliant with its documentation

pull/295/head
Stéphane Bidoul 9 years ago
parent
commit
5737ebc97c
  1. 9
      dbfilter_from_header/__init__.py
  2. 5
      dbfilter_from_header/__openerp__.py

9
dbfilter_from_header/__init__.py

@ -28,9 +28,12 @@ db_filter_org = http.db_filter
def db_filter(dbs, httprequest=None): def db_filter(dbs, httprequest=None):
dbs = db_filter_org(dbs, httprequest) dbs = db_filter_org(dbs, httprequest)
httprequest = httprequest or http.request.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: if db_filter_hdr:
dbs = [db for db in dbs if re.match(db_filter_hdr, db)] dbs = [db for db in dbs if re.match(db_filter_hdr, db)]
return dbs return dbs

5
dbfilter_from_header/__openerp__.py

@ -20,7 +20,7 @@
############################################################################## ##############################################################################
{ {
"name": "dbfilter_from_header", "name": "dbfilter_from_header",
"version": "8.0.1.0.0",
"version": "8.0.1.0.1",
"author": "Therp BV,Odoo Community Association (OCA)", "author": "Therp BV,Odoo Community Association (OCA)",
"license": "AGPL-3", "license": "AGPL-3",
"complexity": "normal", "complexity": "normal",
@ -30,8 +30,9 @@
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. proxied host names.
In nginx, use
In nginx, use one of
proxy_set_header X-OpenERP-dbfilter [your filter]; 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. The addon has to be loaded as server-wide module.
""", """,

Loading…
Cancel
Save