diff --git a/addons/website/__openerp__.py b/addons/website/__openerp__.py index 9161255c835..3969c745d1e 100644 --- a/addons/website/__openerp__.py +++ b/addons/website/__openerp__.py @@ -12,7 +12,7 @@ OpenERP Website CMS 'depends': ['web', 'share', 'mail'], 'installable': True, 'data': [ - 'data/website_data.xml', + 'data/data.xml', 'security/ir.model.access.csv', 'security/ir_ui_view.xml', 'views/website_templates.xml', @@ -22,7 +22,7 @@ OpenERP Website CMS 'views/res_config.xml', ], 'demo': [ - 'data/website_demo.xml', + 'data/demo.xml', ], 'js': ['static/src/js/website.backend.js'], 'qweb' : ['static/src/xml/website.backend.xml'], diff --git a/addons/website/data/website_data.xml b/addons/website/data/data.xml similarity index 100% rename from addons/website/data/website_data.xml rename to addons/website/data/data.xml diff --git a/addons/website/data/website_demo.xml b/addons/website/data/demo.xml similarity index 100% rename from addons/website/data/website_demo.xml rename to addons/website/data/demo.xml diff --git a/addons/website/models/ir_http.py b/addons/website/models/ir_http.py index d8773e6ebfc..044b5a7f26a 100644 --- a/addons/website/models/ir_http.py +++ b/addons/website/models/ir_http.py @@ -31,6 +31,13 @@ class ir_http(orm.AbstractModel): page=PageConverter, ) + def _auth_method_public(self): + # TODO: select user_id from matching website + if not request.session.uid: + request.uid = self.pool['ir.model.data'].xmlid_to_res_id(request.cr, openerp.SUPERUSER_ID, 'base.public_user') + else: + request.uid = request.session.uid + def _dispatch(self): first_pass = not hasattr(request, 'website') request.website = None diff --git a/addons/website/models/website.py b/addons/website/models/website.py index e3c683861f9..ce91e731136 100644 --- a/addons/website/models/website.py +++ b/addons/website/models/website.py @@ -106,10 +106,6 @@ class website(osv.osv): menu = menus and menus[0] or False return dict( map(lambda x: (x, menu), ids) ) - def _get_public_user(self, cr, uid, ids, name='public_user', arg=(), context=None): - ref = self.get_public_user(cr, uid, context=context) - return dict( map(lambda x: (x, ref), ids) ) - _name = "website" # Avoid website.website convention for conciseness (for new api). Got a special authorization from xmo and rco _description = "Website" _columns = { @@ -126,7 +122,7 @@ class website(osv.osv): 'social_googleplus': fields.char('Google+ Account'), 'google_analytics_key': fields.char('Google Analytics Key'), 'user_id': fields.many2one('res.users', string='Public User'), - 'public_user': fields.function(_get_public_user, relation='res.users', type='many2one', string='Public User'), + 'partner_id': fields.related('user_id','partner_id', type='many2one', relation='res.partner', string='Public Partner'), 'menu_id': fields.function(_get_menu, relation='website.menu', type='many2one', string='Main Menu', store= { 'website.menu': (_get_menu_website, ['sequence','parent_id','website_id'], 10) @@ -185,11 +181,6 @@ class website(osv.osv): except: return False - def get_public_user(self, cr, uid, context=None): - uid = openerp.SUPERUSER_ID - res = self.pool['ir.model.data'].get_object_reference(cr, uid, 'base', 'public_user') - return res and res[1] or False - @openerp.tools.ormcache(skiparg=3) def _get_languages(self, cr, uid, id, context=None): website = self.browse(cr, uid, id) @@ -380,7 +371,8 @@ class website(osv.osv): """ router = request.httprequest.app.get_db_router(request.db) # Force enumeration to be performed as public user - uid = self.get_public_user(cr, uid, context=context) + # TODO: use website.user_id instead + uid = self.pool['ir.model.data'].xmlid_to_res_id(request.cr, openerp.SUPERUSER_ID, 'base.public_user') for rule in router.iter_rules(): if not self.rule_is_enumerable(rule): continue diff --git a/addons/website_event_sale/models/website.py b/addons/website_event_sale/models/website.py index e41a7092404..84315b52a77 100644 --- a/addons/website_event_sale/models/website.py +++ b/addons/website_event_sale/models/website.py @@ -5,6 +5,6 @@ from openerp.osv import orm class Website(orm.Model): _inherit = 'website' - def ecommerce_get_product_domain(self): + def sale_product_domain(self): # remove product event from the website content grid and list view (not removed in detail view) - return ['&'] + super(Website, self).ecommerce_get_product_domain() + [('event_ok', '=', False)] + return ['&'] + super(Website, self).sale_product_domain() + [('event_ok', '=', False)] diff --git a/addons/website_event_sale/views/website_event_sale.xml b/addons/website_event_sale/views/website_event_sale.xml index aa56a5542ac..3fe467c0aaa 100644 --- a/addons/website_event_sale/views/website_event_sale.xml +++ b/addons/website_event_sale/views/website_event_sale.xml @@ -13,7 +13,7 @@ -