[ADD] Added notebook processing
authorFabien Meghazi <fme@openerp.com>
Thu, 15 Mar 2012 10:53:24 +0000 (11:53 +0100)
committerFabien Meghazi <fme@openerp.com>
Thu, 15 Mar 2012 10:53:24 +0000 (11:53 +0100)
bzr revid: fme@openerp.com-20120315105324-452qttsl4afmmvmj

addons/web/static/src/js/view_form.js
addons/web/static/src/xml/base.xml

index d8d5194..fea006e 100644 (file)
@@ -821,7 +821,21 @@ openerp.web.FormRenderingEngine = openerp.web.Widget.extend({
         });
         $group.before($new_group).remove();
     },
-    process_notebook: function($group, $form) {
+    process_notebook: function($notebook, $form) {
+        var pages = [];
+        $notebook.find('> page').each(function() {
+            var $page = $(this),
+                page_attrs = $page.getAttributes();
+            page_attrs.id = _.uniqueId('notebook_page_');
+            pages.push(page_attrs);
+            var $new_page = $(QWeb.render('FormRenderingNotebookPage', page_attrs));
+            $page.children().appendTo($new_page);
+            $page.before($new_page).remove();
+        });
+        var $new_notebook = $(QWeb.render('FormRenderingNotebook', { pages : pages }));
+        $notebook.children().appendTo($new_notebook);
+        $notebook.before($new_notebook).remove();
+        $new_notebook.tabs();
     },
     process_separator: function($group, $form) {
     },
index 5fd60b1..94af4aa 100644 (file)
 <t t-name="FormRenderingNotebook">
     <div class="oe_form_notebook">
         <ul>
-            <li t-foreach="widget.pages" t-as="page">
-                <a t-attf-href="##{page.page_id}">
-                    <t t-esc="page.node.attrs.string"/>
+            <li t-foreach="pages" t-as="page">
+                <a t-attf-href="##{page.id}">
+                    <t t-esc="page.string"/>
                 </a>
             </li>
         </ul>
     </div>
 </t>
 <t t-name="FormRenderingNotebookPage">
-    <div class="oe_form_notebook_page" t-att-id="widget.page_id"/>
+    <div class="oe_form_notebook_page" t-att-id="id"/>
 </t>
 <t t-name="FormRenderingLabel">
     <label  t-att-for="for"