[REM] Remove public_uid from request

bzr revid: fme@openerp.com-20130806140636-qreh32s86q1synmk
This commit is contained in:
Fabien Meghazi 2013-08-06 16:06:36 +02:00
parent 972d35b277
commit 67e1d2819b
3 changed files with 19 additions and 15 deletions

View File

@ -9,13 +9,10 @@ from openerp.addons.web.http import request
def auth_method_public():
registry = openerp.modules.registry.RegistryManager.get(request.db)
request.public_uid = None
with registry.cursor() as cr:
request.public_uid = request.registry['ir.model.data'].get_object_reference(cr, openerp.SUPERUSER_ID, 'website', 'public_user')[1]
if not request.session.uid:
request.uid = request.public_uid
else:
request.uid = request.session.uid
if not request.session.uid:
request.uid = registry['website'].get_public_uid()
else:
request.uid = request.session.uid
http.auth_methods['public'] = auth_method_public
@ -23,11 +20,16 @@ class website(osv.osv):
_name = "website" # Avoid website.website convention for conciseness (for new api). Got a special authorization from xmo and rco
_description = "Website"
public_uid = None
def get_public_uid(self):
if not self.public_uid:
self.public_uid = request.registry['ir.model.data'].get_object_reference(request.cr, openerp.SUPERUSER_ID, 'website', 'public_user')[1]
return self.public_uid
def get_rendering_context(self, additional_values=None):
debug = 'debug' in request.params
editable = False
if request.uid or (request.public_uid and request.uid != request.public_uid):
editable = True
editable = request.uid != self.get_public_uid()
values = {
'debug': debug,
'editable': editable,

View File

@ -79,10 +79,11 @@ class website_mail(http.Controller):
@http.route(['/blog/<int:mail_group_id>/<int:blog_id>/post'], type='http', auth="public")
def blog_post(self, mail_group_id=None, blog_id=None, **post):
website = request.registry['website']
url = request.httprequest.host_url
if post.get('body'):
request.session.body = post.get('body')
if not request.uid != request.public_uid:
if request.uid == website.get_public_uid()
return '%s/admin#action=redirect&url=%s/blog/%s/%s/post' % (url, url, mail_group_id, blog_id)
if 'body' in request.session and request.session.body:

View File

@ -8,6 +8,7 @@ from openerp.addons.web import http
from openerp.addons.web.http import request
def get_order(order_id=None):
website = request.registry['website']
order_obj = request.registry.get('sale.order')
# check if order allready exists
if order_id:
@ -18,7 +19,7 @@ def get_order(order_id=None):
if not order_id:
fields = [k for k, v in order_obj._columns.items()]
order_value = order_obj.default_get(request.cr, openerp.SUPERUSER_ID, fields)
order_value['partner_id'] = openerp.SUPERUSER_ID != request.public_uid and \
order_value['partner_id'] = openerp.SUPERUSER_ID != website.get_public_uid() and \
request.registry.get('res.users').browse(request.cr, openerp.SUPERUSER_ID, request.uid).partner_id.id or \
None
order_value.update(order_obj.onchange_partner_id(request.cr, openerp.SUPERUSER_ID, [], request.uid, context={})['value'])
@ -259,8 +260,7 @@ class Ecommerce(http.Controller):
country_state_obj = request.registry.get('res.country.state')
payment_obj = request.registry.get('portal.payment.acquirer')
if request.uid != request.public_uid:
if request.uid != website.get_public_uid():
values['partner'] = user_obj.browse(request.cr, request.uid, request.uid).partner_id
shipping_ids = partner_obj.search(request.cr, request.uid, [("parent_id", "=", values['partner'].id), ('type', "=", 'delivery')])
values['shipping'] = None
@ -280,6 +280,7 @@ class Ecommerce(http.Controller):
@http.route(['/shop/confirm_order'], type='http', auth="public")
def confirm_order(self, **post):
website = request.registry['website']
order = get_current_order()
json = {'error': [], 'validation': False}
@ -323,7 +324,7 @@ class Ecommerce(http.Controller):
'country_id': post['country_id'],
'state_id': post['state_id'],
}
if request.uid != request.public_uid:
if request.uid != website.get_public_uid():
partner_id = user_obj.browse(request.cr, request.uid, request.uid).partner_id.id
partner_obj.write(request.cr, request.uid, [partner_id], partner_value)
else: