From a597cc59ef97bed70479f5d2c0d645683ebaa1c9 Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Thu, 24 Oct 2013 16:18:40 +0200 Subject: [PATCH] [WIP] menus bzr revid: fme@openerp.com-20131024141840-ihp2i6huzdlamf94 --- addons/website/models/website.py | 33 ++++++++++++++++++++++ addons/website/views/website_templates.xml | 23 +++++++++++++++ 2 files changed, 56 insertions(+) diff --git a/addons/website/models/website.py b/addons/website/models/website.py index d7f47c01b25..0436fd1931a 100644 --- a/addons/website/models/website.py +++ b/addons/website/models/website.py @@ -361,6 +361,39 @@ class website(osv.osv): html += request.website.render(template, {'object_id': object_id}) return html + def get_menu_tree(self, cr, uid, ids, context=None): + return self.pool['website.menu'].get_tree(cr, uid, ids[0]) + + +class website_menu(osv.osv): + _name = "website.menu" + _description = "Website Menu" + _columns = { + 'name': fields.char('Menu', size=64, required=True, translate=True), + 'url': fields.char('Url', required=True, translate=True), + 'sequence': fields.integer('Sequence'), + # TODO: support multiwebsite once done for ir.ui.views + 'website_id': fields.many2one('website', 'Website'), + 'parent_id': fields.many2one('website.menu', 'Parent Menu', select=True, ondelete="restrict"), + 'parent_left': fields.integer('Parent Left', select=True), + 'parent_right': fields.integer('Parent Right', select=True), + } + + def get_tree(self, cr, uid, website_id=False, context=None): + menu_root = { + 'id': False, + 'name': 'root', + 'url': '', + 'children': [], + 'parent_id': 0, + } + domain = [('parent_id', '=', 0)] # ('website_id', '=', website_id)] + root = self.search(cr, uid, domain, context=context) + if root: + pass + #menu_ids = Menus.search([('id', 'child_of', root)], 0, False, False, context) + return menu_root + class ir_attachment(osv.osv): _inherit = "ir.attachment" def _website_url_get(self, cr, uid, ids, name, arg, context=None): diff --git a/addons/website/views/website_templates.xml b/addons/website/views/website_templates.xml index 430ed49e08b..f14bee88e9a 100644 --- a/addons/website/views/website_templates.xml +++ b/addons/website/views/website_templates.xml @@ -10,6 +10,25 @@ + +