POS  Make Payment dialog box fix #1441
diff --git a/erpnext/accounts/doctype/sales_invoice/pos.js b/erpnext/accounts/doctype/sales_invoice/pos.js
index 9e81f77..2dcfc68 100644
--- a/erpnext/accounts/doctype/sales_invoice/pos.js
+++ b/erpnext/accounts/doctype/sales_invoice/pos.js
@@ -104,7 +104,7 @@
 					</div>\
 				</div>\
 			</div></div>');
-		
+
 		this.check_transaction_type();
 		this.make();
 
@@ -134,7 +134,7 @@
 	set_transaction_defaults: function(party, export_or_import) {
 		var me = this;
 		this.party = party;
-		this.price_list = (party == "Customer" ? 
+		this.price_list = (party == "Customer" ?
 			this.frm.doc.selling_price_list : this.frm.doc.buying_price_list);
 		this.price_list_field = (party == "Customer" ? "selling_price_list" : "buying_price_list");
 		this.sales_or_purchase = (party == "Customer" ? "Sales" : "Purchase");
@@ -169,7 +169,7 @@
 		this.party_field.make_input();
 		this.party_field.$input.on("change", function() {
 			if(!me.party_field.autocomplete_open)
-				frappe.model.set_value(me.frm.doctype, me.frm.docname, 
+				frappe.model.set_value(me.frm.doctype, me.frm.docname,
 					me.party.toLowerCase(), this.value);
 		});
 	},
@@ -258,7 +258,7 @@
 									<div class="small">%(item_code)s</div>\
 									<div class="small">%(item_name)s</div>\
 									<div class="small">%(item_price)s</div>\
-								</div>', 
+								</div>',
 							{
 								item_code: obj.name,
 								item_price: format_currency(obj.price_list_rate, obj.currency),
@@ -271,10 +271,10 @@
 				// if form is local then allow this function
 				$(me.wrapper).find("div.pos-item").on("click", function() {
 					if(me.frm.doc.docstatus==0) {
-						if(!me.frm.doc[me.party.toLowerCase()] && ((me.frm.doctype == "Quotation" && 
-								me.frm.doc.quotation_to == "Customer") 
+						if(!me.frm.doc[me.party.toLowerCase()] && ((me.frm.doctype == "Quotation" &&
+								me.frm.doc.quotation_to == "Customer")
 								|| me.frm.doctype != "Quotation")) {
-							msgprint("Please select {0} first.", [me.party]);
+							msgprint(__("Please select {0} first.", [me.party]));
 							return;
 						}
 						else
@@ -290,7 +290,7 @@
 
 		// get no_of_items
 		var no_of_items = me.wrapper.find("#cart tbody tr").length;
-		
+
 		// check whether the item is already added
 		if (no_of_items != 0) {
 			$.each(this.frm.doc[this.frm.cscript.fname] || [], function(i, d) {
@@ -303,7 +303,7 @@
 				}
 			});
 		}
-		
+
 		// if item not found then add new item
 		if (!caught)
 			this.add_new_item_to_grid(item_code, serial_no);
@@ -314,7 +314,7 @@
 	add_new_item_to_grid: function(item_code, serial_no) {
 		var me = this;
 
-		var child = frappe.model.add_child(me.frm.doc, this.frm.doctype + " Item", 
+		var child = frappe.model.add_child(me.frm.doc, this.frm.doctype + " Item",
 			this.frm.cscript.fname);
 		child.item_code = item_code;
 
@@ -423,7 +423,7 @@
 		$(this.wrapper).find(".tax-table")
 			.toggle((taxes && taxes.length) ? true : false)
 			.find("tbody").empty();
-		
+
 		$.each(taxes, function(i, d) {
 			if (d.tax_amount) {
 				$(repl('<tr>\
@@ -432,7 +432,7 @@
 				<tr>', {
 					description: d.description,
 					rate: ((d.charge_type == "Actual") ? '' : ("(" + d.rate + "%)")),
-					tax_amount: format_currency(flt(d.tax_amount)/flt(me.frm.doc.conversion_rate), 
+					tax_amount: format_currency(flt(d.tax_amount)/flt(me.frm.doc.conversion_rate),
 						me.frm.doc.currency)
 				})).appendTo(".tax-table tbody");
 			}
@@ -440,14 +440,14 @@
 	},
 	set_totals: function() {
 		var me = this;
-		this.wrapper.find(".net-total").text(format_currency(this.frm.doc[this.net_total], 
+		this.wrapper.find(".net-total").text(format_currency(this.frm.doc[this.net_total],
 			me.frm.doc.currency));
-		this.wrapper.find(".grand-total").text(format_currency(this.frm.doc[this.grand_total], 
+		this.wrapper.find(".grand-total").text(format_currency(this.frm.doc[this.grand_total],
 			me.frm.doc.currency));
-		
+
 		$(".paid-amount-area").toggle(!!this.frm.doc.paid_amount);
 		if(this.frm.doc.paid_amount) {
-			this.wrapper.find(".paid-amount").text(format_currency(this.frm.doc.paid_amount, 
+			this.wrapper.find(".paid-amount").text(format_currency(this.frm.doc.paid_amount,
 				me.frm.doc.currency));
 		}
 	},
@@ -498,7 +498,7 @@
 		$(this.wrapper)
 			.find(".remove-items, .make-payment, .increase-qty, .decrease-qty")
 			.toggle(this.frm.doc.docstatus===0);
-			
+
 		$(this.wrapper).find('input, button').prop("disabled", !(this.frm.doc.docstatus===0));
 	},
 	hide_payment_button: function() {
@@ -562,15 +562,16 @@
 		var me = this;
 		var no_of_items = $(this.wrapper).find("#cart tbody tr").length;
 		var mode_of_payment = [];
-		
+
 		if (no_of_items == 0)
 			msgprint(__("Payment cannot be made for empty cart"));
 		else {
 			frappe.call({
 				method: 'erpnext.accounts.doctype.sales_invoice.pos.get_mode_of_payment',
 				callback: function(r) {
-					if(!r.message.length) {
+					if(!r.message) {
 						msgprint(__("Please add to Modes of Payment from Setup."))
+						return;
 					}
 					for (x=0; x<=r.message.length - 1; x++) {
 						mode_of_payment.push(r.message[x].name);
@@ -579,10 +580,10 @@
 					// show payment wizard
 					var dialog = new frappe.ui.Dialog({
 						width: 400,
-						title: 'Payment', 
+						title: 'Payment',
 						fields: [
 							{fieldtype:'Data', fieldname:'total_amount', label:'Total Amount', read_only:1},
-							{fieldtype:'Select', fieldname:'mode_of_payment', label:'Mode of Payment', 
+							{fieldtype:'Select', fieldname:'mode_of_payment', label:'Mode of Payment',
 								options:mode_of_payment.join('\n'), reqd: 1},
 							{fieldtype:'Button', fieldname:'pay', label:'Pay'}
 						]
@@ -592,7 +593,7 @@
 					});
 					dialog.show();
 					dialog.get_input("total_amount").prop("disabled", true);
-					
+
 					dialog.fields_dict.pay.input.onclick = function() {
 						me.frm.set_value("mode_of_payment", dialog.get_values().mode_of_payment);
 						me.frm.set_value("paid_amount", dialog.get_values().total_amount);