diff --git a/erpnext/accounts/doctype/cost_center/cost_center.json b/erpnext/accounts/doctype/cost_center/cost_center.json
index 36cb6ae..e65f74b 100644
--- a/erpnext/accounts/doctype/cost_center/cost_center.json
+++ b/erpnext/accounts/doctype/cost_center/cost_center.json
@@ -144,8 +144,8 @@
  ], 
  "icon": "icon-money", 
  "idx": 1, 
- "in_create": 1, 
- "modified": "2014-05-27 03:49:08.910126", 
+ "in_create": 0, 
+ "modified": "2014-08-26 12:16:11.163750", 
  "modified_by": "Administrator", 
  "module": "Accounts", 
  "name": "Cost Center", 
diff --git a/erpnext/accounts/doctype/journal_voucher/journal_voucher.py b/erpnext/accounts/doctype/journal_voucher/journal_voucher.py
index cb2ebac..03bedc7 100644
--- a/erpnext/accounts/doctype/journal_voucher/journal_voucher.py
+++ b/erpnext/accounts/doctype/journal_voucher/journal_voucher.py
@@ -203,7 +203,7 @@
 			if account_type in ['Bank', 'Cash']:
 				company_currency = get_company_currency(self.company)
 				amt = flt(d.debit) and d.debit or d.credit
-				self.total_amount = company_currency + ' ' + cstr(amt)
+				self.total_amount = fmt_money(amt, currency=company_currency)
 				from frappe.utils import money_in_words
 				self.total_amount_in_words = money_in_words(amt, company_currency)
 
diff --git a/erpnext/accounts/doctype/purchase_invoice_item/purchase_invoice_item.json b/erpnext/accounts/doctype/purchase_invoice_item/purchase_invoice_item.json
index 2275743..d26dec0 100755
--- a/erpnext/accounts/doctype/purchase_invoice_item/purchase_invoice_item.json
+++ b/erpnext/accounts/doctype/purchase_invoice_item/purchase_invoice_item.json
@@ -228,6 +228,17 @@
    "permlevel": 0
   }, 
   {
+   "fieldname": "project_name", 
+   "fieldtype": "Link", 
+   "in_filter": 1, 
+   "in_list_view": 0, 
+   "label": "Project Name", 
+   "options": "Project", 
+   "permlevel": 0, 
+   "print_hide": 1, 
+   "read_only": 0
+  }, 
+  {
    "default": ":Company", 
    "fieldname": "cost_center", 
    "fieldtype": "Link", 
@@ -250,17 +261,6 @@
    "permlevel": 0
   }, 
   {
-   "fieldname": "project_name", 
-   "fieldtype": "Link", 
-   "in_filter": 1, 
-   "in_list_view": 0, 
-   "label": "Project Name", 
-   "options": "Project", 
-   "permlevel": 0, 
-   "print_hide": 1, 
-   "read_only": 0
-  }, 
-  {
    "fieldname": "brand", 
    "fieldtype": "Data", 
    "hidden": 1, 
@@ -318,23 +318,6 @@
    "width": "150px"
   }, 
   {
-   "allow_on_submit": 1, 
-   "fieldname": "page_break", 
-   "fieldtype": "Check", 
-   "in_list_view": 0, 
-   "label": "Page Break", 
-   "no_copy": 1, 
-   "permlevel": 0, 
-   "print_hide": 1, 
-   "read_only": 0, 
-   "report_hide": 1
-  }, 
-  {
-   "fieldname": "col_break6", 
-   "fieldtype": "Column Break", 
-   "permlevel": 0
-  }, 
-  {
    "fieldname": "purchase_order", 
    "fieldtype": "Link", 
    "in_filter": 1, 
@@ -350,6 +333,11 @@
    "search_index": 1
   }, 
   {
+   "fieldname": "col_break6", 
+   "fieldtype": "Column Break", 
+   "permlevel": 0
+  }, 
+  {
    "fieldname": "po_detail", 
    "fieldtype": "Data", 
    "hidden": 1, 
@@ -380,6 +368,18 @@
    "search_index": 1
   }, 
   {
+   "allow_on_submit": 1, 
+   "fieldname": "page_break", 
+   "fieldtype": "Check", 
+   "in_list_view": 0, 
+   "label": "Page Break", 
+   "no_copy": 1, 
+   "permlevel": 0, 
+   "print_hide": 1, 
+   "read_only": 0, 
+   "report_hide": 1
+  }, 
+  {
    "fieldname": "pr_detail", 
    "fieldtype": "Data", 
    "hidden": 1, 
@@ -421,7 +421,7 @@
  ], 
  "idx": 1, 
  "istable": 1, 
- "modified": "2014-07-24 05:50:20.570629", 
+ "modified": "2014-08-26 12:34:42.790959", 
  "modified_by": "Administrator", 
  "module": "Accounts", 
  "name": "Purchase Invoice Item", 
diff --git a/erpnext/accounts/print_format/credit_note/__init__.py b/erpnext/accounts/print_format/credit_note/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/erpnext/accounts/print_format/credit_note/__init__.py
diff --git a/erpnext/accounts/print_format/credit_note/credit_note.json b/erpnext/accounts/print_format/credit_note/credit_note.json
new file mode 100644
index 0000000..31507b4
--- /dev/null
+++ b/erpnext/accounts/print_format/credit_note/credit_note.json
@@ -0,0 +1,19 @@
+{
+ "creation": "2014-08-28 11:11:39.796473", 
+ "disabled": 0, 
+ "doc_type": "Journal Voucher", 
+ "docstatus": 0, 
+ "doctype": "Print Format", 
+ "html": "{%- from \"templates/print_formats/standard_macros.html\" import add_header -%}\n\n<div class=\"page-break\">\n    {%- if not doc.get(\"print_heading\") and not doc.get(\"select_print_heading\") \n        and doc.set(\"select_print_heading\", _(\"Credit Note\")) -%}{%- endif -%}\n    {{ add_header(0, 1, doc, letter_head, no_letterhead) }}\n\n    {%- for label, value in (\n        (_(\"Credit To\"), doc.pay_to_recd_from),\n        (_(\"Date\"), frappe.utils.formatdate(doc.voucher_date)),\n        (_(\"Amount\"), \"<strong>\" + doc.total_amount + \"</strong><br>\" + (doc.total_amount_in_words or \"\") + \"<br>\"),\n        (_(\"Remarks\"), doc.remark)\n    ) -%}\n\n    <div class=\"row\">\n        <div class=\"col-sm-3\"><label class=\"text-right\">{{ label }}</label></div>\n        <div class=\"col-sm-9\">{{ value }}</div>\n    </div>\n\n    {%- endfor -%}\n\n    <hr>\n    <br>\n    <p class=\"strong\">\n        {{ _(\"For\") }} {{ doc.company }},<br>\n        <br>\n        <br>\n        <br>\n        {{ _(\"Authorized Signatory\") }}\n    </p>\n</div>\n\n\n", 
+ "idx": 2, 
+ "modified": "2014-08-29 13:20:15.789533", 
+ "modified_by": "Administrator", 
+ "module": "Accounts", 
+ "name": "Credit Note", 
+ "owner": "Administrator", 
+ "parent": "Journal Voucher", 
+ "parentfield": "__print_formats", 
+ "parenttype": "DocType", 
+ "print_format_type": "Server", 
+ "standard": "Yes"
+}
\ No newline at end of file
diff --git a/erpnext/buying/doctype/purchase_common/purchase_common.js b/erpnext/buying/doctype/purchase_common/purchase_common.js
index 3c63508..c2e76e2 100644
--- a/erpnext/buying/doctype/purchase_common/purchase_common.js
+++ b/erpnext/buying/doctype/purchase_common/purchase_common.js
@@ -385,6 +385,6 @@
 		});
 	}
 });
-
+cur_frm.add_fetch('project_name', 'cost_center', 'cost_center');
 var tname = cur_frm.cscript.tname;
 var fname = cur_frm.cscript.fname;
diff --git a/erpnext/controllers/buying_controller.py b/erpnext/controllers/buying_controller.py
index 8bc0c9d..5f418c4 100644
--- a/erpnext/controllers/buying_controller.py
+++ b/erpnext/controllers/buying_controller.py
@@ -197,7 +197,7 @@
 
 				landed_cost_voucher_amount = flt(item.landed_cost_voucher_amount) \
 					if self.doctype == "Purchase Receipt" else 0.0
-				
+
 				item.valuation_rate = ((item.base_amount + item.item_tax_amount + rm_supp_cost
 					 + landed_cost_voucher_amount) / qty_in_stock_uom)
 			else:
@@ -289,7 +289,8 @@
 					self.append(raw_material_table, d)
 
 	def get_items_from_default_bom(self, item_code):
-		bom_items = frappe.db.sql("""select t2.item_code, t2.qty_consumed_per_unit,
+		bom_items = frappe.db.sql("""select t2.item_code,
+			ifnull(t2.qty, 0) / ifnull(t1.quantity, 1) as qty_consumed_per_unit,
 			t2.rate, t2.stock_uom, t2.name, t2.description
 			from `tabBOM` t1, `tabBOM Item` t2
 			where t2.parent = t1.name and t1.item = %s and t1.is_default = 1
diff --git a/erpnext/hr/doctype/employee/employee.js b/erpnext/hr/doctype/employee/employee.js
index 0934bc5..b068bde 100644
--- a/erpnext/hr/doctype/employee/employee.js
+++ b/erpnext/hr/doctype/employee/employee.js
@@ -11,8 +11,12 @@
 	},
 
 	onload: function() {
-		this.setup_leave_approver_select();
 		if(this.frm.doc.__islocal) this.frm.set_value("employee_name", "");
+		this.frm.set_query("leave_approver", "employee_leave_approvers", function() {
+			return {
+				filters: [["UserRole", "role", "=", "Leave Approver"]]
+			}
+		});
 	},
 
 	refresh: function() {
@@ -25,21 +29,6 @@
 		}
 	},
 
-	setup_leave_approver_select: function() {
-		var me = this;
-		return this.frm.call({
-			method: "erpnext.hr.utils.get_leave_approver_list",
-			callback: function(r) {
-				var df = frappe.meta.get_docfield("Employee Leave Approver", "leave_approver",
-					me.frm.doc.name);
-				df.options = $.map(r.message, function(user) {
-					return {value: user, label: frappe.user_info(user).fullname};
-				});
-				me.frm.fields_dict.employee_leave_approvers.refresh();
-			}
-		});
-	},
-
 	date_of_birth: function() {
 		return cur_frm.call({
 			method: "get_retirement_date",
diff --git a/erpnext/hr/doctype/employee/employee.json b/erpnext/hr/doctype/employee/employee.json
index 254e763..7be1c40 100644
--- a/erpnext/hr/doctype/employee/employee.json
+++ b/erpnext/hr/doctype/employee/employee.json
@@ -1,5 +1,5 @@
 {
-  "allow_import": 1, 
+ "allow_import": 1, 
  "allow_rename": 1, 
  "autoname": "naming_series:", 
  "creation": "2013-03-07 09:04:18", 
@@ -172,6 +172,7 @@
   {
    "fieldname": "employment_type", 
    "fieldtype": "Link", 
+   "ignore_user_permissions": 1, 
    "in_filter": 1, 
    "in_list_view": 1, 
    "label": "Employment Type", 
@@ -185,6 +186,7 @@
    "description": "Applicable Holiday List", 
    "fieldname": "holiday_list", 
    "fieldtype": "Link", 
+   "ignore_user_permissions": 1, 
    "label": "Holiday List", 
    "oldfieldname": "holiday_list", 
    "oldfieldtype": "Link", 
@@ -672,7 +674,7 @@
  ], 
  "icon": "icon-user", 
  "idx": 1, 
- "modified": "2014-05-27 07:34:49.337586", 
+ "modified": "2014-08-27 05:55:00.514660", 
  "modified_by": "Administrator", 
  "module": "HR", 
  "name": "Employee", 
@@ -704,6 +706,7 @@
    "report": 1, 
    "role": "HR User", 
    "submit": 0, 
+   "user_permission_doctypes": "[\"Branch\",\"Company\",\"Department\",\"Designation\"]", 
    "write": 1
   }, 
   {
@@ -719,12 +722,6 @@
    "set_user_permissions": 1, 
    "submit": 0, 
    "write": 1
-  }, 
-  {
-   "apply_user_permissions": 1, 
-   "permlevel": 0, 
-   "read": 1, 
-   "role": "Leave Approver"
   }
  ], 
  "search_fields": "employee_name", 
diff --git a/erpnext/hr/doctype/employee/employee.py b/erpnext/hr/doctype/employee/employee.py
index 01ab91d..5d4beaf 100644
--- a/erpnext/hr/doctype/employee/employee.py
+++ b/erpnext/hr/doctype/employee/employee.py
@@ -50,21 +50,11 @@
 			self.update_user_permissions()
 
 		self.update_dob_event()
-		self.update_leave_approver_user_permissions()
 
 	def update_user_permissions(self):
 		frappe.permissions.add_user_permission("Employee", self.name, self.user_id)
 		frappe.permissions.set_user_permission_if_allowed("Company", self.company, self.user_id)
 
-	def update_leave_approver_user_permissions(self):
-		"""add employee user permission for leave approver"""
-		employee_leave_approvers = [d.leave_approver for d in self.get("employee_leave_approvers")]
-		if self.reports_to and self.reports_to not in employee_leave_approvers:
-			employee_leave_approvers.append(frappe.db.get_value("Employee", self.reports_to, "user_id"))
-
-		for user in employee_leave_approvers:
-			frappe.permissions.add_user_permission("Employee", self.name, user)
-
 	def update_user(self):
 		# add employee role if missing
 		user = frappe.get_doc("User", self.user_id)
diff --git a/erpnext/hr/doctype/employee_leave_approver/employee_leave_approver.json b/erpnext/hr/doctype/employee_leave_approver/employee_leave_approver.json
index 0302bc9..76335fb 100644
--- a/erpnext/hr/doctype/employee_leave_approver/employee_leave_approver.json
+++ b/erpnext/hr/doctype/employee_leave_approver/employee_leave_approver.json
@@ -8,10 +8,11 @@
  "fields": [
   {
    "fieldname": "leave_approver", 
-   "fieldtype": "Select", 
+   "fieldtype": "Link", 
+   "ignore_user_permissions": 1, 
    "in_list_view": 1, 
    "label": "Leave Approver", 
-   "options": "[Select]", 
+   "options": "User", 
    "permlevel": 0, 
    "print_hide": 1, 
    "reqd": 1, 
@@ -20,7 +21,7 @@
  ], 
  "idx": 1, 
  "istable": 1, 
- "modified": "2014-05-15 19:32:14.134420", 
+ "modified": "2014-08-27 06:21:36.887205", 
  "modified_by": "Administrator", 
  "module": "HR", 
  "name": "Employee Leave Approver", 
diff --git a/erpnext/hr/doctype/expense_claim/expense_claim.js b/erpnext/hr/doctype/expense_claim/expense_claim.js
index 4ef2efc..7098445 100644
--- a/erpnext/hr/doctype/expense_claim/expense_claim.js
+++ b/erpnext/hr/doctype/expense_claim/expense_claim.js
@@ -57,14 +57,12 @@
 		return{
 			query: "erpnext.controllers.queries.employee_query"
 		}
-	}
-	var exp_approver = doc.exp_approver;
-	return cur_frm.call({
-		method: "erpnext.hr.utils.get_expense_approver_list",
-		callback: function(r) {
-			cur_frm.set_df_property("exp_approver", "options", r.message);
-			if(exp_approver) cur_frm.set_value("exp_approver", exp_approver);
-		}
+	};
+
+	cur_frm.set_query("exp_approver", function() {
+		return {
+			filters: [["UserRole", "role", "=", "Expense Approver"]]
+		};
 	});
 }
 
diff --git a/erpnext/hr/doctype/expense_claim/expense_claim.json b/erpnext/hr/doctype/expense_claim/expense_claim.json
index c13710a..15ef03e 100644
--- a/erpnext/hr/doctype/expense_claim/expense_claim.json
+++ b/erpnext/hr/doctype/expense_claim/expense_claim.json
@@ -20,11 +20,13 @@
    "search_index": 1
   }, 
   {
+   "description": "A user with \"Expense Approver\" role", 
    "fieldname": "exp_approver", 
-   "fieldtype": "Select", 
+   "fieldtype": "Link", 
    "label": "Approver", 
    "oldfieldname": "exp_approver", 
    "oldfieldtype": "Select", 
+   "options": "User", 
    "permlevel": 0, 
    "width": "160px"
   }, 
@@ -188,7 +190,7 @@
  "icon": "icon-money", 
  "idx": 1, 
  "is_submittable": 1, 
- "modified": "2014-06-23 07:55:48.580747", 
+ "modified": "2014-08-27 07:08:48.454580", 
  "modified_by": "Administrator", 
  "module": "HR", 
  "name": "Expense Claim", 
@@ -204,6 +206,7 @@
    "read": 1, 
    "report": 1, 
    "role": "Employee", 
+   "user_permission_doctypes": "[\"Company\",\"Employee\",\"Expense Claim\",\"Fiscal Year\"]", 
    "write": 1
   }, 
   {
@@ -219,6 +222,7 @@
    "report": 1, 
    "role": "Expense Approver", 
    "submit": 1, 
+   "user_permission_doctypes": "[\"Expense Claim\",\"User\"]", 
    "write": 1
   }, 
   {
@@ -234,6 +238,7 @@
    "report": 1, 
    "role": "HR User", 
    "submit": 1, 
+   "user_permission_doctypes": "[\"Company\",\"Expense Claim\",\"Fiscal Year\"]", 
    "write": 1
   }
  ], 
diff --git a/erpnext/hr/doctype/expense_claim/test_expense_claim.py b/erpnext/hr/doctype/expense_claim/test_expense_claim.py
new file mode 100644
index 0000000..5a55cbf
--- /dev/null
+++ b/erpnext/hr/doctype/expense_claim/test_expense_claim.py
@@ -0,0 +1,10 @@
+# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors and Contributors
+# See license.txt
+
+import frappe
+import unittest
+
+test_records = frappe.get_test_records('Expense Claim')
+
+class TestExpenseClaim(unittest.TestCase):
+	pass
diff --git a/erpnext/hr/doctype/expense_claim/test_records.json b/erpnext/hr/doctype/expense_claim/test_records.json
new file mode 100644
index 0000000..fe51488
--- /dev/null
+++ b/erpnext/hr/doctype/expense_claim/test_records.json
@@ -0,0 +1 @@
+[]
diff --git a/erpnext/hr/doctype/leave_application/leave_application.js b/erpnext/hr/doctype/leave_application/leave_application.js
index acb91c6..0d8b37e 100755
--- a/erpnext/hr/doctype/leave_application/leave_application.js
+++ b/erpnext/hr/doctype/leave_application/leave_application.js
@@ -11,20 +11,13 @@
 		cur_frm.cscript.calculate_total_days(doc, dt, dn);
 	}
 
-	var leave_approver = doc.leave_approver;
-	return cur_frm.call({
-		method: "erpnext.hr.utils.get_leave_approver_list",
-		callback: function(r) {
-			cur_frm.set_df_property("leave_approver", "options", $.map(r.message,
-				function(user) {
-					return {value: user, label: frappe.user_info(user).fullname};
-				}));
-
-			if(leave_approver) cur_frm.set_value("leave_approver", leave_approver);
-
-			cur_frm.cscript.get_leave_balance(cur_frm.doc);
-		}
+	cur_frm.set_query("leave_approver", function() {
+		return {
+			filters: [["UserRole", "role", "=", "Leave Approver"]]
+		};
 	});
+
+	cur_frm.cscript.get_leave_balance(cur_frm.doc);
 }
 
 cur_frm.cscript.refresh = function(doc, dt, dn) {
diff --git a/erpnext/hr/doctype/leave_application/leave_application.json b/erpnext/hr/doctype/leave_application/leave_application.json
index 959f30d..9818150 100644
--- a/erpnext/hr/doctype/leave_application/leave_application.json
+++ b/erpnext/hr/doctype/leave_application/leave_application.json
@@ -1,285 +1,294 @@
 {
-  "autoname": "LAP/.#####",
- "creation": "2013-02-20 11:18:11",
- "description": "Apply / Approve Leaves",
- "docstatus": 0,
- "doctype": "DocType",
- "document_type": "Transaction",
+ "autoname": "LAP/.#####", 
+ "creation": "2013-02-20 11:18:11", 
+ "description": "Apply / Approve Leaves", 
+ "docstatus": 0, 
+ "doctype": "DocType", 
+ "document_type": "Transaction", 
  "fields": [
   {
-   "default": "Open",
-   "fieldname": "status",
-   "fieldtype": "Select",
-   "in_list_view": 1,
-   "label": "Status",
-   "no_copy": 1,
-   "options": "Open\nApproved\nRejected",
+   "default": "Open", 
+   "fieldname": "status", 
+   "fieldtype": "Select", 
+   "in_list_view": 1, 
+   "label": "Status", 
+   "no_copy": 1, 
+   "options": "Open\nApproved\nRejected", 
    "permlevel": 1
-  },
+  }, 
   {
-   "description": "Leave can be approved by users with Role, \"Leave Approver\"",
-   "fieldname": "leave_approver",
-   "fieldtype": "Select",
-   "label": "Leave Approver",
-   "options": "[Select]",
+   "description": "Leave can be approved by users with Role, \"Leave Approver\"", 
+   "fieldname": "leave_approver", 
+   "fieldtype": "Link", 
+   "label": "Leave Approver", 
+   "options": "User", 
    "permlevel": 0
-  },
+  }, 
   {
-   "fieldname": "leave_type",
-   "fieldtype": "Link",
-   "in_filter": 1,
-   "in_list_view": 1,
-   "label": "Leave Type",
-   "options": "Leave Type",
-   "permlevel": 0,
-   "reqd": 1,
+   "fieldname": "leave_type", 
+   "fieldtype": "Link", 
+   "ignore_user_permissions": 1, 
+   "in_filter": 1, 
+   "in_list_view": 1, 
+   "label": "Leave Type", 
+   "options": "Leave Type", 
+   "permlevel": 0, 
+   "reqd": 1, 
    "search_index": 1
-  },
+  }, 
   {
-   "fieldname": "from_date",
-   "fieldtype": "Date",
-   "in_list_view": 1,
-   "label": "From Date",
-   "permlevel": 0,
-   "reqd": 1,
+   "fieldname": "from_date", 
+   "fieldtype": "Date", 
+   "in_list_view": 1, 
+   "label": "From Date", 
+   "permlevel": 0, 
+   "reqd": 1, 
    "search_index": 1
-  },
+  }, 
   {
-   "fieldname": "to_date",
-   "fieldtype": "Date",
-   "in_list_view": 0,
-   "label": "To Date",
-   "permlevel": 0,
-   "reqd": 1,
+   "fieldname": "to_date", 
+   "fieldtype": "Date", 
+   "in_list_view": 0, 
+   "label": "To Date", 
+   "permlevel": 0, 
+   "reqd": 1, 
    "search_index": 1
-  },
+  }, 
   {
-   "fieldname": "half_day",
-   "fieldtype": "Check",
-   "label": "Half Day",
+   "fieldname": "half_day", 
+   "fieldtype": "Check", 
+   "label": "Half Day", 
    "permlevel": 0
-  },
+  }, 
   {
-   "fieldname": "column_break1",
-   "fieldtype": "Column Break",
-   "permlevel": 0,
-   "print_width": "50%",
+   "fieldname": "column_break1", 
+   "fieldtype": "Column Break", 
+   "permlevel": 0, 
+   "print_width": "50%", 
    "width": "50%"
-  },
+  }, 
   {
-   "fieldname": "description",
-   "fieldtype": "Small Text",
-   "label": "Reason",
+   "fieldname": "description", 
+   "fieldtype": "Small Text", 
+   "label": "Reason", 
    "permlevel": 0
-  },
+  }, 
   {
-   "fieldname": "employee",
-   "fieldtype": "Link",
-   "in_filter": 1,
-   "label": "Employee",
-   "options": "Employee",
-   "permlevel": 0,
-   "reqd": 1,
+   "fieldname": "employee", 
+   "fieldtype": "Link", 
+   "in_filter": 1, 
+   "label": "Employee", 
+   "options": "Employee", 
+   "permlevel": 0, 
+   "reqd": 1, 
    "search_index": 1
-  },
+  }, 
   {
-   "fieldname": "employee_name",
-   "fieldtype": "Data",
-   "in_filter": 1,
-   "in_list_view": 1,
-   "label": "Employee Name",
-   "permlevel": 0,
-   "read_only": 1,
+   "fieldname": "employee_name", 
+   "fieldtype": "Data", 
+   "in_filter": 1, 
+   "in_list_view": 1, 
+   "label": "Employee Name", 
+   "permlevel": 0, 
+   "read_only": 1, 
    "search_index": 0
-  },
+  }, 
   {
-   "fieldname": "leave_balance",
-   "fieldtype": "Float",
-   "label": "Leave Balance Before Application",
-   "no_copy": 1,
-   "permlevel": 0,
+   "fieldname": "leave_balance", 
+   "fieldtype": "Float", 
+   "label": "Leave Balance Before Application", 
+   "no_copy": 1, 
+   "permlevel": 0, 
    "read_only": 1
-  },
+  }, 
   {
-   "fieldname": "total_leave_days",
-   "fieldtype": "Float",
-   "label": "Total Leave Days",
-   "no_copy": 1,
-   "permlevel": 0,
+   "fieldname": "total_leave_days", 
+   "fieldtype": "Float", 
+   "label": "Total Leave Days", 
+   "no_copy": 1, 
+   "permlevel": 0, 
    "read_only": 1
-  },
+  }, 
   {
-   "fieldname": "sb10",
-   "fieldtype": "Section Break",
-   "label": "More Info",
+   "fieldname": "sb10", 
+   "fieldtype": "Section Break", 
+   "label": "More Info", 
    "permlevel": 0
-  },
+  }, 
   {
-   "allow_on_submit": 1,
-   "default": "1",
-   "fieldname": "follow_via_email",
-   "fieldtype": "Check",
-   "label": "Follow via Email",
-   "permlevel": 0,
+   "allow_on_submit": 1, 
+   "default": "1", 
+   "fieldname": "follow_via_email", 
+   "fieldtype": "Check", 
+   "label": "Follow via Email", 
+   "permlevel": 0, 
    "print_hide": 1
-  },
+  }, 
   {
-   "default": "Today",
-   "fieldname": "posting_date",
-   "fieldtype": "Date",
-   "label": "Posting Date",
-   "no_copy": 1,
-   "permlevel": 0,
+   "default": "Today", 
+   "fieldname": "posting_date", 
+   "fieldtype": "Date", 
+   "label": "Posting Date", 
+   "no_copy": 1, 
+   "permlevel": 0, 
    "reqd": 1
-  },
+  }, 
   {
-   "fieldname": "fiscal_year",
-   "fieldtype": "Link",
-   "in_filter": 1,
-   "label": "Fiscal Year",
-   "options": "Fiscal Year",
-   "permlevel": 0,
-   "read_only": 0,
-   "reqd": 1,
+   "fieldname": "fiscal_year", 
+   "fieldtype": "Link", 
+   "in_filter": 1, 
+   "label": "Fiscal Year", 
+   "options": "Fiscal Year", 
+   "permlevel": 0, 
+   "read_only": 0, 
+   "reqd": 1, 
    "search_index": 0
-  },
+  }, 
   {
-   "fieldname": "column_break_17",
-   "fieldtype": "Column Break",
+   "fieldname": "column_break_17", 
+   "fieldtype": "Column Break", 
    "permlevel": 0
-  },
+  }, 
   {
-   "fieldname": "company",
-   "fieldtype": "Link",
-   "label": "Company",
-   "options": "Company",
-   "permlevel": 0,
+   "fieldname": "company", 
+   "fieldtype": "Link", 
+   "label": "Company", 
+   "options": "Company", 
+   "permlevel": 0, 
    "reqd": 1
-  },
+  }, 
   {
-   "fieldname": "letter_head",
-   "fieldtype": "Link",
-   "label": "Letter Head",
-   "options": "Letter Head",
-   "permlevel": 0,
-   "print_hide": 1,
+   "fieldname": "letter_head", 
+   "fieldtype": "Link", 
+   "ignore_user_permissions": 1, 
+   "label": "Letter Head", 
+   "options": "Letter Head", 
+   "permlevel": 0, 
+   "print_hide": 1, 
    "read_only": 0
-  },
+  }, 
   {
-   "fieldname": "amended_from",
-   "fieldtype": "Link",
-   "ignore_user_permissions": 1,
-   "label": "Amended From",
-   "no_copy": 1,
-   "options": "Leave Application",
-   "permlevel": 0,
-   "print_hide": 1,
+   "fieldname": "amended_from", 
+   "fieldtype": "Link", 
+   "ignore_user_permissions": 1, 
+   "label": "Amended From", 
+   "no_copy": 1, 
+   "options": "Leave Application", 
+   "permlevel": 0, 
+   "print_hide": 1, 
    "read_only": 1
   }
- ],
- "icon": "icon-calendar",
- "idx": 1,
- "is_submittable": 1,
- "max_attachments": 3,
- "modified": "2014-06-06 05:06:44.594229",
- "modified_by": "Administrator",
- "module": "HR",
- "name": "Leave Application",
- "owner": "Administrator",
+ ], 
+ "icon": "icon-calendar", 
+ "idx": 1, 
+ "is_submittable": 1, 
+ "max_attachments": 3, 
+ "modified": "2014-08-28 03:32:38.865202", 
+ "modified_by": "Administrator", 
+ "module": "HR", 
+ "name": "Leave Application", 
+ "owner": "Administrator", 
  "permissions": [
   {
-   "apply_user_permissions": 1,
-   "create": 1,
-   "delete": 0,
-   "email": 1,
-   "permlevel": 0,
-   "print": 1,
-   "read": 1,
-   "report": 1,
-   "role": "Employee",
+   "apply_user_permissions": 1, 
+   "create": 1, 
+   "delete": 0, 
+   "email": 1, 
+   "permlevel": 0, 
+   "print": 1, 
+   "read": 1, 
+   "report": 1, 
+   "role": "Employee", 
+   "user_permission_doctypes": "[\"Company\",\"Employee\",\"Fiscal Year\",\"Leave Application\"]", 
    "write": 1
-  },
+  }, 
   {
-   "amend": 1,
-   "cancel": 1,
-   "create": 1,
-   "email": 1,
-   "permlevel": 0,
-   "print": 1,
-   "read": 1,
-   "report": 1,
-   "role": "HR Manager",
-   "set_user_permissions": 1,
-   "submit": 1,
+   "amend": 1, 
+   "cancel": 1, 
+   "create": 1, 
+   "delete": 1, 
+   "email": 1, 
+   "export": 1, 
+   "import": 0, 
+   "permlevel": 0, 
+   "print": 1, 
+   "read": 1, 
+   "report": 1, 
+   "role": "HR Manager", 
+   "set_user_permissions": 1, 
+   "submit": 1, 
    "write": 1
-  },
+  }, 
   {
-   "amend": 0,
-   "cancel": 0,
-   "create": 0,
-   "delete": 0,
-   "permlevel": 1,
-   "read": 1,
-   "role": "All",
+   "amend": 0, 
+   "cancel": 0, 
+   "create": 0, 
+   "delete": 0, 
+   "permlevel": 1, 
+   "read": 1, 
+   "role": "All", 
    "submit": 0
-  },
+  }, 
   {
-   "amend": 1,
-   "apply_user_permissions": 1,
-   "cancel": 1,
-   "create": 1,
-   "delete": 1,
-   "email": 1,
-   "permlevel": 0,
-   "print": 1,
-   "read": 1,
-   "report": 1,
-   "role": "HR User",
-   "set_user_permissions": 1,
-   "submit": 1,
+   "amend": 1, 
+   "apply_user_permissions": 1, 
+   "cancel": 1, 
+   "create": 1, 
+   "delete": 1, 
+   "email": 1, 
+   "export": 0, 
+   "permlevel": 0, 
+   "print": 1, 
+   "read": 1, 
+   "report": 1, 
+   "role": "HR User", 
+   "set_user_permissions": 1, 
+   "submit": 1, 
+   "user_permission_doctypes": "[\"Company\"]", 
    "write": 1
-  },
+  }, 
   {
-   "amend": 1,
-   "apply_user_permissions": 1,
-   "cancel": 0,
-   "create": 0,
-   "delete": 0,
-   "email": 1,
-   "permlevel": 0,
-   "print": 1,
-   "read": 1,
-   "report": 1,
-   "role": "Leave Approver",
-   "submit": 1,
+   "amend": 1, 
+   "apply_user_permissions": 1, 
+   "cancel": 0, 
+   "create": 0, 
+   "delete": 0, 
+   "email": 1, 
+   "permlevel": 0, 
+   "print": 1, 
+   "read": 1, 
+   "report": 1, 
+   "role": "Leave Approver", 
+   "submit": 1, 
+   "user_permission_doctypes": "[\"Company\",\"User\"]", 
    "write": 1
-  },
+  }, 
   {
-   "amend": 0,
-   "cancel": 0,
-   "create": 0,
-   "delete": 0,
-   "permlevel": 1,
-   "read": 1,
-   "report": 1,
-   "role": "HR User",
-   "submit": 0,
+   "amend": 0, 
+   "cancel": 0, 
+   "create": 0, 
+   "delete": 0, 
+   "permlevel": 1, 
+   "read": 1, 
+   "report": 1, 
+   "role": "HR User", 
+   "submit": 0, 
    "write": 1
-  },
+  }, 
   {
-   "amend": 0,
-   "cancel": 0,
-   "create": 0,
-   "delete": 0,
-   "permlevel": 1,
-   "read": 1,
-   "report": 1,
-   "role": "Leave Approver",
-   "submit": 0,
+   "amend": 0, 
+   "cancel": 0, 
+   "create": 0, 
+   "delete": 0, 
+   "permlevel": 1, 
+   "read": 1, 
+   "report": 1, 
+   "role": "Leave Approver", 
+   "submit": 0, 
    "write": 1
   }
- ],
- "search_fields": "employee,employee_name,leave_type,from_date,to_date,total_leave_days,fiscal_year",
- "sort_field": "modified",
+ ], 
+ "search_fields": "employee,employee_name,leave_type,from_date,to_date,total_leave_days,fiscal_year", 
+ "sort_field": "modified", 
  "sort_order": "DESC"
-}
+}
\ No newline at end of file
diff --git a/erpnext/hr/doctype/leave_application/leave_application.py b/erpnext/hr/doctype/leave_application/leave_application.py
index 3222a0c..32c4443 100755
--- a/erpnext/hr/doctype/leave_application/leave_application.py
+++ b/erpnext/hr/doctype/leave_application/leave_application.py
@@ -155,8 +155,7 @@
 
 	def validate_leave_approver(self):
 		employee = frappe.get_doc("Employee", self.employee)
-		leave_approvers = [l.leave_approver for l in
-			employee.get("employee_leave_approvers")]
+		leave_approvers = [l.leave_approver for l in employee.get("employee_leave_approvers")]
 
 		if len(leave_approvers) and self.leave_approver not in leave_approvers:
 			frappe.throw(_("Leave approver must be one of {0}").format(comma_or(leave_approvers)), InvalidLeaveApproverError)
diff --git a/erpnext/hr/doctype/leave_application/test_leave_application.py b/erpnext/hr/doctype/leave_application/test_leave_application.py
index f547640..7ad28de 100644
--- a/erpnext/hr/doctype/leave_application/test_leave_application.py
+++ b/erpnext/hr/doctype/leave_application/test_leave_application.py
@@ -91,6 +91,7 @@
 
 		from frappe.utils.user import add_role
 		add_role("test1@example.com", "HR User")
+		add_role("test1@example.com", "Leave Approver")
 		clear_user_permissions_for_doctype("Employee")
 
 		frappe.db.set_value("Department", "_Test Department",
@@ -157,6 +158,7 @@
 
 		from frappe.utils.user import add_role
 		add_role("test@example.com", "Employee")
+		add_role("test1@example.com", "HR User")
 		add_role("test1@example.com", "Leave Approver")
 		add_role("test2@example.com", "Leave Approver")
 
diff --git a/erpnext/hr/doctype/leave_application/test_records.json b/erpnext/hr/doctype/leave_application/test_records.json
new file mode 100644
index 0000000..fe51488
--- /dev/null
+++ b/erpnext/hr/doctype/leave_application/test_records.json
@@ -0,0 +1 @@
+[]
diff --git a/erpnext/hr/doctype/salary_slip/salary_slip.json b/erpnext/hr/doctype/salary_slip/salary_slip.json
index 88a7ef2..b288c50 100644
--- a/erpnext/hr/doctype/salary_slip/salary_slip.json
+++ b/erpnext/hr/doctype/salary_slip/salary_slip.json
@@ -74,6 +74,7 @@
   {
    "fieldname": "letter_head", 
    "fieldtype": "Link", 
+   "ignore_user_permissions": 1, 
    "label": "Letter Head", 
    "options": "Letter Head", 
    "permlevel": 0, 
@@ -335,7 +336,7 @@
  "icon": "icon-file-text", 
  "idx": 1, 
  "is_submittable": 1, 
- "modified": "2014-07-21 07:58:08.033784", 
+ "modified": "2014-08-27 06:38:10.006224", 
  "modified_by": "Administrator", 
  "module": "HR", 
  "name": "Salary Slip", 
@@ -353,6 +354,7 @@
    "report": 1, 
    "role": "HR User", 
    "submit": 1, 
+   "user_permission_doctypes": "[\"Branch\",\"Company\",\"Department\",\"Designation\",\"Fiscal Year\",\"Salary Slip\"]", 
    "write": 1
   }, 
   {
diff --git a/erpnext/hr/utils.py b/erpnext/hr/utils.py
index 857f936..5d165c3 100644
--- a/erpnext/hr/utils.py
+++ b/erpnext/hr/utils.py
@@ -5,24 +5,6 @@
 import frappe
 from frappe import _
 
-@frappe.whitelist()
-def get_leave_approver_list():
-	roles = [r[0] for r in frappe.db.sql("""select distinct parent from `tabUserRole`
-		where role='Leave Approver'""")]
-	if not roles:
-		frappe.msgprint(_("No Leave Approvers. Please assign 'Leave Approver' Role to atleast one user"))
-
-	return roles
-
-
-@frappe.whitelist()
-def get_expense_approver_list():
-	roles = [r[0] for r in frappe.db.sql("""select distinct parent from `tabUserRole`
-		where role='Expense Approver'""")]
-	if not roles:
-		frappe.msgprint(_("No Expense Approvers. Please assign 'Expense Approver' Role to atleast one user"))
-	return roles
-
 def set_employee_name(doc):
 	if doc.employee and not doc.employee_name:
 		doc.employee_name = frappe.db.get_value("Employee", doc.employee, "employee_name")
diff --git a/erpnext/manufacturing/doctype/bom/bom.py b/erpnext/manufacturing/doctype/bom/bom.py
index ffcbbd9..5fa2cc7 100644
--- a/erpnext/manufacturing/doctype/bom/bom.py
+++ b/erpnext/manufacturing/doctype/bom/bom.py
@@ -288,8 +288,8 @@
 		for d in self.get('bom_materials'):
 			if d.bom_no:
 				d.rate = self.get_bom_unitcost(d.bom_no)
-			d.amount = flt(d.rate) * flt(d.qty)
-			d.qty_consumed_per_unit = flt(d.qty) / flt(self.quantity)
+			d.amount = flt(d.rate, self.precision("rate", d)) * flt(d.qty, self.precision("qty", d))
+			d.qty_consumed_per_unit = flt(d.qty, self.precision("qty", d)) / flt(self.quantity, self.precision("quantity"))
 			total_rm_cost += d.amount
 
 		self.raw_material_cost = total_rm_cost
@@ -322,17 +322,19 @@
 
 	def get_child_exploded_items(self, bom_no, qty):
 		""" Add all items from Flat BOM of child BOM"""
-
-		child_fb_items = frappe.db.sql("""select item_code, description, stock_uom, qty, rate,
-			qty_consumed_per_unit from `tabBOM Explosion Item`
-			where parent = %s and docstatus = 1""", bom_no, as_dict = 1)
+		# Did not use qty_consumed_per_unit in the query, as it leads to rounding loss
+		child_fb_items = frappe.db.sql("""select bom_item.item_code, bom_item.description,
+			bom_item.stock_uom, bom_item.qty, bom_item.rate,
+			ifnull(bom_item.qty, 0 ) / ifnull(bom.quantity, 1) as qty_consumed_per_unit
+			from `tabBOM Explosion Item` bom_item, tabBOM bom
+			where bom_item.parent = bom.name and bom.name = %s and bom.docstatus = 1""", bom_no, as_dict = 1)
 
 		for d in child_fb_items:
 			self.add_to_cur_exploded_items(frappe._dict({
 				'item_code'				: d['item_code'],
 				'description'			: d['description'],
 				'stock_uom'				: d['stock_uom'],
-				'qty'					: flt(d['qty_consumed_per_unit'])*qty,
+				'qty'					: d['qty_consumed_per_unit']*qty,
 				'rate'					: flt(d['rate']),
 			}))
 
@@ -362,19 +364,21 @@
 def get_bom_items_as_dict(bom, qty=1, fetch_exploded=1):
 	item_dict = {}
 
+	# Did not use qty_consumed_per_unit in the query, as it leads to rounding loss
 	query = """select
 				bom_item.item_code,
 				item.item_name,
-				ifnull(sum(bom_item.qty_consumed_per_unit),0) * %(qty)s as qty,
+				sum(ifnull(bom_item.qty, 0)/ifnull(bom.quantity, 1)) * %(qty)s as qty,
 				item.description,
 				item.stock_uom,
 				item.default_warehouse,
 				item.expense_account as expense_account,
 				item.buying_cost_center as cost_center
 			from
-				`tab%(table)s` bom_item, `tabItem` item
+				`tab%(table)s` bom_item, `tabBOM` bom, `tabItem` item
 			where
-				bom_item.docstatus < 2
+				bom_item.parent = bom.name
+				and bom_item.docstatus < 2
 				and bom_item.parent = "%(bom)s"
 				and item.name = bom_item.item_code
 				%(conditions)s
diff --git a/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.py b/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.py
index 945c77e..547ca8b 100644
--- a/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.py
+++ b/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.py
@@ -250,23 +250,24 @@
 			bom_wise_item_details = {}
 			if self.use_multi_level_bom:
 				# get all raw materials with sub assembly childs
+				# Did not use qty_consumed_per_unit in the query, as it leads to rounding loss
 				for d in frappe.db.sql("""select fb.item_code,
-					ifnull(sum(fb.qty_consumed_per_unit), 0) as qty,
+					ifnull(sum(ifnull(fb.qty, 0)/ifnull(bom.quantity, 1)), 0) as qty,
 					fb.description, fb.stock_uom, it.min_order_qty
-					from `tabBOM Explosion Item` fb,`tabItem` it
-					where it.name = fb.item_code and ifnull(it.is_pro_applicable, 'No') = 'No'
+					from `tabBOM Explosion Item` fb, `tabBOM` bom, `tabItem` it
+					where bom.name = fb.parent and it.name = fb.item_code and ifnull(it.is_pro_applicable, 'No') = 'No'
 					and ifnull(it.is_sub_contracted_item, 'No') = 'No'
-					and fb.docstatus<2 and fb.parent=%s
+					and fb.docstatus<2 and bom.name=%s
 					group by item_code, stock_uom""", bom, as_dict=1):
 						bom_wise_item_details.setdefault(d.item_code, d)
 			else:
 				# Get all raw materials considering SA items as raw materials,
 				# so no childs of SA items
 				for d in frappe.db.sql("""select bom_item.item_code,
-					ifnull(sum(bom_item.qty_consumed_per_unit), 0) as qty,
+					ifnull(sum(ifnull(bom_item.qty, 0)/ifnull(bom.quantity, 1)), 0) as qty,
 					bom_item.description, bom_item.stock_uom, item.min_order_qty
-					from `tabBOM Item` bom_item, tabItem item
-					where bom_item.parent = %s and bom_item.docstatus < 2
+					from `tabBOM Item` bom_item, `tabBOM` bom, tabItem item
+					where bom.name = bom_item.parent and bom.name = %s and bom_item.docstatus < 2
 					and bom_item.item_code = item.name
 					group by item_code""", bom, as_dict=1):
 						bom_wise_item_details.setdefault(d.item_code, d)
diff --git a/erpnext/projects/doctype/project/project.json b/erpnext/projects/doctype/project/project.json
index c7c459c..f7a5754 100644
--- a/erpnext/projects/doctype/project/project.json
+++ b/erpnext/projects/doctype/project/project.json
@@ -1,5 +1,6 @@
 {
-  "allow_import": 1, 
+ "allow_attach": 1, 
+ "allow_import": 1, 
  "allow_rename": 1, 
  "autoname": "field:project_name", 
  "creation": "2013-03-07 11:55:07", 
@@ -208,6 +209,13 @@
    "search_index": 0
   }, 
   {
+   "fieldname": "cost_center", 
+   "fieldtype": "Link", 
+   "label": "Default Cost Center", 
+   "options": "Cost Center", 
+   "permlevel": 0
+  }, 
+  {
    "fieldname": "column_break0", 
    "fieldtype": "Column Break", 
    "label": "Margin", 
@@ -265,7 +273,7 @@
  "icon": "icon-puzzle-piece", 
  "idx": 1, 
  "max_attachments": 4, 
- "modified": "2014-08-04 03:22:11.416219", 
+ "modified": "2014-08-26 14:59:27.052172", 
  "modified_by": "Administrator", 
  "module": "Projects", 
  "name": "Project", 
diff --git a/erpnext/projects/doctype/project/project.py b/erpnext/projects/doctype/project/project.py
index 547e12a..88e6e12 100644
--- a/erpnext/projects/doctype/project/project.py
+++ b/erpnext/projects/doctype/project/project.py
@@ -67,3 +67,7 @@
 
 	def on_trash(self):
 		delete_events(self.doctype, self.name)
+
+@frappe.whitelist()
+def get_cost_center_name(project_name):
+	return frappe.db.get_value("Project", project_name, "cost_center")
\ No newline at end of file
diff --git a/erpnext/public/js/transaction.js b/erpnext/public/js/transaction.js
index 801ea57..d5209c1 100644
--- a/erpnext/public/js/transaction.js
+++ b/erpnext/public/js/transaction.js
@@ -151,9 +151,11 @@
 							transaction_date: me.frm.doc.transaction_date,
 							ignore_pricing_rule: me.frm.doc.ignore_pricing_rule,
 							doctype: item.doctype,
-							name: item.name
+							name: item.name,
+							project_name: item.project_name || me.frm.doc.project_name
 						}
 					},
+					
 					callback: function(r) {
 						if(!r.exc) {
 							me.frm.script_manager.trigger("price_list_rate", cdt, cdn);
diff --git a/erpnext/selling/doctype/quotation/quotation_list.js b/erpnext/selling/doctype/quotation/quotation_list.js
index 91b65ee..bbc264d 100644
--- a/erpnext/selling/doctype/quotation/quotation_list.js
+++ b/erpnext/selling/doctype/quotation/quotation_list.js
@@ -1,5 +1,4 @@
 frappe.listview_settings['Quotation'] = {
 	add_fields: ["customer_name", "quotation_to", "grand_total", "status",
-		"company", "currency", "order_type", "lead", "customer"],
-	filters: [["status", "=", "Submitted"]]
+		"company", "currency", "order_type", "lead", "customer"]
 };
diff --git a/erpnext/selling/sales_common.js b/erpnext/selling/sales_common.js
index 20f1028..66e935a 100644
--- a/erpnext/selling/sales_common.js
+++ b/erpnext/selling/sales_common.js
@@ -585,3 +585,18 @@
 		});
 	}
 });
+
+frappe.ui.form.on(cur_frm.doctype,"project_name", function(frm) {
+	frappe.call({
+		method:'erpnext.projects.doctype.project.project.get_cost_center_name' ,
+		args: {	project_name: frm.doc.project_name	},
+		callback: function(r, rt) {
+			if(!r.exc) { 
+				$.each(frm.doc[cur_frm.cscript.fname] || [], function(i, row) {
+					frappe.model.set_value(row.doctype, row.name, "cost_center", r.message);
+					msgprint(__("Cost Center For Item with Item Code '"+row.item_name+"' has been Changed to "+ r.message));
+				})
+			}
+		}
+	})
+})
diff --git a/erpnext/setup/page/setup_wizard/setup_wizard.py b/erpnext/setup/page/setup_wizard/setup_wizard.py
index 343cba5..1151b1a 100644
--- a/erpnext/setup/page/setup_wizard/setup_wizard.py
+++ b/erpnext/setup/page/setup_wizard/setup_wizard.py
@@ -7,7 +7,7 @@
 from frappe.utils import cstr, flt, getdate
 from frappe import _
 from frappe.utils.file_manager import save_file
-from frappe.translate import set_default_language, get_dict, get_lang_dict
+from frappe.translate import set_default_language, get_dict, get_lang_dict, send_translations
 from frappe.country_info import get_country_info
 from frappe.utils.nestedset import get_root_of
 from default_website import website_maker
@@ -423,7 +423,7 @@
 	frappe.local.lang = lang
 	m = get_dict("page", "setup-wizard")
 	m.update(get_dict("boot"))
-	frappe.local.response["__messages"] = m
+	send_translations(m)
 	return lang
 
 
diff --git a/erpnext/stock/doctype/purchase_receipt_item/purchase_receipt_item.json b/erpnext/stock/doctype/purchase_receipt_item/purchase_receipt_item.json
index 0222e58..69c2755 100755
--- a/erpnext/stock/doctype/purchase_receipt_item/purchase_receipt_item.json
+++ b/erpnext/stock/doctype/purchase_receipt_item/purchase_receipt_item.json
@@ -301,16 +301,6 @@
    "width": "100px"
   }, 
   {
-   "default": ":Company", 
-   "depends_on": "eval:cint(sys_defaults.auto_accounting_for_stock)", 
-   "fieldname": "cost_center", 
-   "fieldtype": "Link", 
-   "label": "Cost Center", 
-   "options": "Cost Center", 
-   "permlevel": 0, 
-   "print_hide": 1
-  }, 
-  {
    "fieldname": "project_name", 
    "fieldtype": "Link", 
    "in_filter": 1, 
@@ -321,6 +311,16 @@
    "read_only": 0
   }, 
   {
+   "default": ":Company", 
+   "depends_on": "eval:cint(sys_defaults.auto_accounting_for_stock)", 
+   "fieldname": "cost_center", 
+   "fieldtype": "Link", 
+   "label": "Cost Center", 
+   "options": "Cost Center", 
+   "permlevel": 0, 
+   "print_hide": 1
+  }, 
+  {
    "fieldname": "qa_no", 
    "fieldtype": "Link", 
    "label": "Quality Inspection", 
@@ -557,7 +557,7 @@
  ], 
  "idx": 1, 
  "istable": 1, 
- "modified": "2014-08-11 12:48:13.509109", 
+ "modified": "2014-08-26 12:38:04.065982", 
  "modified_by": "Administrator", 
  "module": "Stock", 
  "name": "Purchase Receipt Item", 
diff --git a/erpnext/stock/get_item_details.py b/erpnext/stock/get_item_details.py
index efb793d..fffb52e 100644
--- a/erpnext/stock/get_item_details.py
+++ b/erpnext/stock/get_item_details.py
@@ -29,6 +29,7 @@
 			"is_subcontracted": "Yes" / "No",
 			"transaction_type": "selling",
 			"ignore_pricing_rule": 0/1
+			"project_name": "",
 		}
 	"""
 	args = process_args(args)
@@ -149,7 +150,8 @@
 			or args.expense_account
 			or frappe.db.get_value("Item Group", item.item_group, "default_expense_account")
 			or frappe.db.get_value("Company", args.company, "default_expense_account")),
-		"cost_center": ((item.selling_cost_center if args.transaction_type == "selling" else item.buying_cost_center)
+		"cost_center": (frappe.db.get_value("Project", args.project_name, "cost_center")
+			or (item.selling_cost_center if args.transaction_type == "selling" else item.buying_cost_center)
 			or frappe.db.get_value("Item Group", item.item_group, "default_cost_center")
 			or frappe.db.get_value("Company", args.company, "cost_center")),
 		"batch_no": None,
diff --git a/erpnext/support/doctype/maintenance_schedule/maintenance_schedule.json b/erpnext/support/doctype/maintenance_schedule/maintenance_schedule.json
index 7035f43..56344b1 100644
--- a/erpnext/support/doctype/maintenance_schedule/maintenance_schedule.json
+++ b/erpnext/support/doctype/maintenance_schedule/maintenance_schedule.json
@@ -1,6 +1,6 @@
 {
  "autoname": "MS.#####", 
- "creation": "2013-01-10 16:34:30.000000", 
+ "creation": "2013-01-10 16:34:30", 
  "docstatus": 0, 
  "doctype": "DocType", 
  "fields": [
@@ -213,12 +213,21 @@
    "permlevel": 0, 
    "reqd": 1, 
    "search_index": 0
+  }, 
+  {
+   "fieldname": "amended_from", 
+   "fieldtype": "Link", 
+   "label": "Amended From", 
+   "no_copy": 1, 
+   "options": "Maintenance Schedule", 
+   "print_hide": 1, 
+   "read_only": 1
   }
  ], 
  "icon": "icon-calendar", 
  "idx": 1, 
  "is_submittable": 1, 
- "modified": "2014-01-20 17:48:56.000000", 
+ "modified": "2014-08-28 11:39:17.152817", 
  "modified_by": "Administrator", 
  "module": "Support", 
  "name": "Maintenance Schedule", 
@@ -239,5 +248,5 @@
    "write": 1
   }
  ], 
- "search_fields": "status,customer,customer_name, sales_order_no"
+ "search_fields": "status,customer,customer_name"
 }
\ No newline at end of file
