Merge pull request #22374 from deepeshgarg007/employee_advance_cancel

fix: Unable to cancel employee advance
diff --git a/erpnext/accounts/doctype/cost_center/cost_center.js b/erpnext/accounts/doctype/cost_center/cost_center.js
index f341f78..ee23b1b 100644
--- a/erpnext/accounts/doctype/cost_center/cost_center.js
+++ b/erpnext/accounts/doctype/cost_center/cost_center.js
@@ -71,8 +71,13 @@
 					"label": "Cost Center Number",
 					"fieldname": "cost_center_number",
 					"fieldtype": "Data",
-					"reqd": 1,
 					"default": frm.doc.cost_center_number
+				},
+				{
+					"label": __("Merge with existing"),
+					"fieldname": "merge",
+					"fieldtype": "Check",
+					"default": 0
 				}
 			],
 			primary_action: function() {
@@ -87,8 +92,9 @@
 					args: {
 						docname: frm.doc.name,
 						cost_center_name: data.cost_center_name,
-						cost_center_number: data.cost_center_number,
-						company: frm.doc.company
+						cost_center_number: cstr(data.cost_center_number),
+						company: frm.doc.company,
+						merge: data.merge
 					},
 					callback: function(r) {
 						frappe.dom.unfreeze();
diff --git a/erpnext/accounts/doctype/gl_entry/gl_entry.py b/erpnext/accounts/doctype/gl_entry/gl_entry.py
index 291aff3..645da34 100644
--- a/erpnext/accounts/doctype/gl_entry/gl_entry.py
+++ b/erpnext/accounts/doctype/gl_entry/gl_entry.py
@@ -4,7 +4,7 @@
 from __future__ import unicode_literals
 import frappe, erpnext
 from frappe import _
-from frappe.utils import flt, fmt_money, getdate, formatdate
+from frappe.utils import flt, fmt_money, getdate, formatdate, cint
 from frappe.model.document import Document
 from frappe.model.naming import set_name_from_naming_options
 from frappe.model.meta import get_field_precision
@@ -134,10 +134,17 @@
 
 			return self.cost_center_company[self.cost_center]
 
+		def _check_is_group():
+			return cint(frappe.get_cached_value('Cost Center', self.cost_center, 'is_group'))
+
 		if self.cost_center and _get_cost_center_company() != self.company:
 			frappe.throw(_("{0} {1}: Cost Center {2} does not belong to Company {3}")
 				.format(self.voucher_type, self.voucher_no, self.cost_center, self.company))
 
+		if self.cost_center and _check_is_group():
+			frappe.throw(_("""{0} {1}: Cost Center {2} is a group cost center and group cost centers cannot
+				be used in transactions""").format(self.voucher_type, self.voucher_no, frappe.bold(self.cost_center)))
+
 	def validate_party(self):
 		validate_party_frozen_disabled(self.party_type, self.party)
 
diff --git a/erpnext/accounts/report/account_balance/test_account_balance.py b/erpnext/accounts/report/account_balance/test_account_balance.py
index 5544fc4..b6ced31 100644
--- a/erpnext/accounts/report/account_balance/test_account_balance.py
+++ b/erpnext/accounts/report/account_balance/test_account_balance.py
@@ -61,7 +61,7 @@
 		debit_to = 'Debtors - _TC2',
 		income_account = 'Sales - _TC2',
 		expense_account = 'Cost of Goods Sold - _TC2',
-		cost_center = '_Test Company 2 - _TC2')
+		cost_center = 'Main - _TC2')
 
 
 
diff --git a/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py b/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py
index f0274b4..2ff5b53 100644
--- a/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py
+++ b/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py
@@ -63,7 +63,7 @@
 			debit_to = 'Debtors - _TC2',
 			income_account = 'Sales - _TC2',
 			expense_account = 'Cost of Goods Sold - _TC2',
-			cost_center = '_Test Company 2 - _TC2',
+			cost_center = 'Main - _TC2',
 			do_not_save=1)
 
 	si.append('payment_schedule', dict(due_date=getdate(add_days(today(), 30)), invoice_portion=30.00, payment_amount=30))
@@ -83,14 +83,14 @@
 
 def make_credit_note(docname):
 	create_sales_invoice(company="_Test Company 2",
-			customer = '_Test Customer 2',
-			currency = 'EUR',
-			qty = -1,
-			warehouse = 'Finished Goods - _TC2',
-			debit_to = 'Debtors - _TC2',
-			income_account = 'Sales - _TC2',
-			expense_account = 'Cost of Goods Sold - _TC2',
-			cost_center = '_Test Company 2 - _TC2',
-			is_return = 1,
-			return_against = docname)
+		customer = '_Test Customer 2',
+		currency = 'EUR',
+		qty = -1,
+		warehouse = 'Finished Goods - _TC2',
+		debit_to = 'Debtors - _TC2',
+		income_account = 'Sales - _TC2',
+		expense_account = 'Cost of Goods Sold - _TC2',
+		cost_center = 'Main - _TC2',
+		is_return = 1,
+		return_against = docname)
 
diff --git a/erpnext/accounts/utils.py b/erpnext/accounts/utils.py
index f6cd606..16146f4 100644
--- a/erpnext/accounts/utils.py
+++ b/erpnext/accounts/utils.py
@@ -837,7 +837,7 @@
 		pass
 
 @frappe.whitelist()
-def update_cost_center(docname, cost_center_name, cost_center_number, company):
+def update_cost_center(docname, cost_center_name, cost_center_number, company, merge):
 	'''
 		Renames the document by adding the number as a prefix to the current name and updates
 		all transaction where it was present.
@@ -853,7 +853,7 @@
 
 	new_name = get_autoname_with_number(cost_center_number, cost_center_name, docname, company)
 	if docname != new_name:
-		frappe.rename_doc("Cost Center", docname, new_name, force=1)
+		frappe.rename_doc("Cost Center", docname, new_name, force=1, merge=merge)
 		return new_name
 
 def validate_field_number(doctype_name, docname, number_value, company, field_name):
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index b17cc47..928c0ab 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -702,6 +702,6 @@
 erpnext.patches.v12_0.set_multi_uom_in_rfq
 erpnext.patches.v13_0.delete_old_sales_reports
 execute:frappe.delete_doc_if_exists("DocType", "Bank Reconciliation")
-erpnext.patches.v13_0.move_doctype_reports_and_notification_from_hr_to_payroll
-erpnext.patches.v13_0.move_payroll_setting_separately_from_hr_settings
-erpnext.patches.v13_0.check_is_income_tax_component
+erpnext.patches.v13_0.move_doctype_reports_and_notification_from_hr_to_payroll #22-06-2020
+erpnext.patches.v13_0.move_payroll_setting_separately_from_hr_settings #22-06-2020
+erpnext.patches.v13_0.check_is_income_tax_component #22-06-2020
diff --git a/erpnext/patches/v13_0/check_is_income_tax_component.py b/erpnext/patches/v13_0/check_is_income_tax_component.py
index f69412c..9ad48e2 100644
--- a/erpnext/patches/v13_0/check_is_income_tax_component.py
+++ b/erpnext/patches/v13_0/check_is_income_tax_component.py
@@ -4,9 +4,28 @@
 from __future__ import unicode_literals
 
 import frappe, erpnext
+from erpnext.regional.india.setup import setup
 
 def execute():
-    frappe.reload_doc('Payroll', 'doctype', 'salary_structure')
+
+    doctypes = ['salary_component',
+        'Employee Tax Exemption Declaration',
+        'Employee Tax Exemption Proof Submission',
+        'Employee Tax Exemption Declaration Category',
+        'Employee Tax Exemption Proof Submission Detail'
+    ]
+
+    for doctype in doctypes:
+        frappe.reload_doc('Payroll', 'doctype', doctype)
+
+
+    reports = ['Professional Tax Deductions', 'Provident Fund Deductions']
+    for report in reports:
+        frappe.reload_doc('Regional', 'Report', report)
+        frappe.reload_doc('Regional', 'Report', report)
+
+    if erpnext.get_region() == "India":
+        setup(patch=True)
 
     if frappe.db.exists("Salary Component", "Income Tax"):
         frappe.db.set_value("Salary Component", "Income Tax", "is_income_tax_component", 1)
diff --git a/erpnext/payroll/doctype/additional_salary/additional_salary.json b/erpnext/payroll/doctype/additional_salary/additional_salary.json
index ad64289..69cb5da 100644
--- a/erpnext/payroll/doctype/additional_salary/additional_salary.json
+++ b/erpnext/payroll/doctype/additional_salary/additional_salary.json
@@ -163,7 +163,7 @@
  ],
  "is_submittable": 1,
  "links": [],
- "modified": "2020-05-27 21:10:50.374063",
+ "modified": "2020-06-22 21:10:50.374063",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Additional Salary",
diff --git a/erpnext/payroll/doctype/employee_benefit_application/employee_benefit_application.json b/erpnext/payroll/doctype/employee_benefit_application/employee_benefit_application.json
index 275c855..b0c1bd6 100644
--- a/erpnext/payroll/doctype/employee_benefit_application/employee_benefit_application.json
+++ b/erpnext/payroll/doctype/employee_benefit_application/employee_benefit_application.json
@@ -119,7 +119,7 @@
  ],
  "is_submittable": 1,
  "links": [],
- "modified": "2020-05-27 22:58:31.271922",
+ "modified": "2020-06-22 22:58:31.271922",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Employee Benefit Application",
diff --git a/erpnext/payroll/doctype/employee_benefit_application_detail/employee_benefit_application_detail.json b/erpnext/payroll/doctype/employee_benefit_application_detail/employee_benefit_application_detail.json
index f0415d2..fa6b4da 100644
--- a/erpnext/payroll/doctype/employee_benefit_application_detail/employee_benefit_application_detail.json
+++ b/erpnext/payroll/doctype/employee_benefit_application_detail/employee_benefit_application_detail.json
@@ -45,7 +45,7 @@
  ],
  "istable": 1,
  "links": [],
- "modified": "2020-05-27 23:45:00.519134",
+ "modified": "2020-06-22 23:45:00.519134",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Employee Benefit Application Detail",
diff --git a/erpnext/payroll/doctype/employee_benefit_claim/employee_benefit_claim.json b/erpnext/payroll/doctype/employee_benefit_claim/employee_benefit_claim.json
index 7fea59f..ae4c218 100644
--- a/erpnext/payroll/doctype/employee_benefit_claim/employee_benefit_claim.json
+++ b/erpnext/payroll/doctype/employee_benefit_claim/employee_benefit_claim.json
@@ -123,7 +123,7 @@
  ],
  "is_submittable": 1,
  "links": [],
- "modified": "2020-05-27 23:01:50.791676",
+ "modified": "2020-06-22 23:01:50.791676",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Employee Benefit Claim",
diff --git a/erpnext/payroll/doctype/employee_incentive/employee_incentive.json b/erpnext/payroll/doctype/employee_incentive/employee_incentive.json
index 81ff865..204c9a4 100644
--- a/erpnext/payroll/doctype/employee_incentive/employee_incentive.json
+++ b/erpnext/payroll/doctype/employee_incentive/employee_incentive.json
@@ -74,7 +74,7 @@
  ],
  "is_submittable": 1,
  "links": [],
- "modified": "2020-05-27 22:42:51.209630",
+ "modified": "2020-06-22 22:42:51.209630",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Employee Incentive",
diff --git a/erpnext/payroll/doctype/employee_other_income/employee_other_income.json b/erpnext/payroll/doctype/employee_other_income/employee_other_income.json
index c5a2a73..14f63e4 100644
--- a/erpnext/payroll/doctype/employee_other_income/employee_other_income.json
+++ b/erpnext/payroll/doctype/employee_other_income/employee_other_income.json
@@ -76,7 +76,7 @@
  ],
  "is_submittable": 1,
  "links": [],
- "modified": "2020-05-27 22:55:17.604688",
+ "modified": "2020-06-22 22:55:17.604688",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Employee Other Income",
diff --git a/erpnext/payroll/doctype/employee_tax_exemption_category/employee_tax_exemption_category.json b/erpnext/payroll/doctype/employee_tax_exemption_category/employee_tax_exemption_category.json
index c097082..f2556d7 100644
--- a/erpnext/payroll/doctype/employee_tax_exemption_category/employee_tax_exemption_category.json
+++ b/erpnext/payroll/doctype/employee_tax_exemption_category/employee_tax_exemption_category.json
@@ -26,7 +26,7 @@
   }
  ],
  "links": [],
- "modified": "2020-05-27 23:16:47.472910",
+ "modified": "2020-06-22 23:16:47.472910",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Employee Tax Exemption Category",
diff --git a/erpnext/payroll/doctype/employee_tax_exemption_declaration/employee_tax_exemption_declaration.json b/erpnext/payroll/doctype/employee_tax_exemption_declaration/employee_tax_exemption_declaration.json
index 5423365..de7c348 100644
--- a/erpnext/payroll/doctype/employee_tax_exemption_declaration/employee_tax_exemption_declaration.json
+++ b/erpnext/payroll/doctype/employee_tax_exemption_declaration/employee_tax_exemption_declaration.json
@@ -107,7 +107,7 @@
  ],
  "is_submittable": 1,
  "links": [],
- "modified": "2020-05-27 22:49:43.829892",
+ "modified": "2020-06-22 22:49:43.829892",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Employee Tax Exemption Declaration",
diff --git a/erpnext/payroll/doctype/employee_tax_exemption_declaration_category/employee_tax_exemption_declaration_category.json b/erpnext/payroll/doctype/employee_tax_exemption_declaration_category/employee_tax_exemption_declaration_category.json
index eddaec2..8c2f9aa 100644
--- a/erpnext/payroll/doctype/employee_tax_exemption_declaration_category/employee_tax_exemption_declaration_category.json
+++ b/erpnext/payroll/doctype/employee_tax_exemption_declaration_category/employee_tax_exemption_declaration_category.json
@@ -48,7 +48,7 @@
  ],
  "istable": 1,
  "links": [],
- "modified": "2020-05-27 23:41:03.638739",
+ "modified": "2020-06-22 23:41:03.638739",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Employee Tax Exemption Declaration Category",
diff --git a/erpnext/payroll/doctype/employee_tax_exemption_proof_submission/employee_tax_exemption_proof_submission.json b/erpnext/payroll/doctype/employee_tax_exemption_proof_submission/employee_tax_exemption_proof_submission.json
index de8fa09..b62b5aa 100644
--- a/erpnext/payroll/doctype/employee_tax_exemption_proof_submission/employee_tax_exemption_proof_submission.json
+++ b/erpnext/payroll/doctype/employee_tax_exemption_proof_submission/employee_tax_exemption_proof_submission.json
@@ -130,7 +130,7 @@
  ],
  "is_submittable": 1,
  "links": [],
- "modified": "2020-05-27 22:53:10.412321",
+ "modified": "2020-06-22 22:53:10.412321",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Employee Tax Exemption Proof Submission",
diff --git a/erpnext/payroll/doctype/employee_tax_exemption_proof_submission_detail/employee_tax_exemption_proof_submission_detail.json b/erpnext/payroll/doctype/employee_tax_exemption_proof_submission_detail/employee_tax_exemption_proof_submission_detail.json
index 4c53bd3..c1f5320 100644
--- a/erpnext/payroll/doctype/employee_tax_exemption_proof_submission_detail/employee_tax_exemption_proof_submission_detail.json
+++ b/erpnext/payroll/doctype/employee_tax_exemption_proof_submission_detail/employee_tax_exemption_proof_submission_detail.json
@@ -53,7 +53,7 @@
  ],
  "istable": 1,
  "links": [],
- "modified": "2020-05-27 23:37:08.265600",
+ "modified": "2020-06-22 23:37:08.265600",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Employee Tax Exemption Proof Submission Detail",
diff --git a/erpnext/payroll/doctype/employee_tax_exemption_sub_category/employee_tax_exemption_sub_category.json b/erpnext/payroll/doctype/employee_tax_exemption_sub_category/employee_tax_exemption_sub_category.json
index b89d9c1..f8c4b8b 100644
--- a/erpnext/payroll/doctype/employee_tax_exemption_sub_category/employee_tax_exemption_sub_category.json
+++ b/erpnext/payroll/doctype/employee_tax_exemption_sub_category/employee_tax_exemption_sub_category.json
@@ -38,7 +38,7 @@
   }
  ],
  "links": [],
- "modified": "2020-05-27 23:18:08.254645",
+ "modified": "2020-06-22 23:18:08.254645",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Employee Tax Exemption Sub Category",
diff --git a/erpnext/payroll/doctype/income_tax_slab/income_tax_slab.json b/erpnext/payroll/doctype/income_tax_slab/income_tax_slab.json
index 72b4332..6337d5a 100644
--- a/erpnext/payroll/doctype/income_tax_slab/income_tax_slab.json
+++ b/erpnext/payroll/doctype/income_tax_slab/income_tax_slab.json
@@ -94,7 +94,7 @@
  ],
  "is_submittable": 1,
  "links": [],
- "modified": "2020-05-27 20:27:13.425084",
+ "modified": "2020-06-22 20:27:13.425084",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Income Tax Slab",
diff --git a/erpnext/payroll/doctype/income_tax_slab_other_charges/income_tax_slab_other_charges.json b/erpnext/payroll/doctype/income_tax_slab_other_charges/income_tax_slab_other_charges.json
index 2531c79..7f21204 100644
--- a/erpnext/payroll/doctype/income_tax_slab_other_charges/income_tax_slab_other_charges.json
+++ b/erpnext/payroll/doctype/income_tax_slab_other_charges/income_tax_slab_other_charges.json
@@ -62,7 +62,7 @@
  ],
  "istable": 1,
  "links": [],
- "modified": "2020-05-27 23:33:17.931912",
+ "modified": "2020-06-22 23:33:17.931912",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Income Tax Slab Other Charges",
diff --git a/erpnext/payroll/doctype/payroll_employee_detail/payroll_employee_detail.json b/erpnext/payroll/doctype/payroll_employee_detail/payroll_employee_detail.json
index b22e5de..bb68e18 100644
--- a/erpnext/payroll/doctype/payroll_employee_detail/payroll_employee_detail.json
+++ b/erpnext/payroll/doctype/payroll_employee_detail/payroll_employee_detail.json
@@ -52,7 +52,7 @@
  ],
  "istable": 1,
  "links": [],
- "modified": "2020-05-27 23:25:13.779032",
+ "modified": "2020-06-22 23:25:13.779032",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Payroll Employee Detail",
diff --git a/erpnext/payroll/doctype/payroll_entry/payroll_entry.json b/erpnext/payroll/doctype/payroll_entry/payroll_entry.json
index 4888be2..31a8996 100644
--- a/erpnext/payroll/doctype/payroll_entry/payroll_entry.json
+++ b/erpnext/payroll/doctype/payroll_entry/payroll_entry.json
@@ -262,7 +262,7 @@
  "icon": "fa fa-cog",
  "is_submittable": 1,
  "links": [],
- "modified": "2020-05-27 20:06:06.953904",
+ "modified": "2020-06-22 20:06:06.953904",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Payroll Entry",
diff --git a/erpnext/payroll/doctype/payroll_period/payroll_period.json b/erpnext/payroll/doctype/payroll_period/payroll_period.json
index 345a241..c919b4f 100644
--- a/erpnext/payroll/doctype/payroll_period/payroll_period.json
+++ b/erpnext/payroll/doctype/payroll_period/payroll_period.json
@@ -53,7 +53,7 @@
   }
  ],
  "links": [],
- "modified": "2020-05-27 20:12:32.684189",
+ "modified": "2020-06-22 20:12:32.684189",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Payroll Period",
diff --git a/erpnext/payroll/doctype/payroll_period_date/payroll_period_date.json b/erpnext/payroll/doctype/payroll_period_date/payroll_period_date.json
index d745fcd..4a2f383 100644
--- a/erpnext/payroll/doctype/payroll_period_date/payroll_period_date.json
+++ b/erpnext/payroll/doctype/payroll_period_date/payroll_period_date.json
@@ -26,7 +26,7 @@
  ],
  "istable": 1,
  "links": [],
- "modified": "2020-05-27 23:30:15.943356",
+ "modified": "2020-06-22 23:30:15.943356",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Payroll Period Date",
diff --git a/erpnext/payroll/doctype/payroll_settings/payroll_settings.json b/erpnext/payroll/doctype/payroll_settings/payroll_settings.json
index e3b8b3e..e14b478 100644
--- a/erpnext/payroll/doctype/payroll_settings/payroll_settings.json
+++ b/erpnext/payroll/doctype/payroll_settings/payroll_settings.json
@@ -109,7 +109,7 @@
  "icon": "fa fa-cog",
  "issingle": 1,
  "links": [],
- "modified": "2020-06-05 12:35:34.861674",
+ "modified": "2020-06-22 12:35:34.861674",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Payroll Settings",
diff --git a/erpnext/payroll/doctype/retention_bonus/retention_bonus.json b/erpnext/payroll/doctype/retention_bonus/retention_bonus.json
index 53fe17f..da884c2 100644
--- a/erpnext/payroll/doctype/retention_bonus/retention_bonus.json
+++ b/erpnext/payroll/doctype/retention_bonus/retention_bonus.json
@@ -93,7 +93,7 @@
  ],
  "is_submittable": 1,
  "links": [],
- "modified": "2020-05-27 22:42:05.251951",
+ "modified": "2020-06-22 22:42:05.251951",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Retention Bonus",
diff --git a/erpnext/payroll/doctype/salary_component/salary_component.json b/erpnext/payroll/doctype/salary_component/salary_component.json
index f1e5cf0..225b048 100644
--- a/erpnext/payroll/doctype/salary_component/salary_component.json
+++ b/erpnext/payroll/doctype/salary_component/salary_component.json
@@ -245,7 +245,7 @@
  ],
  "icon": "fa fa-flag",
  "links": [],
- "modified": "2020-06-01 15:39:20.826565",
+ "modified": "2020-06-22 15:39:20.826565",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Salary Component",
diff --git a/erpnext/payroll/doctype/salary_detail/salary_detail.json b/erpnext/payroll/doctype/salary_detail/salary_detail.json
index b7d2bc1..adb54f2 100644
--- a/erpnext/payroll/doctype/salary_detail/salary_detail.json
+++ b/erpnext/payroll/doctype/salary_detail/salary_detail.json
@@ -211,7 +211,7 @@
  ],
  "istable": 1,
  "links": [],
- "modified": "2020-05-27 23:21:26.300951",
+ "modified": "2020-06-22 23:21:26.300951",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Salary Detail",
diff --git a/erpnext/payroll/doctype/salary_slip/salary_slip.json b/erpnext/payroll/doctype/salary_slip/salary_slip.json
index a6337de..663a3ef 100644
--- a/erpnext/payroll/doctype/salary_slip/salary_slip.json
+++ b/erpnext/payroll/doctype/salary_slip/salary_slip.json
@@ -616,7 +616,7 @@
  "idx": 9,
  "is_submittable": 1,
  "links": [],
- "modified": "2020-06-05 14:42:43.921828",
+ "modified": "2020-06-22 14:42:43.921828",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Salary Slip",
diff --git a/erpnext/payroll/doctype/salary_slip_timesheet/salary_slip_timesheet.json b/erpnext/payroll/doctype/salary_slip_timesheet/salary_slip_timesheet.json
index 028c195..9930c53 100644
--- a/erpnext/payroll/doctype/salary_slip_timesheet/salary_slip_timesheet.json
+++ b/erpnext/payroll/doctype/salary_slip_timesheet/salary_slip_timesheet.json
@@ -28,7 +28,7 @@
  ],
  "istable": 1,
  "links": [],
- "modified": "2020-05-27 23:27:43.463532",
+ "modified": "2020-06-22 23:27:43.463532",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Salary Slip Timesheet",
diff --git a/erpnext/payroll/doctype/salary_structure/salary_structure.json b/erpnext/payroll/doctype/salary_structure/salary_structure.json
index e710f6b..5f94929 100644
--- a/erpnext/payroll/doctype/salary_structure/salary_structure.json
+++ b/erpnext/payroll/doctype/salary_structure/salary_structure.json
@@ -282,7 +282,7 @@
  "idx": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2020-06-05 17:07:26.129355",
+ "modified": "2020-06-22 17:07:26.129355",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Salary Structure",
diff --git a/erpnext/payroll/doctype/salary_structure_assignment/salary_structure_assignment.json b/erpnext/payroll/doctype/salary_structure_assignment/salary_structure_assignment.json
index 4f74a7f..c84e034 100644
--- a/erpnext/payroll/doctype/salary_structure_assignment/salary_structure_assignment.json
+++ b/erpnext/payroll/doctype/salary_structure_assignment/salary_structure_assignment.json
@@ -124,7 +124,7 @@
  ],
  "is_submittable": 1,
  "links": [],
- "modified": "2020-05-27 19:58:09.964692",
+ "modified": "2020-06-22 19:58:09.964692",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Salary Structure Assignment",
diff --git a/erpnext/payroll/doctype/taxable_salary_slab/taxable_salary_slab.json b/erpnext/payroll/doctype/taxable_salary_slab/taxable_salary_slab.json
index 277576e..ce9512f 100644
--- a/erpnext/payroll/doctype/taxable_salary_slab/taxable_salary_slab.json
+++ b/erpnext/payroll/doctype/taxable_salary_slab/taxable_salary_slab.json
@@ -51,7 +51,7 @@
  ],
  "istable": 1,
  "links": [],
- "modified": "2020-05-27 23:32:47.253106",
+ "modified": "2020-06-22 23:32:47.253106",
  "modified_by": "Administrator",
  "module": "Payroll",
  "name": "Taxable Salary Slab",
diff --git a/erpnext/www/lms/content.html b/erpnext/www/lms/content.html
index cdc7141..dc9b6d8 100644
--- a/erpnext/www/lms/content.html
+++ b/erpnext/www/lms/content.html
@@ -59,7 +59,7 @@
 {% macro title() %}
 	<div class="mb-3">
 		<a href="/lms/course?name={{ course }}&program={{ program }}" class="text-muted">
-				Back to Course
+			{{_('Back to Course')}}
 		</a>
 	</div>
 	<div>
@@ -69,15 +69,15 @@
 
 {% macro navigation() %}
 		{% if previous %}
-			<a href="/lms/content?program={{ program }}&course={{ course }}&topic={{ topic }}&type={{ previous.content_type }}&content={{ previous.content }}" class='btn text-muted' style="box-shadow: none;">Previous</a>
+			<a href="/lms/content?program={{ program }}&course={{ course }}&topic={{ topic }}&type={{ previous.content_type }}&content={{ previous.content }}" class='btn text-muted' style="box-shadow: none;">{{_('Previous')}}</a>
 		{% else %}
-			<a href="/lms/course?name={{ course }}&program={{ program }}" class='btn text-muted' style="box-shadow: none;">Back to Course</a>
+			<a href="/lms/course?name={{ course }}&program={{ program }}" class='btn text-muted' style="box-shadow: none;">{{ _('Back to Course') }}</a>
 		{% endif %}
 
 		{% if next %}
-			<button id="nextButton" onclick="handle('/lms/content?program={{ program }}&course={{ course }}&topic={{ topic }}&type={{ next.content_type }}&content={{ next.content }}')" class='btn btn-primary' disabled="true">Next</button>
+			<button id="nextButton" onclick="handle('/lms/content?program={{ program }}&course={{ course }}&topic={{ topic }}&type={{ next.content_type }}&content={{ next.content }}')" class='btn btn-primary' disabled="true">{{_('Next')}}</button>
 		{% else %}
-			<button id="nextButton" onclick="handle('/lms/course?name={{ course }}&program={{ program }}')" class='btn btn-primary' disabled="true">Finish Topic</button>
+			<button id="nextButton" onclick="handle('/lms/course?name={{ course }}&program={{ program }}')" class='btn btn-primary' disabled="true">{{_('Finish Topic')}}</button>
 		{% endif %}
 {% endmacro %}
 
@@ -86,7 +86,7 @@
 	{{ title() }}
 	<div class="text-muted">
 		{% if content.duration %}
-			{{ content.duration }} Mins
+			{{ content.duration }} {{_('Mins')}}
 		{% endif %}
 
 		{% if content.publish_date and content.duration%}
@@ -94,7 +94,7 @@
 		{% endif %}
 
 		{% if content.publish_date %}
-			Published on {{ content.publish_date.strftime('%d, %b %Y') }}
+			{{_('Published on')}} {{ content.publish_date.strftime('%d, %b %Y') }}
 		{% endif %}
 	</div>
 </div>
@@ -109,13 +109,13 @@
 	{{ title() }}
 	<div class="text-muted">
 		{% if content.author or content.publish_date %}
-			Published
+			{{_('Published')}}
 		{% endif %}
 		{% if content.author %}
-			by {{ content.author }}
+			{{_('by')}} {{ content.author }}
 		{% endif %}
 		{% if content.publish_date %}
-			on {{ content.publish_date.strftime('%d, %b %Y') }}
+			{{_('on')}} {{ content.publish_date.strftime('%d, %b %Y') }}
 		{% endif %}
 	</div>
 </div>
@@ -205,4 +205,4 @@
 
 		{% endif %}
 	</script>
-{% endblock %}
\ No newline at end of file
+{% endblock %}
diff --git a/erpnext/www/lms/course.html b/erpnext/www/lms/course.html
index f2fd936..0d70ed5 100644
--- a/erpnext/www/lms/course.html
+++ b/erpnext/www/lms/course.html
@@ -72,11 +72,11 @@
 		{% if has_access %}
 			<div class='card-footer'>
 				{% if progress[topic.name].completed %}
-					<span class="indicator green">Completed</span>
+					<span class="indicator green">{{_('Completed')}}</span>
 				{% elif progress[topic.name].started %}
-					<span class="indicator orange">In Progress</span>
+					<span class="indicator orange">{{_('In Progress')}}</span>
 				{% else %}
-					<span class="indicator blue">Start</span>
+					<span class="indicator blue">{{_('Start')}}</span>
 				{% endif %}
 			</div>
 			</a>
diff --git a/erpnext/www/lms/index.html b/erpnext/www/lms/index.html
index ffb4419..7ce3521 100644
--- a/erpnext/www/lms/index.html
+++ b/erpnext/www/lms/index.html
@@ -45,7 +45,7 @@
 		<p class='lead'>{{ education_settings.description }}</p>
 		<p class="mt-4">
 			{% if frappe.session.user == 'Guest' %}
-				<a class="btn btn-primary btn-lg" href="'/login#signup'">Sign Up</a>
+				<a class="btn btn-primary btn-lg" href="'/login#signup'">{{_('Sign Up')}}</a>
 			{% endif %}
 		</p>
 	</div>
diff --git a/erpnext/www/lms/macros/card.html b/erpnext/www/lms/macros/card.html
index 076061d..dc8fc5c 100644
--- a/erpnext/www/lms/macros/card.html
+++ b/erpnext/www/lms/macros/card.html
@@ -15,8 +15,8 @@
 		</div>
 		{% if has_access or program.intro_video%}
 		<div class='card-footer'>
-			{% if has_access %} <span class="indicator green">Enrolled</span>
-			{% elif program.intro_video %} <span><a href="{{ program.intro_video }}" target="blank">Watch Intro</a></span>
+			{% if has_access %} <span class="indicator green">{{_('Enrolled')}}</span>
+			{% elif program.intro_video %} <span><a href="{{ program.intro_video }}" target="blank">{{_('Watch Intro')}}</a></span>
 			{% endif %}
 		</div>
 		{% endif %}
diff --git a/erpnext/www/lms/macros/hero.html b/erpnext/www/lms/macros/hero.html
index 66bb861..94f239e 100644
--- a/erpnext/www/lms/macros/hero.html
+++ b/erpnext/www/lms/macros/hero.html
@@ -2,16 +2,16 @@
 	<div class='container pb-5'>
 		<div class="mb-3">
 			<a href="{{ back.url }}" class="text-muted">
-				Back to {{ back.name }}
+				{{_('Back to')}} {{ _(back.name) }}
 			</a>
 		</div>
 		<h1>{{ title }}</h1>
 		<p class='lead' style="max-width: 100%;">{{ description or ''}}</p>
 		<p class="mt-4">
 			{% if frappe.session.user == 'Guest' %}
-			<a id="signup" class="btn btn-primary btn-lg" href="/login#signup">Sign Up</a>
+			<a id="signup" class="btn btn-primary btn-lg" href="/login#signup">{{_('Sign Up')}}</a>
 			{% elif not has_access %}
-			<button id="enroll" class="btn btn-primary btn-lg" onclick="enroll()" disabled>Enroll</button>
+			<button id="enroll" class="btn btn-primary btn-lg" onclick="enroll()" disabled>{{_('Enroll')}}</button>
 			{% endif %}
 		</p>
 	</div>
@@ -28,7 +28,7 @@
 
 		let btn = document.getElementById('enroll');
 		btn.disbaled = true;
-		btn.innerText = 'Enrolling...'
+		btn.innerText = __('Enrolling...')
 
 		let opts = {
 			method: 'erpnext.education.utils.enroll_in_program',
@@ -44,7 +44,7 @@
 					window.location.reload()
 				}
 			})
-			success_dialog.set_message('You have successfully enrolled for the program ');
+			success_dialog.set_message(__('You have successfully enrolled for the program '));
 			success_dialog.$message.show()
 			success_dialog.show();
 			btn.disbaled = false;
diff --git a/erpnext/www/lms/profile.html b/erpnext/www/lms/profile.html
index 9508dae..5755dfe 100644
--- a/erpnext/www/lms/profile.html
+++ b/erpnext/www/lms/profile.html
@@ -30,7 +30,7 @@
 			</ul>
 		</div>
 		<div class='card-footer'>
-			<span class="small">{{ program.completion }}% Complete</span>
+			<span class="small">{{ program.completion }}{{_('% Complete')}}</span>
 		</div>
 	</div>
 	</a>
@@ -43,11 +43,11 @@
 		<div class="mb-3 row">
 			<div class="col-md-7">
 				<a href="/lms" class="text-muted">
-					Back to Home
+					{{_('Back to Home')}}
 				</a>
 			</div>
 			<div class="col-md-5 text-right">
-				<a href="/update-profile?name={{ frappe.session.user }}" target="blank" class="mt-0 text-muted">Edit Profile</a>
+				<a href="/update-profile?name={{ frappe.session.user }}" target="blank" class="mt-0 text-muted">{{_('Edit Profile')}}</a>
 			</div>
 		</div>
 		<h1>{{ student.first_name }} {{ student.last_name or '' }}</h1>
@@ -61,4 +61,4 @@
 		</div>
 	</div>
 </section>
-{% endblock %}
\ No newline at end of file
+{% endblock %}
diff --git a/erpnext/www/lms/program.html b/erpnext/www/lms/program.html
index 271b781..7ad6186 100644
--- a/erpnext/www/lms/program.html
+++ b/erpnext/www/lms/program.html
@@ -55,11 +55,11 @@
 		{% if has_access and progress[course.name] %}
 		<div class='card-footer'>
 			{% if progress[course.name].completed %}
-			<span class="indicator green">Completed</span>
+			<span class="indicator green">{{_('Completed')}}</span>
 			{% elif progress[course.name].started %}
-			<span class="indicator orange">In Progress</span>
+			<span class="indicator orange">{{_('In Progress')}}</span>
 			{% else %}
-			<span class="indicator blue">Start</span>
+			<span class="indicator blue">{{_('Start')}}</span>
 			{% endif %}
 		</div>
 		{% endif %}
diff --git a/erpnext/www/lms/topic.html b/erpnext/www/lms/topic.html
index 1f0d187..cd24616 100644
--- a/erpnext/www/lms/topic.html
+++ b/erpnext/www/lms/topic.html
@@ -23,13 +23,13 @@
 		{% if has_access %}
 		<div class='card-footer'>
 			{% if content.content_type == 'Quiz' %}
-				{% if content.result == 'Fail' %} <span class="indicator red">Fail <span class="text-muted">({{ content.score }}/100)</span></span>
-				{% elif content.result == 'Pass' %} <span class="indicator green">Pass <span class="text-muted">({{ content.score }}/100)</span>
-				{% else %} <span class="indicator blue">Start</span>
+				{% if content.result == 'Fail' %} <span class="indicator red">{{_('Fail')}} <span class="text-muted">({{ content.score }}/100)</span></span>
+				{% elif content.result == 'Pass' %} <span class="indicator green">{{_('Pass')}} <span class="text-muted">({{ content.score }}/100)</span>
+				{% else %} <span class="indicator blue">{{_('Start')}}</span>
 				{% endif %}
 			{% else %}
-				{% if content.completed %} <span class="indicator green">Completed</span>
-				{% else %} <span class="indicator blue">Start</span>
+				{% if content.completed %} <span class="indicator green">{{_('Completed')}}</span>
+				{% else %} <span class="indicator blue">{{_('Start')}}</span>
 				{% endif %}
 			{% endif %}
 		</div>