diff --git a/__unported__/dbfilter_from_header/__init__.py b/dbfilter_from_header/__init__.py similarity index 65% rename from __unported__/dbfilter_from_header/__init__.py rename to dbfilter_from_header/__init__.py index 00ccc56d5..5f8b01ec0 100644 --- a/__unported__/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/__unported__/dbfilter_from_header/__openerp__.py b/dbfilter_from_header/__openerp__.py similarity index 100% rename from __unported__/dbfilter_from_header/__openerp__.py rename to dbfilter_from_header/__openerp__.py diff --git a/__unported__/dbfilter_from_header/i18n/dbfilter_from_header.pot b/dbfilter_from_header/i18n/dbfilter_from_header.pot similarity index 100% rename from __unported__/dbfilter_from_header/i18n/dbfilter_from_header.pot rename to dbfilter_from_header/i18n/dbfilter_from_header.pot