[FIX] also unfuck just as retarded handling of global buttons in form view

bzr revid: xmo@openerp.com-20120410075914-d7632s7v7bpjseg4
This commit is contained in:
Xavier Morel 2012-04-10 09:59:14 +02:00
parent 59a107a90c
commit 789672bdc9
2 changed files with 18 additions and 12 deletions

View File

@ -75,17 +75,23 @@ openerp.web.FormView = openerp.web.View.extend({
var $dest = this.$element.hasClass("oe_form_container") ? this.$element : this.$element.find('.oe_form_container');
this.rendering_engine.render_to($dest);
this.$buttons = this.options.$buttons || this.$element.find('.oe_form_buttons');
this.$sidebar = this.options.$sidebar || this.$element.find('.oe_form_sidebar');
this.$pager = this.options.$pager || this.$element.find('.oe_form_pager');
this.$buttons.html(QWeb.render("FormView.buttons", {'widget':self}));
this.$buttons.on('click','.oe_form_buttons button.oe_form_button_save',this.on_button_save);
this.$buttons.on('click','.oe_form_buttons button.oe_form_button_cancel',this.on_button_cancel);
this.$buttons.on('click','.oe_form_buttons button.oe_form_button_edit',this.on_button_edit);
this.$buttons.on('click','.oe_form_buttons button.oe_form_button_create',this.on_button_create);
this.$buttons.on('click','.oe_form_buttons button.oe_form_button_duplicate',this.on_button_duplicate);
this.$buttons.on('click','.oe_form_buttons button.oe_form_button_delete',this.on_button_delete);
var buttons_html = QWeb.render("FormView.buttons", {'widget':self});
this.$buttons = $(_.str.isBlank(buttons_html) ? '<div>' : buttons_html);
if (this.options.$buttons) {
this.$buttons.appendTo(this.options.$buttons);
} else {
this.$element.find('.oe_form_buttons').replaceWith(this.$buttons);
}
this.$buttons
.on('click','button.oe_form_button_save',this.on_button_save)
.on('click','button.oe_form_button_cancel',this.on_button_cancel)
.on('click','button.oe_form_button_edit',this.on_button_edit)
.on('click','button.oe_form_button_create',this.on_button_create)
.on('click','button.oe_form_button_duplicate',this.on_button_duplicate)
.on('click','button.oe_form_button_delete',this.on_button_delete);
this.$pager.html(QWeb.render("FormView.pager", {'widget':self}));
this.$pager.on('click','.oe_form_pager button[data-pager-action]',function(event) {
@ -127,7 +133,7 @@ openerp.web.FormView = openerp.web.View.extend({
this.sidebar.$element.show();
}
if (this.$buttons) {
this.$buttons.find('.oe_form_buttons').show();
this.$buttons.show();
this.$buttons.find('.oe_form_button_save').removeClass('oe_form_button_save_dirty');
}
if (this.$pager) {
@ -156,7 +162,7 @@ openerp.web.FormView = openerp.web.View.extend({
this.sidebar.$element.hide();
}
if (this.$buttons) {
this.$buttons.find('.oe_form_buttons').hide();
this.$buttons.hide();
}
if (this.$pager) {
this.$pager.find('.oe_form_pager').hide();

View File

@ -433,7 +433,7 @@ openerp.web.ListView = openerp.web.View.extend( /** @lends openerp.web.ListView#
this.sidebar.$element.show();
}
if (this.$buttons) {
this.$buttons.find('.oe_list_buttons').show();
this.$buttons.show();
}
if (this.$pager) {
this.$pager.find('.oe_list_pager').show();
@ -444,7 +444,7 @@ openerp.web.ListView = openerp.web.View.extend( /** @lends openerp.web.ListView#
this.sidebar.$element.hide();
}
if (this.$buttons) {
this.$buttons.find('.oe_list_buttons').hide();
this.$buttons.hide();
}
if (this.$pager) {
this.$pager.find('.oe_list_pager').hide();