Merge pull request #4500 from rmehta/fixes-to-tree

[fix] rename tree item fixes #2524
diff --git a/erpnext/accounts/page/accounts_browser/accounts_browser.js b/erpnext/accounts/page/accounts_browser/accounts_browser.js
index 403c1ce..c60713a 100644
--- a/erpnext/accounts/page/accounts_browser/accounts_browser.js
+++ b/erpnext/accounts/page/accounts_browser/accounts_browser.js
@@ -146,7 +146,7 @@
 					label: __("Rename"),
 					click: function(node) {
 						frappe.model.rename_doc(me.ctype, node.label, function(new_name) {
-							node.reload();
+							node.reload_parent();
 						});
 					},
 					btnClass: "hidden-xs"
@@ -166,8 +166,8 @@
 				var dr_or_cr = node.data.balance < 0 ? "Cr" : "Dr";
 				if (me.ctype == 'Account' && node.data && node.data.balance!==undefined) {
 					$('<span class="balance-area pull-right text-muted small">'
-						+ (node.data.balance_in_account_currency ? 
-							(format_currency(Math.abs(node.data.balance_in_account_currency), 
+						+ (node.data.balance_in_account_currency ?
+							(format_currency(Math.abs(node.data.balance_in_account_currency),
 								node.data.account_currency) + " / ") : "")
 						+ format_currency(Math.abs(node.data.balance), node.data.company_currency)
 						+ " " + dr_or_cr
@@ -219,7 +219,7 @@
 					description: __("Optional. This setting will be used to filter in various transactions.") },
 				{fieldtype:'Float', fieldname:'tax_rate', label:__('Tax Rate')},
 				{fieldtype:'Link', fieldname:'warehouse', label:__('Warehouse'), options:"Warehouse"},
-				{fieldtype:'Link', fieldname:'account_currency', label:__('Currency'), options:"Currency", 
+				{fieldtype:'Link', fieldname:'account_currency', label:__('Currency'), options:"Currency",
 					description: __("Optional. Sets company's default currency, if not specified.")}
 			]
 		})
@@ -243,7 +243,7 @@
 			$(fd.tax_rate.wrapper).toggle(fd.account_type.get_value()==='Tax');
 			$(fd.warehouse.wrapper).toggle(fd.account_type.get_value()==='Warehouse');
 		})
-		
+
 		// root type if root
 		$(fd.root_type.wrapper).toggle(node.root);
 
@@ -261,7 +261,7 @@
 			var node = me.tree.get_selected_node();
 			v.parent_account = node.label;
 			v.company = me.company;
-			
+
 			if(node.root) {
 				v.is_root = true;
 				v.parent_account = null;
@@ -278,7 +278,7 @@
 					if(node.expanded) {
 						node.toggle_node();
 					}
-					node.reload();
+					node.load();
 				}
 			});
 		});
@@ -324,7 +324,7 @@
 					if(node.expanded) {
 						node.toggle_node();
 					}
-					node.reload();
+					node.load();
 				}
 			});
 		});
diff --git a/erpnext/accounts/page/accounts_browser/accounts_browser.py b/erpnext/accounts/page/accounts_browser/accounts_browser.py
index 891a05d..d96b213 100644
--- a/erpnext/accounts/page/accounts_browser/accounts_browser.py
+++ b/erpnext/accounts/page/accounts_browser/accounts_browser.py
@@ -18,29 +18,31 @@
 def get_children():
 	args = frappe.local.form_dict
 	ctype, company = args['ctype'], args['comp']
+	fieldname = frappe.db.escape(ctype.lower().replace(' ','_'))
+	doctype = frappe.db.escape(ctype)
 
 	# root
 	if args['parent'] in ("Accounts", "Cost Centers"):
-		select_cond = ", root_type, report_type, account_currency" if ctype=="Account" else ""
+		fields = ", root_type, report_type, account_currency" if ctype=="Account" else ""
 		acc = frappe.db.sql(""" select
-			name as value, is_group as expandable %s
-			from `tab%s`
-			where ifnull(`parent_%s`,'') = ''
+			name as value, is_group as expandable {fields}
+			from `tab{doctype}`
+			where ifnull(`parent_{fieldname}`,'') = ''
 			and `company` = %s	and docstatus<2
-			order by name""" % (select_cond, frappe.db.escape(ctype), frappe.db.escape(ctype.lower().replace(' ','_')), '%s'),
+			order by name""".format(fields=fields, fieldname = fieldname, doctype=doctype),
 				company, as_dict=1)
 
 		if args["parent"]=="Accounts":
 			sort_root_accounts(acc)
 	else:
 		# other
-		select_cond = ", account_currency" if ctype=="Account" else ""
+		fields = ", account_currency" if ctype=="Account" else ""
 		acc = frappe.db.sql("""select
-			name as value, is_group as expandable %s
-	 		from `tab%s`
-			where ifnull(`parent_%s`,'') = %s
+			name as value, is_group as expandable, parent_{fieldname} as parent {fields}
+	 		from `tab{doctype}`
+			where ifnull(`parent_{fieldname}`,'') = %s
 			and docstatus<2
-			order by name""" % (select_cond, frappe.db.escape(ctype), frappe.db.escape(ctype.lower().replace(' ','_')), '%s'),
+			order by name""".format(fields=fields, fieldname=fieldname, doctype=doctype),
 				args['parent'], as_dict=1)
 
 	if ctype == 'Account':
@@ -48,7 +50,7 @@
 		for each in acc:
 			each["company_currency"] = company_currency
 			each["balance"] = flt(get_balance_on(each.get("value"), in_account_currency=False))
-			
+
 			if each.account_currency != company_currency:
 				each["balance_in_account_currency"] = flt(get_balance_on(each.get("value")))
 
diff --git a/erpnext/selling/page/sales_browser/sales_browser.js b/erpnext/selling/page/sales_browser/sales_browser.js
index a99fe72..55fa57a 100644
--- a/erpnext/selling/page/sales_browser/sales_browser.js
+++ b/erpnext/selling/page/sales_browser/sales_browser.js
@@ -155,7 +155,7 @@
 						if(node.expanded) {
 							node.toggle_node();
 						}
-						node.reload();
+						node.reload_parent();
 					}
 				}
 			});