[fix] trigger links if a new doc is created in javascript

This commit is contained in:
Anand Doshi 2015-10-27 15:23:55 +05:30
parent 6b0369be4b
commit e176c05ab7
2 changed files with 7 additions and 4 deletions

View file

@ -34,6 +34,10 @@ $.extend(frappe.model, {
frappe.model.add_to_locals(doc);
if (!parent_doc) {
doc.__run_link_triggers = 1;
}
return doc;
},
@ -228,9 +232,6 @@ $.extend(frappe.model, {
callback: function(r) {
if(!r.exc) {
frappe.model.sync(r.message);
var doc = frappe.model.get_doc(r.message.doctype, r.message.name);
doc.__mapped = true;
frappe.set_route("Form", r.message.doctype, r.message.name);
}
}

View file

@ -550,13 +550,15 @@ _f.Frm.prototype.setnewdoc = function() {
_f.Frm.prototype.trigger_link_fields = function() {
// trigger link fields which have default values set
if (this.is_new() && !this.doc.__mapped) {
if (this.is_new() && this.doc.__run_link_triggers) {
$.each(this.fields_dict, function(fieldname, field) {
if (field.df.fieldtype=="Link" && this.doc[fieldname]) {
// triggers add fetch, sets value in model and runs triggers
field.set_value(this.doc[fieldname]);
}
});
delete this.doc.__run_link_triggers;
}
}