diff --git a/openerp/addons/base/base_data.xml b/openerp/addons/base/base_data.xml index df6aaee8ac4..ee0d3fa721b 100644 --- a/openerp/addons/base/base_data.xml +++ b/openerp/addons/base/base_data.xml @@ -129,6 +129,19 @@ Administrator /dev/null all + + + Anonymous + public + + + + + + + + + diff --git a/openerp/addons/base/ir/ir_http.py b/openerp/addons/base/ir/ir_http.py index 704bf8b1ec7..5a96bbb1f56 100644 --- a/openerp/addons/base/ir/ir_http.py +++ b/openerp/addons/base/ir/ir_http.py @@ -70,6 +70,12 @@ class ir_http(osv.AbstractModel): request.disable_db = True request.uid = None + def _auth_method_public(self): + if not request.session.uid: + dummy, request.uid = self.pool['ir.model.data'].get_object_reference(request.cr, openerp.SUPERUSER_ID, 'base', 'public_user') + else: + request.uid = request.session.uid + def _authenticate(self, auth_method='user'): if request.session.uid: try: