refactor(ui): updated validation messages with fieldname

This commit is contained in:
Noah Jacob 2022-04-11 15:25:27 +05:30
parent bf92b363e2
commit 2d3c1053a0
2 changed files with 10 additions and 8 deletions

View file

@ -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)

View file

@ -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"""