From 2d3c1053a0fce13d05aace48a596fa9124478837 Mon Sep 17 00:00:00 2001 From: Noah Jacob Date: Mon, 11 Apr 2022 15:25:27 +0530 Subject: [PATCH] refactor(ui): updated validation messages with fieldname --- frappe/model/base_document.py | 2 +- frappe/utils/__init__.py | 16 +++++++++------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/frappe/model/base_document.py b/frappe/model/base_document.py index ada5119995..b90dbed9ac 100644 --- a/frappe/model/base_document.py +++ b/frappe/model/base_document.py @@ -726,7 +726,7 @@ class BaseDocument(object): # data_field options defined in frappe.model.data_field_options for phone_field in self.meta.get_phone_fields(): phone = self.get(phone_field.fieldname) - frappe.utils.validate_phone_number_with_isd(phone, throw=True) + frappe.utils.validate_phone_number_with_isd(phone, phone_field.fieldname, throw=True) for data_field in self.meta.get_data_fields(): data = self.get(data_field.fieldname) diff --git a/frappe/utils/__init__.py b/frappe/utils/__init__.py index e5a8ac45fb..c1c19a0bd4 100644 --- a/frappe/utils/__init__.py +++ b/frappe/utils/__init__.py @@ -76,20 +76,22 @@ def extract_email_id(email): email_id = email_id.decode("utf-8", "ignore") return email_id -def validate_phone_number_with_isd(phone, throw=False): +def validate_phone_number_with_isd(phone, fieldname, throw=False): + from frappe import _ if not phone: return try: phone_number = ph.parse(phone) except Exception as e: if e.error_type == 1: - frappe.throw(frappe._("{0} is not a valid Phone Number.").format(frappe.bold(phone)), frappe.InvalidPhoneNumberError, - title=frappe._("Invalid Number")) - frappe.throw(frappe._("Please select a country code for the Phone Number {0}.").format(frappe.bold(phone)), frappe.InvalidPhoneNumberError, - title = frappe._("Country Code Required")) + + frappe.throw(_("Phone Number {0} set in field {1} is not valid.").format(frappe.bold(phone), frappe.bold(fieldname)), frappe.InvalidPhoneNumberError, + title=_("Invalid Phone Number")) + frappe.throw(_("Please select a country code for field {1}.").format(frappe.bold(phone), frappe.bold(fieldname)), frappe.InvalidPhoneNumberError, + title = _("Country Code Required")) if not ph.is_valid_number(phone_number): - frappe.throw(frappe._("{0} is not a valid Phone Number").format(frappe.bold(phone)), frappe.InvalidPhoneNumberError, - title = frappe._("Invalid Number")) + frappe.throw(_("Phone Number {0} set in field {1} is not valid.").format(frappe.bold(phone), frappe.bold(fieldname)), frappe.InvalidPhoneNumberError, + title = _("Invalid Phone Number")) def validate_phone_number(phone_number, throw=False): """Returns True if valid phone number"""