diff options
| author | Fabien Meghazi <fme@openerp.com> | 2013-11-27 11:43:07 +0100 |
|---|---|---|
| committer | Fabien Meghazi <fme@openerp.com> | 2013-11-27 11:43:07 +0100 |
| commit | f6e15b4e4da2b533fd3d3500bf9fe8dcdb5ee464 (patch) | |
| tree | 4896cadc9942adb9db7ed3eaee9bdcbe01c850be /addons/website | |
| parent | 633e0f5b8188db052a846cc617f47d153cf44af4 (diff) | |
[FIX] root menu first item triggered on / route
bzr revid: fme@openerp.com-20131127104307-ju8aqu7uuyrfsnpm
Diffstat (limited to 'addons/website')
| -rw-r--r-- | addons/website/controllers/main.py | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/addons/website/controllers/main.py b/addons/website/controllers/main.py index a214e6cd334..26ee229fa33 100644 --- a/addons/website/controllers/main.py +++ b/addons/website/controllers/main.py @@ -32,19 +32,14 @@ MAX_IMAGE_WIDTH, MAX_IMAGE_HEIGHT = IMAGE_LIMITS = (1024, 768) class Website(openerp.addons.web.controllers.main.Home): @website.route('/', type='http', auth="public", multilang=True) def index(self, **kw): - # TODO: check if plain SQL is needed - menu = request.registry['website.menu'] - root_domain = [('parent_id', '=', False)] # TODO: multiwebsite ('website_id', '=', request.website.id), - root_id = menu.search(request.cr, request.uid, root_domain, limit=1, context=request.context)[0] - first_menu = menu.search_read( - request.cr, request.uid, [('parent_id', '=', root_id)], ['url'], - limit=1, order='sequence', context=request.context) - if first_menu: - first_menu = first_menu[0]['url'] - if first_menu and first_menu != '/': - return request.redirect(first_menu) - else: - return self.page("website.homepage") + try: + main_menu = request.registry['ir.model.data'].get_object(request.cr, request.uid, 'website', 'main_menu') + first_menu = main_menu.child_id and main_menu.child_id[0] + if first_menu and first_menu.url != '/': + return request.redirect(first_menu.url) + except: + pass + return self.page("website.homepage") @website.route('/pagenew/<path:path>', type='http', auth="user") def pagenew(self, path, noredirect=NOPE): |
