summaryrefslogtreecommitdiff
path: root/addons/web/static/src
diff options
context:
space:
mode:
authorniv-openerp <nicolas.vanhoren@openerp.com>2012-02-21 11:25:56 +0100
committerniv-openerp <nicolas.vanhoren@openerp.com>2012-02-21 11:25:56 +0100
commit29b3d51d2f56784ecc1bf1b42554d581e68a3b96 (patch)
tree26ad591ef6afd9ab679a68345e85c066bd878a7f /addons/web/static/src
parent7675f273fd9e4e11ea8518fc1d9e68c447b83614 (diff)
parent4f09c66c3b1b7858faf45c04e782210a536c0073 (diff)
[fix] xmo's addiction to pots
bzr revid: nicolas.vanhoren@openerp.com-20120221102556-fb1e6r80dzl0tagd
Diffstat (limited to 'addons/web/static/src')
-rw-r--r--addons/web/static/src/js/view_form.js4
-rw-r--r--addons/web/static/src/js/view_list_editable.js22
-rw-r--r--addons/web/static/src/xml/base.xml29
3 files changed, 27 insertions, 28 deletions
diff --git a/addons/web/static/src/js/view_form.js b/addons/web/static/src/js/view_form.js
index fcad37b8ff4..9e6c5396091 100644
--- a/addons/web/static/src/js/view_form.js
+++ b/addons/web/static/src/js/view_form.js
@@ -103,7 +103,9 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
this.$element.html(this.rendered);
this.root_frame = instanciate_widget(this.registry.get_object('frame'), this, this.fields_view.arch);
- this.root_frame.appendTo($(".oe_form_header", this.$element));
+ var to_append = $(".oe_form_header", this.$element);
+ this.root_frame.appendTo(to_append.length > 0 ? to_append : this.$element);
+ this.root_frame.$element.children().unwrap();
this.$form_header = this.$element.find('.oe_form_header:first');
this.$form_header.find('div.oe_form_pager button[data-pager-action]').click(function() {
diff --git a/addons/web/static/src/js/view_list_editable.js b/addons/web/static/src/js/view_list_editable.js
index c7222455889..6942f720863 100644
--- a/addons/web/static/src/js/view_list_editable.js
+++ b/addons/web/static/src/js/view_list_editable.js
@@ -235,13 +235,10 @@ openerp.web.list_editable = function (openerp) {
}
self.edition = true;
self.edition_id = record_id;
- self.edition_form = _.extend(new openerp.web.ListEditableFormView(self.view, self.dataset, false), {
- form_template: 'ListView.row.form',
- registry: openerp.web.list.form.widgets,
- $element: $new_row
- });
- // HA HA
- self.edition_form.appendTo();
+ self.edition_form = new openerp.web.ListEditableFormView(self.view, self.dataset, false);
+ self.edition_form.$element = $new_row;
+ // HO HO
+ // empty
$.when(self.edition_form.on_loaded(self.get_form_fields_view())).then(function () {
// put in $.when just in case FormView.on_loaded becomes asynchronous
$new_row.find('> td')
@@ -383,7 +380,7 @@ openerp.web.list_editable = function (openerp) {
openerp.web.list.form = {};
}
openerp.web.list.form.WidgetFrame = openerp.web.form.WidgetFrame.extend({
- template: 'ListView.row.frame'
+ form_template: 'ListView.row.frame'
});
var form_widgets = openerp.web.form.widgets;
openerp.web.list.form.widgets = form_widgets.extend({
@@ -418,9 +415,10 @@ openerp.web.list_editable = function (openerp) {
});
openerp.web.ListEditableFormView = openerp.web.FormView.extend({
- init_view: function() {},
- _render_and_insert: function () {
- return this.start();
- }
+ form_template: 'ListView.row.form',
+ init: function() {
+ this._super.apply(this, arguments);
+ this.registry = openerp.web.list.form.widgets;
+ },
});
};
diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml
index 8dae18b2915..10779ee5994 100644
--- a/addons/web/static/src/xml/base.xml
+++ b/addons/web/static/src/xml/base.xml
@@ -728,7 +728,6 @@
</td>
</tr>
<t t-name="ListView.row.form">
- <t t-raw="frame.render()"/>
</t>
<t t-name="FormView">
@@ -1519,21 +1518,21 @@
<td t-if="edited and !options.deletable" class="oe-listview-padding"/>
</t>
</t>
-<t t-name="ListView.row.frame" t-extend="WidgetFrame">
- <t t-jquery="tr">
- $(document.createElement('t'))
- .append(this.contents())
- .attr({
- 't-foreach': this.attr('t-foreach'),
- 't-as': this.attr('t-as')
- })
- .replaceAll(this)
- .after($(document.createElement('td')).append(
- $(document.createElement('button')).attr({
- 'class': 'oe-edit-row-save', 'type': 'button'})
- .html(' ')))
- .unwrap();
+<t t-name="ListView.row.frame">
+ <t t-foreach="widget.table" t-as="row">
+ <t t-foreach="row" t-as="td">
+ <td t-att-colspan="td.colspan gt 1 ? td.colspan : undefined"
+ t-att-width="td.width"
+ t-att-valign="td.table ? 'top' : undefined"
+ t-attf-class="oe_form_frame_cell #{td.classname} #{td.element_class}"
+ >
+ <t t-raw="td.render()"/>
+ </td>
+ </t>
</t>
+ <td>
+ <button class="oe-edit-row-save" type="button"> </button>
+ </td>
</t>
<t t-name="view_editor">
<table class="oe_view_editor">