diff --git a/frappe/public/js/frappe/form/script_manager.js b/frappe/public/js/frappe/form/script_manager.js index 1395fd81a7..9d51a0c478 100644 --- a/frappe/public/js/frappe/form/script_manager.js +++ b/frappe/public/js/frappe/form/script_manager.js @@ -79,8 +79,6 @@ frappe.ui.form.ScriptManager = Class.extend({ } function setup_add_fetch(df) { - if(df.fieldname==="size") - console.log(df.fieldname); if((df.fieldtype==="Read Only" || df.read_only==1) && df.options && df.options.indexOf(".")!=-1) { var parts = df.options.split("."); diff --git a/frappe/public/js/frappe/model/create_new.js b/frappe/public/js/frappe/model/create_new.js index 2dc4a8a3a3..a28137744c 100644 --- a/frappe/public/js/frappe/model/create_new.js +++ b/frappe/public/js/frappe/model/create_new.js @@ -33,6 +33,7 @@ $.extend(frappe.model, { } frappe.model.add_to_locals(doc); + return doc; }, diff --git a/frappe/public/js/legacy/form.js b/frappe/public/js/legacy/form.js index 8511ffe048..6388249fac 100644 --- a/frappe/public/js/legacy/form.js +++ b/frappe/public/js/legacy/form.js @@ -399,7 +399,7 @@ _f.Frm.prototype.refresh = function(docname) { $(document).trigger("form-load", [this]); $(this.page.wrapper).on('hide', function(e) { $(document).trigger("form-unload", [me]); - }) + }); } else { this.render_form(is_a_different_doc); if (this.doc.localname) { @@ -538,11 +538,26 @@ _f.Frm.prototype.setnewdoc = function() { frappe.route_options = null; } + + me.trigger_link_fields() + frappe.breadcrumbs.add(me.meta.module, me.doctype) }) } +_f.Frm.prototype.trigger_link_fields = function() { + // trigger link fields which have default values set + if (this.is_new()) { + $.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]); + } + }); + } +} + _f.Frm.prototype.runscript = function(scriptname, callingfield, onrefresh) { var me = this; if(this.docname) {