Browse Source

[ADD] - cherry picked 5737ebc

12.0
Stéphane Bidoul 9 years ago
committed by Pedro M. Baeza
parent
commit
8593d93b9a
  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