|
|
@@ -205,7 +205,11 @@ _f.Frm.prototype.watch_model_updates = function() { |
|
|
|
&& me.fields_dict[fieldname].refresh(fieldname); |
|
|
|
|
|
|
|
me.layout.refresh_dependency(); |
|
|
|
return me.script_manager.trigger(fieldname, doc.doctype, doc.name); |
|
|
|
let object = me.script_manager.trigger(fieldname, doc.doctype, doc.name); |
|
|
|
if(object instanceof Promise) { |
|
|
|
me.promises.push(object); |
|
|
|
} |
|
|
|
return object; |
|
|
|
} |
|
|
|
}); |
|
|
|
|
|
|
@@ -586,6 +590,8 @@ _f.Frm.prototype.setnewdoc = function() { |
|
|
|
// this.check_doctype_conflict(docname); |
|
|
|
var me = this; |
|
|
|
|
|
|
|
this.promises = []; |
|
|
|
|
|
|
|
// hide any open grid |
|
|
|
this.script_manager.trigger("before_load", this.doctype, this.docname) |
|
|
|
.then(() => { |
|
|
@@ -696,7 +702,9 @@ _f.Frm.prototype.save = function(save_action, callback, btn, on_error) { |
|
|
|
|
|
|
|
// let any pending js process finish |
|
|
|
setTimeout(function() { |
|
|
|
me._save(save_action, callback, btn, on_error, resolve); |
|
|
|
Promise.all(me.promises).then(() => { |
|
|
|
me._save(save_action, callback, btn, on_error, resolve); |
|
|
|
}); |
|
|
|
}, 100); |
|
|
|
}); |
|
|
|
}; |
|
|
|