From a81eaeba7a11a85eee5aba95edb7642a6a64a3c3 Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Mon, 29 Jul 2013 12:28:32 +0530 Subject: [PATCH] [minor] [form] fixed 'New ..' refresh issue --- public/js/wn/form/infobar.js | 15 +++++++++++++++ public/js/wn/form/toolbar.js | 18 +----------------- public/js/wn/views/formview.js | 16 +++++++++++----- 3 files changed, 27 insertions(+), 22 deletions(-) diff --git a/public/js/wn/form/infobar.js b/public/js/wn/form/infobar.js index 003f5c1f0c..f83d364e2f 100644 --- a/public/js/wn/form/infobar.js +++ b/public/js/wn/form/infobar.js @@ -108,4 +108,19 @@ wn.ui.form.InfoBar = Class.extend({ } }, + go_prev_next: function(prev) { + var me = this; + wn.call({ + method: "webnotes.widgets.form.utils.get_next", + args: { + doctype: me.frm.doctype, + name: me.frm.docname, + prev: prev ? 1 : 0 + }, + callback: function(r) { + if(r.message) + wn.set_route("Form", me.frm.doctype, r.message); + } + }); + }, }) \ No newline at end of file diff --git a/public/js/wn/form/toolbar.js b/public/js/wn/form/toolbar.js index 6e7907e786..918131e91b 100644 --- a/public/js/wn/form/toolbar.js +++ b/public/js/wn/form/toolbar.js @@ -225,21 +225,5 @@ wn.ui.form.Toolbar = Class.extend({ if(this.actions_setup) return; var menu = this.get_dropdown_menu("Actions"); this.actions_setup = true; - }, - go_prev_next: function(prev) { - var me = this; - wn.call({ - method: "webnotes.widgets.form.utils.get_next", - args: { - doctype: me.frm.doctype, - name: me.frm.docname, - prev: prev ? 1 : 0 - }, - callback: function(r) { - if(r.message) - wn.set_route("Form", me.frm.doctype, r.message); - } - }); - }, - + } }) \ No newline at end of file diff --git a/public/js/wn/views/formview.js b/public/js/wn/views/formview.js index f36efd3652..a8216f4c72 100644 --- a/public/js/wn/views/formview.js +++ b/public/js/wn/views/formview.js @@ -7,7 +7,7 @@ wn.views.FormFactory = wn.views.Factory.extend({ make: function(route) { var me = this, dt = route[1]; - + if(!wn.views.formview[dt]) { me.page = wn.container.add_page("Form/" + dt); wn.views.formview[dt] = me.page; @@ -38,16 +38,22 @@ wn.views.FormFactory = wn.views.Factory.extend({ // make a new doc and set it if(dn && dn.substr(0,4)=="New ") { var new_name = wn.model.make_new_doc_and_get_name(dt); - wn.set_route("Form", dt, new_name) + if(new_name===dn) { + me.load(dt, dn); + } else { + wn.set_route("Form", dt, new_name) + } } else { wn.set_route('404'); } return; } - - wn.container.change_to("Form/" + dt); - wn.views.formview[dt].frm.refresh(dn); + me.load(dt, dn); }); + }, + load: function(dt, dn) { + wn.container.change_to("Form/" + dt); + wn.views.formview[dt].frm.refresh(dn); } }); \ No newline at end of file