diff --git a/erpnext/__init__.py b/erpnext/__init__.py index 777b7bdc2f6..178d7e803d5 100644 --- a/erpnext/__init__.py +++ b/erpnext/__init__.py @@ -5,7 +5,7 @@ import frappe from erpnext.hooks import regional_overrides from frappe.utils import getdate -__version__ = '10.1.23' +__version__ = '10.1.24' def get_default_company(user=None): '''Get default company for user''' diff --git a/erpnext/accounts/doctype/account/account_tree.js b/erpnext/accounts/doctype/account/account_tree.js index 9f06ada2603..fe1977c16ed 100644 --- a/erpnext/accounts/doctype/account/account_tree.js +++ b/erpnext/accounts/doctype/account/account_tree.js @@ -71,7 +71,7 @@ frappe.treeview_settings["Account"] = { // financial statements for (let report of ['Trial Balance', 'General Ledger', 'Balance Sheet', - 'Profit and Loss', 'Cash Flow Statement', 'Accounts Payable', 'Accounts Receivable']) { + 'Profit and Loss Statement', 'Cash Flow Statement', 'Accounts Payable', 'Accounts Receivable']) { treeview.page.add_inner_button(__(report), function() { frappe.set_route('query-report', report, {company: get_company()}); }, __('Financial Statements')); diff --git a/erpnext/accounts/doctype/account/chart_of_accounts/chart_of_accounts.py b/erpnext/accounts/doctype/account/chart_of_accounts/chart_of_accounts.py index 91db378fdca..46fff7d60a6 100644 --- a/erpnext/accounts/doctype/account/chart_of_accounts/chart_of_accounts.py +++ b/erpnext/accounts/doctype/account/chart_of_accounts/chart_of_accounts.py @@ -165,7 +165,7 @@ def build_account_tree(tree, parent, all_accounts): tree[child.account_name] = {} # assign account_type and root_type - if child.account_type: + if child.account_number: tree[child.account_name]["account_number"] = child.account_number if child.account_type: tree[child.account_name]["account_type"] = child.account_type @@ -193,4 +193,4 @@ def validate_bank_account(coa, bank_account): _get_account_names(chart) - return (bank_account in accounts) \ No newline at end of file + return (bank_account in accounts) diff --git a/erpnext/accounts/doctype/cheque_print_template/cheque_print_template.py b/erpnext/accounts/doctype/cheque_print_template/cheque_print_template.py index 5b7d73f2bd7..0556e9b9924 100644 --- a/erpnext/accounts/doctype/cheque_print_template/cheque_print_template.py +++ b/erpnext/accounts/doctype/cheque_print_template/cheque_print_template.py @@ -29,11 +29,11 @@ def create_or_update_cheque_print_format(template_name): cheque_print.html = """
diff --git a/erpnext/education/doctype/student_group/student_group.js b/erpnext/education/doctype/student_group/student_group.js
index f3f8c886247..5373df9124c 100644
--- a/erpnext/education/doctype/student_group/student_group.js
+++ b/erpnext/education/doctype/student_group/student_group.js
@@ -82,36 +82,39 @@ frappe.ui.form.on("Student Group", {
max_roll_no = d.group_roll_number;
}
});
- frappe.call({
- method: "erpnext.education.doctype.student_group.student_group.get_students",
- args: {
- "academic_year": frm.doc.academic_year,
- "academic_term": frm.doc.academic_term,
- "group_based_on": frm.doc.group_based_on,
- "program": frm.doc.program,
- "batch" : frm.doc.batch,
- "course": frm.doc.course
- },
- callback: function(r) {
- if(r.message) {
- $.each(r.message, function(i, d) {
- if(!in_list(student_list, d.student)) {
- var s = frm.add_child("students");
- s.student = d.student;
- s.student_name = d.student_name;
- if (d.active === 0) {
- s.active = 0;
+
+ if(frm.doc.academic_year) {
+ frappe.call({
+ method: "erpnext.education.doctype.student_group.student_group.get_students",
+ args: {
+ "academic_year": frm.doc.academic_year,
+ "academic_term": frm.doc.academic_term,
+ "group_based_on": frm.doc.group_based_on,
+ "program": frm.doc.program,
+ "batch" : frm.doc.batch,
+ "course": frm.doc.course
+ },
+ callback: function(r) {
+ if(r.message) {
+ $.each(r.message, function(i, d) {
+ if(!in_list(student_list, d.student)) {
+ var s = frm.add_child("students");
+ s.student = d.student;
+ s.student_name = d.student_name;
+ if (d.active === 0) {
+ s.active = 0;
+ }
+ s.group_roll_number = ++max_roll_no;
}
- s.group_roll_number = ++max_roll_no;
- }
- });
- refresh_field("students");
- frm.save();
- } else {
- frappe.msgprint(__("Student Group is already updated."))
+ });
+ refresh_field("students");
+ frm.save();
+ } else {
+ frappe.msgprint(__("Student Group is already updated."))
+ }
}
- }
- })
+ })
+ }
} else {
frappe.msgprint(__("Select students manually for the Activity based Group"));
}
diff --git a/erpnext/healthcare/doctype/patient_appointment/patient_appointment_calendar.js b/erpnext/healthcare/doctype/patient_appointment/patient_appointment_calendar.js
index 72214233ad5..c35e397801f 100644
--- a/erpnext/healthcare/doctype/patient_appointment/patient_appointment_calendar.js
+++ b/erpnext/healthcare/doctype/patient_appointment/patient_appointment_calendar.js
@@ -1,8 +1,8 @@
frappe.views.calendar["Patient Appointment"] = {
field_map: {
- "start": "start",
- "end": "end",
+ "start": "appointment_date",
+ "end": "appointment_datetime",
"id": "name",
"title": "patient",
"allDay": "allDay",
diff --git a/erpnext/hr/doctype/holiday_list/holiday_list_calendar.js b/erpnext/hr/doctype/holiday_list/holiday_list_calendar.js
index 3cc8dd5036f..507d070444b 100644
--- a/erpnext/hr/doctype/holiday_list/holiday_list_calendar.js
+++ b/erpnext/hr/doctype/holiday_list/holiday_list_calendar.js
@@ -3,8 +3,8 @@
frappe.views.calendar["Holiday List"] = {
field_map: {
- "start": "holiday_date",
- "end": "holiday_date",
+ "start": "from_date",
+ "end": "to_date",
"id": "name",
"title": "description",
"allDay": "allDay"
diff --git a/erpnext/selling/page/point_of_sale/point_of_sale.js b/erpnext/selling/page/point_of_sale/point_of_sale.js
index 5c4bd166dc8..fcd221286ed 100644
--- a/erpnext/selling/page/point_of_sale/point_of_sale.js
+++ b/erpnext/selling/page/point_of_sale/point_of_sale.js
@@ -816,7 +816,7 @@ class POSCart {
});
this.numpad.reset_value();
} else {
- const item_code = this.selected_item.attr('data-item-code');
+ const item_code = unescape(this.selected_item.attr('data-item-code'));
const batch_no = this.selected_item.attr('data-batch-no');
const field = this.selected_item.active_field;
const value = this.numpad.get_value();
@@ -863,7 +863,7 @@ class POSCart {
update_item(item) {
const item_selector = item.batch_no ?
- `[data-batch-no="${item.batch_no}"]` : `[data-item-code="${item.item_code}"]`;
+ `[data-batch-no="${item.batch_no}"]` : `[data-item-code="${escape(item.item_code)}"]`;
const $item = this.$cart_items.find(item_selector);
@@ -889,7 +889,7 @@ class POSCart {
const batch_no = item.batch_no || '';
return `
-