[ADD] HTML widget in form and page views

bzr revid: xmo@openerp.com-20111221152527-q0vmxj7gsux8kn9y
This commit is contained in:
Xavier Morel 2011-12-21 16:25:27 +01:00
commit ac0b72d363
1 changed files with 28 additions and 1 deletions

View File

@ -3087,6 +3087,32 @@ openerp.web.form.FieldStatus = openerp.web.form.Field.extend({
}
});
openerp.web.form.WidgetHtml = openerp.web.form.Widget.extend({
render: function () {
var $root = $('<div class="oe_form_html_view">');
this.render_children(this, $root);
return $root.html();
},
render_children: function (object, $into) {
var self = this,
fields = this.view.fields_view.fields;
_(object.children).each(function (child) {
if (typeof child === 'string') {
$into.text(child);
} else if (child.tag === 'field') {
$into.append(
new (self.view.registry.get_object('frame'))(
self.view, {tag: 'ueule', attrs: {}, children: [child] })
.render());
} else {
var $child = $(document.createElement(child.tag))
.attr(child.attrs)
.appendTo($into);
self.render_children(child, $child);
}
});
}
});
/**
@ -3120,7 +3146,8 @@ openerp.web.form.widgets = new openerp.web.Registry({
'progressbar': 'openerp.web.form.FieldProgressBar',
'image': 'openerp.web.form.FieldBinaryImage',
'binary': 'openerp.web.form.FieldBinaryFile',
'statusbar': 'openerp.web.form.FieldStatus'
'statusbar': 'openerp.web.form.FieldStatus',
'html': 'openerp.web.form.WidgetHtml'
});