diff options
| author | Antony Lesuisse <al@openerp.com> | 2012-08-11 00:50:46 +0200 |
|---|---|---|
| committer | Antony Lesuisse <al@openerp.com> | 2012-08-11 00:50:46 +0200 |
| commit | 4e4a7dcbeec869464a5fb442088217b0d6cb2fb7 (patch) | |
| tree | d9540e04b987ae96e2318ab67f973d0263a555c0 /addons/document_page | |
| parent | 4fb193140b5cd39c120ae3c3e19c64f153866217 (diff) | |
document_page ready
bzr revid: al@openerp.com-20120810225046-qs3liea2s76lh6v0
Diffstat (limited to 'addons/document_page')
| -rw-r--r-- | addons/document_page/document_page.py | 10 | ||||
| -rw-r--r-- | addons/document_page/document_page_view.xml | 42 | ||||
| -rw-r--r-- | addons/document_page/wizard/document_page_create_menu.py | 17 | ||||
| -rw-r--r-- | addons/document_page/wizard/document_page_create_menu_view.xml | 1 |
4 files changed, 49 insertions, 21 deletions
diff --git a/addons/document_page/document_page.py b/addons/document_page/document_page.py index ffcfc07d5ea..486835aeab0 100644 --- a/addons/document_page/document_page.py +++ b/addons/document_page/document_page.py @@ -36,13 +36,13 @@ class document_page(osv.osv): if index: r = "<ul>" + "".join(index) + "</ul>" else: - r = page.name + r = '<a href="#id=%s">%s</a>'%(page.id,page.name) return r def _get_display_content(self, cr, uid, ids, name, args, context=None): res = {} for page in self.browse(cr, uid, ids, context=context): - if page.type == "index": + if page.type == "category": content = self._get_page_index(cr, uid, page) else: content = page.content @@ -51,9 +51,9 @@ class document_page(osv.osv): _columns = { 'name': fields.char('Title', required=True), - 'type':fields.selection([('content','Content'), ('index','Section')], 'Type', help="Page type"), + 'type':fields.selection([('content','Content'), ('category','Category')], 'Type', help="Page type"), - 'parent_id': fields.many2one('document.page', 'Section', domain=[('type','=','index')]), + 'parent_id': fields.many2one('document.page', 'Category', domain=[('type','=','category')]), 'child_ids': fields.one2many('document.page', 'parent_id', 'Children'), 'content': fields.text("Content"), @@ -75,7 +75,7 @@ class document_page(osv.osv): res = {} if parent_id and not content: parent = self.browse(cr, uid, parent_id, context=context) - if parent.type == "index": + if parent.type == "category": res['value'] = { 'content': parent.content, } diff --git a/addons/document_page/document_page_view.xml b/addons/document_page/document_page_view.xml index 3cfd3b9665b..53ae52818a8 100644 --- a/addons/document_page/document_page_view.xml +++ b/addons/document_page/document_page_view.xml @@ -40,18 +40,14 @@ <field name="type">form</field> <field name="arch" type="xml"> <form string="Document Page" version="7.0"> - <div class="oe_right oe_button_box"> - <button name="%(document_page.action_wiki_create_menu)d" string="Create Menu" type="action" class="oe_edit_only"/> - <button name="%(document_page.action_wiki_create_menu)d" string="History" type="action" class="oe_edit_only"/> - </div> <div class="oe_title"> <label for="name" class="oe_edit_only"/> - <h1><field name="name" select="1" /></h1> + <h1><field name="name"/></h1> + <field name="type" invisible="1"/> </div> <group class="oe_edit_only"> <group> - <field name="parent_id" on_change="onchange_parent_id(parent_id,content)" string="Section"/> - <field name="type"/> + <field name="parent_id" on_change="onchange_parent_id(parent_id,content)" string="Category"/> </group> <group> <field name="write_uid" groups="base.group_no_one"/> @@ -64,7 +60,7 @@ This will be used as template content for all new page of this section. </div> <field name="content" placeholder="e.g. Once upon a time..." class="oe_edit_only"/> - <field name="display_content" widget="html"/> + <field name="display_content" widget="html" class="oe_view_only"/> </form> </field> </record> @@ -87,16 +83,29 @@ </field> </record> <!-- page action --> + <record id="action_category" model="ir.actions.act_window"> + <field name="name">Category</field> + <field name="res_model">document.page</field> + <field name="domain">[('type','=','category')]</field> + <field name="context">{'default_type': 'category'}</field> + <field name="view_type">form</field> + <field name="view_mode">tree,form</field> + <field name="view_id" ref="view_wiki_tree"/> + <field name="search_view_id" ref="view_wiki_filter"/> + </record> + <menuitem id="menu_category" parent="menu_wiki" name="Categories" action="action_category" sequence="10"/> <record id="action_page" model="ir.actions.act_window"> <field name="name">Pages</field> <field name="res_model">document.page</field> + <field name="domain">[('type','=','content')]</field> + <field name="context">{'default_type': 'content'}</field> <field name="view_type">form</field> <field name="view_mode">tree,form</field> <field name="view_id" ref="view_wiki_tree"/> <field name="search_view_id" ref="view_wiki_filter"/> <field name="help">Create web pages</field> </record> - <menuitem parent="menu_wiki" id="menu_page" name="Pages" action="action_page"/> + <menuitem id="menu_page" parent="menu_wiki" name="Pages" action="action_page" sequence="20"/> <!-- History Tree view --> <record model="ir.ui.view" id="view_wiki_history_tree"> @@ -134,13 +143,22 @@ <field name="view_type">form</field> <field name="view_mode">tree,form</field> </record> - <menuitem parent="menu_wiki" id="menu_page_history" name="Pages history" action="action_history" groups="base.group_no_one"/> - <act_window - id="act_wiki_wiki_history" + <menuitem id="menu_page_history" parent="menu_wiki" name="Pages history" action="action_history" sequence="30" groups="base.group_no_one"/> + <act_window + id="action_related_page_history" context="{'search_default_page_id': [active_id], 'default_page_id': active_id}" + domain="[('page_id','=',active_id)]" name="Page History" res_model="document.page.history" src_model="document.page"/> + <act_window + id="action_related_page_create_menu" + name="Create Menu" + res_model="document.page.create.menu" + target="new" + view_type="form" + view_mode="form" + src_model="document.page"/> </data> </openerp> diff --git a/addons/document_page/wizard/document_page_create_menu.py b/addons/document_page/wizard/document_page_create_menu.py index f35107511bf..591cc845a93 100644 --- a/addons/document_page/wizard/document_page_create_menu.py +++ b/addons/document_page/wizard/document_page_create_menu.py @@ -27,9 +27,20 @@ class document_page_create_menu(osv.osv_memory): _description = "Wizard Create Menu" _columns = { + 'menu_name': fields.char('Menu Name', size=256, required=True), 'menu_parent_id': fields.many2one('ir.ui.menu', 'Parent Menu', required=True), } + def default_get(self, cr, uid, fields, context=None): + if context is None: + context = {} + res = super(document_page_create_menu,self).default_get(cr, uid, fields, context=context) + page_id = context.get('active_id') + obj_page = self.pool.get('document.page') + page = obj_page.browse(cr, uid, page_id, context=context) + res['menu_name'] = page.name + return res + def document_page_menu_create(self, cr, uid, ids, context=None): if context is None: context = {} @@ -38,8 +49,7 @@ class document_page_create_menu(osv.osv_memory): obj_menu = self.pool.get('ir.ui.menu') obj_action = self.pool.get('ir.actions.act_window') page_id = context.get('active_id', False) - if not page_id: - return {} + page = obj_page.browse(cr, uid, page_id, context=context) datas = self.browse(cr, uid, ids, context=context) data = False @@ -57,13 +67,12 @@ class document_page_create_menu(osv.osv_memory): 'target': 'inline', 'nodestroy': True, } - page = obj_page.browse(cr, uid, page_id, context=context) value['domain'] = "[('parent_id','=',%d)]" % (page.id) value['res_id'] = page.id action_id = obj_action.create(cr, uid, value) menu_id = obj_menu.create(cr, uid, { - 'name': page.name, + 'name': data.menu_name, 'parent_id':data.menu_parent_id.id, 'icon': 'STOCK_DIALOG_QUESTION', 'action': 'ir.actions.act_window,'+ str(action_id), diff --git a/addons/document_page/wizard/document_page_create_menu_view.xml b/addons/document_page/wizard/document_page_create_menu_view.xml index 5e2b0e56dab..6d689dfe41d 100644 --- a/addons/document_page/wizard/document_page_create_menu_view.xml +++ b/addons/document_page/wizard/document_page_create_menu_view.xml @@ -9,6 +9,7 @@ <field name="arch" type="xml"> <form string="Create Menu" version="7.0"> <group string="Menu Information"> + <field name="menu_name" /> <field name="menu_parent_id" /> </group> <footer> |
