Merge lp:~openerp-dev/openerp-web/7.0-opw-591158-vme into lp:openerp-web/7.0

Proposed by Vidhin Mehta (OpenERP)
Status: Needs review
Proposed branch: lp:~openerp-dev/openerp-web/7.0-opw-591158-vme
Merge into: lp:openerp-web/7.0
Diff against target: 45 lines (+20/-7)
1 file modified
addons/web/static/src/js/view_form.js (+20/-7)
To merge this branch: bzr merge lp:~openerp-dev/openerp-web/7.0-opw-591158-vme
Reviewer Review Type Date Requested Status
OpenERP Core Team Pending
Review via email: mp+158602@code.launchpad.net

Description of the change

To post a comment you must log in.

Unmerged revisions

3894. By Vidhin Mehta (OpenERP)

[FIX]handle_button should call after form view loaded.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'addons/web/static/src/js/view_form.js'
--- addons/web/static/src/js/view_form.js 2013-04-11 16:32:38 +0000
+++ addons/web/static/src/js/view_form.js 2013-04-12 13:02:30 +0000
@@ -356,6 +356,7 @@
356 }356 }
357 self.$el.add(self.$buttons).removeClass('oe_form_dirty');357 self.$el.add(self.$buttons).removeClass('oe_form_dirty');
358 self.autofocus();358 self.autofocus();
359 self.trigger('record_loaded');
359 });360 });
360 },361 },
361 /**362 /**
@@ -3919,14 +3920,26 @@
3919 }3920 }
3920 var parent_form = this.o2m.view;3921 var parent_form = this.o2m.view;
3921 var self = this;3922 var self = this;
3922 this.ensure_saved().then(function () {3923 var dirty = parent_form.$el.hasClass('oe_form_dirty');
3923 if (parent_form)3924
3924 return parent_form.save();3925 // if parent_form and dirty found than, handle_button function must call after
3925 else3926 // loading all record and initializing form view.
3926 return $.when();3927 var call_handle_button = function(){
3927 }).done(function () {3928 parent_form.off("record_loaded", self, call_handle_button);
3928 self.handle_button(name, id, callback);3929 self.handle_button(name, id, callback);
3929 });3930 };
3931 parent_form.on("record_loaded", self, call_handle_button);
3932
3933 this.ensure_saved().then(function () {
3934 if (parent_form)
3935 return parent_form.save();
3936 else
3937 return $.when();
3938 }).done(function () {
3939 if(!parent_form || (parent_form && !dirty)){
3940 call_handle_button();
3941 }
3942 });
3930 },3943 },
39313944
3932 _before_edit: function () {3945 _before_edit: function () {