summaryrefslogtreecommitdiff
path: root/addons/web/static/src
diff options
context:
space:
mode:
authorFabien Meghazi <fme@openerp.com>2012-03-21 16:57:22 +0100
committerFabien Meghazi <fme@openerp.com>2012-03-21 16:57:22 +0100
commit1977f84ff28a6e38ee5ec4c2a61832a4e6258239 (patch)
tree724fe6104b4072d8f300748dee163c190a991992 /addons/web/static/src
parent6879ae00476473eac631396495bc8448c98bbea8 (diff)
[FIX] RenderingEngine: Fixed process_form, removed process_html
bzr revid: fme@openerp.com-20120321155722-a3flfksq8gjonxf4
Diffstat (limited to 'addons/web/static/src')
-rw-r--r--addons/web/static/src/js/view_form.js24
-rw-r--r--addons/web/static/src/xml/base.xml4
2 files changed, 12 insertions, 16 deletions
diff --git a/addons/web/static/src/js/view_form.js b/addons/web/static/src/js/view_form.js
index 6b7e4666032..1f7bb6664f1 100644
--- a/addons/web/static/src/js/view_form.js
+++ b/addons/web/static/src/js/view_form.js
@@ -746,6 +746,7 @@ openerp.web.FormRenderingEngine = openerp.web.Class.extend({
},
set_fields_view: function(fvg) {
this.fvg = fvg;
+ this.legacy_mode = (this.fvg.arch.tag === 'form');
},
set_registry: function(registry) {
this.registry = registry;
@@ -761,10 +762,9 @@ openerp.web.FormRenderingEngine = openerp.web.Class.extend({
this.process(this.$form);
- this.$form.children().appendTo(this.$element);
+ this.$form.appendTo(this.$element);
// OpenERP views spec :
// - @width is obsolete ?
- // TODO: modifiers invisible. Add a special attribute, eg: data-invisible that should be used in order to create openerp.form.InvisibleWidgetG
this.$element.find('field, button').each(function() {
var $elem = $(this),
@@ -814,20 +814,16 @@ openerp.web.FormRenderingEngine = openerp.web.Class.extend({
}
},
process_form: function($form) {
- this.legacy_mode = true;
- this.process_html.apply(this, arguments);
- },
- process_html: function($el) {
- var self = this,
- $root = this.render_element('FormRenderingRoot', $el.getAttributes()),
- $dst = this.legacy_mode ? $root.find('group:first') : $root;
- $el.children().appendTo($dst);
- if ($el[0] === this.$form[0]) {
- this.$form = $root;
+ var $new_form = this.render_element('FormRenderingForm', $form.getAttributes());
+ $dst = this.legacy_mode ? $new_form.find('group:first') : $new_form;
+ $form.children().appendTo($dst);
+ if ($form[0] === this.$form[0]) {
+ // If root element, replace it
+ this.$form = $new_form;
} else {
- $el.before($root);
+ $form.before($new_form).remove();
}
- self.process($root);
+ this.process($new_form);
},
preprocess_field: function($field) {
var name = $field.attr('name'),
diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml
index d8598d8ec2d..ea3e198e9ef 100644
--- a/addons/web/static/src/xml/base.xml
+++ b/addons/web/static/src/xml/base.xml
@@ -726,6 +726,7 @@
</t>
</div>
</div>
+ <div style="clear: both;"/>
<div class="oe_form_container"/>
</div>
</t>
@@ -833,9 +834,8 @@
</table>
</form>
-<t t-name="FormRenderingRoot">
+<t t-name="FormRenderingForm">
<div class="oe_form">
- <h3 style="display: none"><!-- TODO: check how 'string' should be used in new layout --><t t-esc="string"/></h3>
<group t-if="legacy_mode" col="4"/>
</div>
</t>