diff --git a/erpnext/__init__.py b/erpnext/__init__.py index f102a71850f..c7293f04b98 100644 --- a/erpnext/__init__.py +++ b/erpnext/__init__.py @@ -4,7 +4,7 @@ import frappe from erpnext.hooks import regional_overrides -__version__ = "13.42.7" +__version__ = "13.52.3" def get_default_company(user=None): diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.py b/erpnext/accounts/doctype/payment_entry/payment_entry.py index f40b5effc63..95171c5a5ae 100644 --- a/erpnext/accounts/doctype/payment_entry/payment_entry.py +++ b/erpnext/accounts/doctype/payment_entry/payment_entry.py @@ -206,6 +206,7 @@ class PaymentEntry(AccountsController): elif latest.outstanding_amount < latest.invoice_amount and flt( d.outstanding_amount, d.precision("outstanding_amount") ) != flt(latest.outstanding_amount, d.precision("outstanding_amount")): + frappe.throw( _( "{0} {1} has already been partly paid. Please use the 'Get Outstanding Invoice' or the 'Get Outstanding Orders' button to get the latest outstanding amounts." diff --git a/erpnext/hooks.py b/erpnext/hooks.py index fb56860dae5..651e6a0ac22 100644 --- a/erpnext/hooks.py +++ b/erpnext/hooks.py @@ -29,6 +29,10 @@ doctype_js = { override_doctype_class = {"Address": "erpnext.accounts.custom.address.ERPNextAddress"} +override_whitelisted_methods = { + "frappe.www.contact.send_message": "erpnext.templates.utils.send_message" +} + welcome_email = "erpnext.setup.utils.welcome_email" # setup wizard diff --git a/erpnext/public/js/website_utils.js b/erpnext/public/js/website_utils.js index b5416065d79..2bb5255eebc 100644 --- a/erpnext/public/js/website_utils.js +++ b/erpnext/public/js/website_utils.js @@ -3,18 +3,6 @@ if(!window.erpnext) window.erpnext = {}; -// Add / update a new Lead / Communication -// subject, sender, description -frappe.send_message = function(opts, btn) { - return frappe.call({ - type: "POST", - method: "erpnext.templates.utils.send_message", - btn: btn, - args: opts, - callback: opts.callback - }); -}; - erpnext.subscribe_to_newsletter = function(opts, btn) { return frappe.call({ type: "POST", @@ -24,6 +12,3 @@ erpnext.subscribe_to_newsletter = function(opts, btn) { callback: opts.callback }); } - -// for backward compatibility -erpnext.send_message = frappe.send_message; diff --git a/erpnext/regional/report/gst_itemised_purchase_register/gst_itemised_purchase_register.py b/erpnext/regional/report/gst_itemised_purchase_register/gst_itemised_purchase_register.py index fec63f2f18a..4dcdf4b88e2 100644 --- a/erpnext/regional/report/gst_itemised_purchase_register/gst_itemised_purchase_register.py +++ b/erpnext/regional/report/gst_itemised_purchase_register/gst_itemised_purchase_register.py @@ -28,7 +28,7 @@ def execute(filters=None): "gst_category", "export_type", "ecommerce_gstin", - "gst_hsn_code", + "`tabPurchase Invoice Item`.gst_hsn_code", "bill_no", "bill_date", ], diff --git a/erpnext/regional/report/gst_itemised_sales_register/gst_itemised_sales_register.py b/erpnext/regional/report/gst_itemised_sales_register/gst_itemised_sales_register.py index aef69b17868..3280c75fb34 100644 --- a/erpnext/regional/report/gst_itemised_sales_register/gst_itemised_sales_register.py +++ b/erpnext/regional/report/gst_itemised_sales_register/gst_itemised_sales_register.py @@ -39,7 +39,7 @@ def execute(filters=None): "gst_category", "export_type", "ecommerce_gstin", - "gst_hsn_code", + "`tabSales Invoice Item`.gst_hsn_code", ] additional_conditions = get_conditions(filters, additional_query_columns)