merge
diff --git a/erpnext/accounts/doctype/payable_voucher/payable_voucher.js b/erpnext/accounts/doctype/payable_voucher/payable_voucher.js
index a465ec0..99bd24c 100644
--- a/erpnext/accounts/doctype/payable_voucher/payable_voucher.js
+++ b/erpnext/accounts/doctype/payable_voucher/payable_voucher.js
@@ -45,11 +45,14 @@
 //------------------------
 cur_frm.cscript.onload_post_render = function(doc, dt, dn) {
 	var callback = function(doc, dt, dn) {
-		if(doc.__islocal && doc.supplier) cur_frm.cscript.supplier(doc,dt,dn);
+		var callback1 = function(doc, dt, dn) {
+			if(doc.__islocal && doc.supplier) cur_frm.cscript.supplier(doc,dt,dn);
+		}
+	
+		// defined in purchase_common.js
+		cur_frm.cscript.update_item_details(doc, dt, dn, callback1);
 	}
-		
-	// defined in purchase_common.js
-	cur_frm.cscript.update_item_details(doc, cdt, cdn, callback);
+	cur_frm.cscript.dynamic_label(doc, dt, dn, callback);
 }
 
 // Refresh
@@ -58,7 +61,7 @@
 	
 	cur_frm.clear_custom_buttons();
 
-	cur_frm.cscript.dynamic_label(doc, cdt, cdn);
+	if (!cur_frm.cscript.is_onload) cur_frm.cscript.dynamic_label(doc, dt, dn);
 
 
 	// Show / Hide button
diff --git a/erpnext/accounts/doctype/payable_voucher/payable_voucher.py b/erpnext/accounts/doctype/payable_voucher/payable_voucher.py
index fe733f7..1a09a45 100644
--- a/erpnext/accounts/doctype/payable_voucher/payable_voucher.py
+++ b/erpnext/accounts/doctype/payable_voucher/payable_voucher.py
@@ -168,9 +168,6 @@
 		return ret
 
 
-	def get_comp_base_currency(self):
-		return get_obj('Purchase Common').get_comp_base_currency(self.doc.company)
-	
 
 # *************************** Server Utility Functions *****************************
 	# Get Company abbr
diff --git a/erpnext/buying/doctype/purchase_common/purchase_common.js b/erpnext/buying/doctype/purchase_common/purchase_common.js
index 52f8e53..317df51 100644
--- a/erpnext/buying/doctype/purchase_common/purchase_common.js
+++ b/erpnext/buying/doctype/purchase_common/purchase_common.js
@@ -92,39 +92,36 @@
 
 
 var set_dynamic_label_child = function(doc, cdt, cdn, base_curr) {
-		// item table flds
-		item_cols_base = {'purchase_ref_rate': 'Ref Rate', 'amount': 'Amount'};
-		item_cols_import = {'import_rate': 'Rate', 'import_ref_rate': 'Ref Rate', 'import_amount': 'Amount'};
+	// item table flds
+	item_cols_base = {'purchase_ref_rate': 'Ref Rate', 'amount': 'Amount'};
+	item_cols_import = {'import_rate': 'Rate', 'import_ref_rate': 'Ref Rate', 'import_amount': 'Amount'};
 		
-		for (d in item_cols_base) $('[data-grid-fieldname="'+cur_frm.cscript.tname+'-'+d+'"]').html(item_cols_base[d]+' ('+base_curr+')');
-		for (d in item_cols_import) $('[data-grid-fieldname="'+cur_frm.cscript.tname+'-'+d+'"]').html(item_cols_import[d]+' ('+doc.currency+')');
+	for (d in item_cols_base) $('[data-grid-fieldname="'+cur_frm.cscript.tname+'-'+d+'"]').html(item_cols_base[d]+' ('+base_curr+')');
+	for (d in item_cols_import) $('[data-grid-fieldname="'+cur_frm.cscript.tname+'-'+d+'"]').html(item_cols_import[d]+' ('+doc.currency+')');
 		
-		var hide = (doc.currency == sys_defaults['currency']) ? false : true;
-		for (f in item_cols_base) cur_frm.fields_dict[cur_frm.cscript.fname].grid.set_column_disp(f, hide);
+	var hide = (doc.currency == sys_defaults['currency']) ? false : true;
+	for (f in item_cols_base) cur_frm.fields_dict[cur_frm.cscript.fname].grid.set_column_disp(f, hide);
+	if (doc.doctype == 'Payable Voucher') {
+		$('[data-grid-fieldname="'+cur_frm.cscript.tname+'-rate"]').html('Rate ('+base_curr+')');
+		cur_frm.fields_dict[cur_frm.cscript.fname].grid.set_column_disp('rate', hide);
+		// advance table flds
+		adv_cols = {'advance_amount': 'Advance Amount', 'allocated_amount': 'Allocated Amount', 'tds_amount': 'TDS Amount', 'tds_allocated': 'TDS Allocated'}
+		for (d in adv_cols) $('[data-grid-fieldname="Advance Allocation Detail-'+d+'"]').html(adv_cols[d]+' ('+base_curr+')');	
+	}
+	else {
+		$('[data-grid-fieldname="'+cur_frm.cscript.tname+'-purchase_rate"]').html('Rate ('+base_curr+')');
+		cur_frm.fields_dict[cur_frm.cscript.fname].grid.set_column_disp('purchase_rate', hide);
+	}
 
-		if (doc.doctype == 'Payable Voucher') {
-			$('[data-grid-fieldname="'+cur_frm.cscript.tname+'-rate"]').html('Rate ('+base_curr+')');
-			cur_frm.fields_dict[cur_frm.cscript.fname].grid.set_column_disp('rate', hide);
-			// advance table flds
-			adv_cols = {'advance_amount': 'Advance Amount', 'allocated_amount': 'Allocated Amount', 'tds_amount': 'TDS Amount', 'tds_allocated': 'TDS Allocated'}
-			for (d in adv_cols) $('[data-grid-fieldname="Advance Allocation Detail-'+d+'"]').html(adv_cols[d]+' ('+base_curr+')');	
-		}
-		else {
-			$('[data-grid-fieldname="'+cur_frm.cscript.tname+'-purchase_rate"]').html('Rate ('+base_curr+')');
-			cur_frm.fields_dict[cur_frm.cscript.fname].grid.set_column_disp('purchase_rate', hide);
-		}
-
-		//tax table flds
-		tax_cols = {'tax_amount': 'Amount', 'total': 'Aggregate Total'};
-		for (d in tax_cols) $('[data-grid-fieldname="Purchase Tax Detail-'+d+'"]').html(tax_cols[d]+' ('+base_curr+')');	
-
-
+	//tax table flds
+	tax_cols = {'tax_amount': 'Amount', 'total': 'Aggregate Total'};
+	for (d in tax_cols) $('[data-grid-fieldname="Purchase Tax Detail-'+d+'"]').html(tax_cols[d]+' ('+base_curr+')');	
 }
 
 // Change label dynamically based on currency
 //------------------------------------------------------------------
 
-cur_frm.cscript.dynamic_label = function(doc, cdt, cdn) {
+cur_frm.cscript.dynamic_label = function(doc, cdt, cdn, callback1) {
 	var callback = function(r, rt) {
 		if (r.message) base_curr = r.message;
 		else base_curr = sys_defaults['currency'];
@@ -136,10 +133,16 @@
 
 		set_dynamic_label_par(doc, cdt, cdn, base_curr);
 		set_dynamic_label_child(doc, cdt, cdn, base_curr);
+
+		if(callback1) callback1(doc, cdt, cdn);
 	}
 
 	if (doc.company == sys_defaults['company']) callback('', '');
-	else $c_obj(make_doclist(doc.doctype, doc.name), 'get_comp_base_currency', '', callback);
+	else wn.call({
+		method: 'selling.doctype.sales_common.sales_common.get_comp_base_currency',
+		args: {company: doc.company},
+		callback: callback
+	});
 }
 
 cur_frm.cscript.currency = function(doc, cdt, cdn) {
diff --git a/erpnext/buying/doctype/purchase_common/purchase_common.py b/erpnext/buying/doctype/purchase_common/purchase_common.py
index 16afb02..ca9181f 100644
--- a/erpnext/buying/doctype/purchase_common/purchase_common.py
+++ b/erpnext/buying/doctype/purchase_common/purchase_common.py
@@ -197,11 +197,6 @@
 					msgprint("%s has no Last Purchase Rate."% d.item_code)
 
 
-	def get_comp_base_currency(self, comp):
-		""" get default currency of company"""
-		return webnotes.conn.sql("select default_currency from `tabCompany` where name = %s", comp)[0][0]
-
-
 
 	# validation
 	# -------------------------------------------------------------------------------------------------------
diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.js b/erpnext/buying/doctype/purchase_order/purchase_order.js
index 0a6c547..7af1204 100644
--- a/erpnext/buying/doctype/purchase_order/purchase_order.js
+++ b/erpnext/buying/doctype/purchase_order/purchase_order.js
@@ -41,9 +41,12 @@
 }
 
 cur_frm.cscript.onload_post_render = function(doc, cdt, cdn) {
-	if(doc.__islocal){ 
-		cur_frm.cscript.get_default_schedule_date(doc);
-	}	
+	var callback = function(doc, cdt, cdn) {
+		if(doc.__islocal){ 
+			cur_frm.cscript.get_default_schedule_date(doc);
+		}	
+	}
+	cur_frm.cscript.dynamic_label(doc, cdt, cdn, callback);
 }
 
 // ================================== Refresh ==========================================
@@ -52,7 +55,7 @@
 	// ---------------------------------
 	cur_frm.clear_custom_buttons();
 
-	cur_frm.cscript.dynamic_label(doc, cdt, cdn);
+	if (!cur_frm.cscript.is_onload) cur_frm.cscript.dynamic_label(doc, cdt, cdn);
 
 	if(doc.docstatus == 1 && doc.status != 'Stopped'){
 		var ch = getchildren('PO Detail',doc.name,'po_details');
diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.py b/erpnext/buying/doctype/purchase_order/purchase_order.py
index efa0524..7945807 100644
--- a/erpnext/buying/doctype/purchase_order/purchase_order.py
+++ b/erpnext/buying/doctype/purchase_order/purchase_order.py
@@ -100,10 +100,6 @@
 		return get_obj('Purchase Common').get_tc_details(self)
 
 
-	def get_comp_base_currency(self):
-		return get_obj('Purchase Common').get_comp_base_currency(self.doc.company)
-
-
 
 	# validate if indent has been pulled twice
 	def validate_prev_docname(self):
diff --git a/erpnext/home/page/desktop/desktop.css b/erpnext/home/page/desktop/desktop.css
index 0aede60..836469c 100644
--- a/erpnext/home/page/desktop/desktop.css
+++ b/erpnext/home/page/desktop/desktop.css
@@ -41,10 +41,15 @@
 
 .case-border {
 	border-radius: 10px;
+	-moz-border-radius: 10px;
+	-webkit-border-radius: 10px;
 	width: 56px;
 	height: 56px;
 	border: 4px solid white;
 	box-shadow: 0 0 10px 1px black;
+	-moz-box-shadow: 0 0 10px 1px black;
+	-webkit-box-shadow: 0 0 10px 1px black;
+	-o-box-shadow: 0 0 10px 1px black;
 	margin: auto;
 }
 
@@ -66,6 +71,9 @@
 /* Hover and click effects */
 .case-border:hover, .circle:hover {
 	box-shadow: 0 0 2px 0px black, 0 0 10px 1px white;
+	-moz-box-shadow: 0 0 2px 0px black, 0 0 10px 1px white;
+	-webkit-box-shadow: 0 0 2px 0px black, 0 0 10px 1px white;
+	-o-box-shadow: 0 0 2px 0px black, 0 0 10px 1px white;
 }
 
 .case-border:active, .case-border:focus, .circle:active, .circle:focus {
@@ -78,6 +86,8 @@
 
 .circle {
 	border-radius: 100%;
+	-moz-border-radius: 100%;
+	-webkit-border-radius: 100%;
 	height: 15px;
 	min-width: 15px;
 	background: #B00D07;
@@ -88,6 +98,9 @@
 	margin-right: 10px;
 	border: 2px solid white;
 	box-shadow: 0 0 10px 1px black;
+	-moz-box-shadow: 0 0 10px 1px black;
+	-webkit-box-shadow: 0 0 10px 1px black;
+	-o-box-shadow: 0 0 10px 1px black;
 }
 
 .circle-text {
diff --git a/erpnext/home/page/desktop/desktop.js b/erpnext/home/page/desktop/desktop.js
index 47b11e6..dab1e76 100644
--- a/erpnext/home/page/desktop/desktop.js
+++ b/erpnext/home/page/desktop/desktop.js
@@ -3,12 +3,12 @@
 erpnext.desktop.gradient = "<style>\
 	.case-%(name)s {\
 		background: %(start)s; /* Old browsers */\
-		background: -moz-radial-gradient(center, ellipse cover,  %(start)s 0%%, %(middle)s 44%%, %(end)s 100%%); /* FF3.6+ */\
-		background: -webkit-gradient(radial, center center, 0px, center center, 100%%, color-stop(0%%,%(start)s), color-stop(44%%,%(middle)s), color-stop(100%%,%(end)s)); /* Chrome,Safari4+ */\
-		background: -webkit-radial-gradient(center, ellipse cover,  %(start)s 0%%,%(middle)s 44%%,%(end)s 100%%); /* Chrome10+,Safari5.1+ */\
-		background: -o-radial-gradient(center, ellipse cover,  %(start)s 0%%,%(middle)s 44%%,%(end)s 100%%); /* Opera 12+ */\
-		background: -ms-radial-gradient(center, ellipse cover,  %(start)s 0%%,%(middle)s 44%%,%(end)s 100%%); /* IE10+ */\
-		background: radial-gradient(center, ellipse cover,  %(start)s 0%%,%(middle)s 44%%,%(end)s 100%%); /* W3C */\
+		background: -moz-radial-gradient(center, ellipse cover,  %(start)s 0%, %(middle)s 44%, %(end)s 100%); /* FF3.6+ */\
+		background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%,%(start)s), color-stop(44%,%(middle)s), color-stop(100%,%(end)s)); /* Chrome,Safari4+ */\
+		background: -webkit-radial-gradient(center, ellipse cover,  %(start)s 0%,%(middle)s 44%,%(end)s 100%); /* Chrome10+,Safari5.1+ */\
+		background: -o-radial-gradient(center, ellipse cover,  %(start)s 0%,%(middle)s 44%,%(end)s 100%); /* Opera 12+ */\
+		background: -ms-radial-gradient(center, ellipse cover,  %(start)s 0%,%(middle)s 44%,%(end)s 100%); /* IE10+ */\
+		background: radial-gradient(center, ellipse cover,  %(start)s 0%,%(middle)s 44%,%(end)s 100%); /* W3C */\
 	}\
 	</style>"
 
diff --git a/erpnext/setup/doctype/setup_control/setup_control.py b/erpnext/setup/doctype/setup_control/setup_control.py
index 6b8b37c..50b9bb0 100644
--- a/erpnext/setup/doctype/setup_control/setup_control.py
+++ b/erpnext/setup/doctype/setup_control/setup_control.py
@@ -69,7 +69,7 @@
 		import webnotes, json
 		args = json.loads(args)
 
-		curr_fiscal_year, fy_start_date = self.get_fy_details(args.get('fy_start'))
+		curr_fiscal_year, fy_start_date, fy_abbr = self.get_fy_details(args.get('fy_start'))
 
 		args['name'] = webnotes.session.get('user')
 
@@ -82,7 +82,12 @@
 			
 		
 		# Fiscal Year
-		master_dict = {'Fiscal Year':{'year':curr_fiscal_year, 'year_start_date':fy_start_date}}
+		master_dict = {'Fiscal Year':{
+			'year': curr_fiscal_year,
+			'year_start_date': fy_start_date,
+			'abbreviation': fy_abbr,
+			'company': args.get('company_name'),
+			'is_fiscal_year_closed': 'No'}}
 		self.create_records(master_dict)
 		
 		# Company
@@ -163,9 +168,11 @@
 		#eddt = sql("select DATE_FORMAT(DATE_SUB(DATE_ADD('%s', INTERVAL 1 YEAR), INTERVAL 1 DAY),'%%d-%%m-%%Y')" % (stdt.split('-')[2]+ '-' + stdt.split('-')[1] + '-' + stdt.split('-')[0]))
 		if(fy_start == '1st Jan'):
 			fy = cstr(getdate(nowdate()).year)
+			abbr = cstr(fy)[-2:]
 		else:
 			fy = cstr(curr_year) + '-' + cstr(curr_year+1)
-		return fy,stdt
+			abbr = cstr(curr_year)[-2:] + '-' + cstr(curr_year+1)[-2:]
+		return fy, stdt, abbr
 
 
 	# Create Company and Fiscal Year
diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js
index 0f6d1a8..7ad9d91 100644
--- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js
+++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js
@@ -40,12 +40,15 @@
 
 cur_frm.cscript.onload_post_render = function(doc, dt, dn) {
 	var callback = function(doc, dt, dn) {
-		if(doc.__islocal){ 
-			cur_frm.cscript.get_default_schedule_date(doc);
+		var callback1 = function(doc, dt, dn) {
+			if(doc.__islocal){ 
+				cur_frm.cscript.get_default_schedule_date(doc);
+			}
 		}
+		// defined in purchase_common.js
+		cur_frm.cscript.update_item_details(doc, dt, dn, callback1);	
 	}
-	// defined in purchase_common.js
-	cur_frm.cscript.update_item_details(doc, cdt, cdn, callback);	
+	cur_frm.cscript.dynamic_label(doc, dt, dn, callback);
 }
 
 //========================== Refresh ===============================================================
@@ -55,7 +58,8 @@
 	// ---------------------------------
 	cur_frm.clear_custom_buttons();
 
-	cur_frm.cscript.dynamic_label(doc, cdt, cdn);
+	if (!cur_frm.cscript.is_onload) cur_frm.cscript.dynamic_label(doc, cdt, cdn);
+
 
 	if(doc.docstatus == 1){
 		var ch = getchildren('Purchase Receipt Detail',doc.name,'purchase_receipt_details');
diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
index 530afcf..f3e5d77 100644
--- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
+++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
@@ -88,10 +88,6 @@
 	def get_tc_details(self):
 		return get_obj('Purchase Common').get_tc_details(self)
 
-	def get_comp_base_currency(self):
-		return get_obj('Purchase Common').get_comp_base_currency(self.doc.company)
-
-
 
 	# get available qty at warehouse
 	def get_bin_details(self, arg = ''):
diff --git a/erpnext/support/doctype/support_ticket/support_ticket.js b/erpnext/support/doctype/support_ticket/support_ticket.js
index 02c9a5d..86264a6 100644
--- a/erpnext/support/doctype/support_ticket/support_ticket.js
+++ b/erpnext/support/doctype/support_ticket/support_ticket.js
@@ -178,7 +178,8 @@
 		// email text
 		this.message = $a(w, 'div', '', 
 			// style
-			{lineHeight:'1.7em', display:'none', padding: '7px'}, 
+			{lineHeight:'1.7em', display:'none', padding: '7px', width: '575px',
+				wordWrap: 'break-word', textWrap: 'normal', overflowX: 'auto'}, 
 			
 			// newlines for text email
 			(this.content_type=='text/plain' ? this.mail
diff --git a/version.num b/version.num
index eb90589..699ec1b 100644
--- a/version.num
+++ b/version.num
@@ -1 +1 @@
-780
\ No newline at end of file
+781
\ No newline at end of file