Browse Source

[ADD] - cherry picked 5737ebc

pull/382/head
Stéphane Bidoul 9 years ago
committed by Glen Sojo
parent
commit
4a606fe7bf
  1. 9
      dbfilter_from_header/__init__.py
  2. 3
      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

3
dbfilter_from_header/__openerp__.py

@ -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