National ID input validation added

development_v3.3
haroon amjad 1 year ago
parent 6e30df2a29
commit 5f90435442

@ -126,10 +126,12 @@ class _Login extends State<Login> {
),
DefaultButton(
TranslationBase.of(context).login,
isButtonDisabled
? null
: () {
() {
if (isButtonDisabled) {
AppToast.showErrorToast(message: "National ID can only contain numbers");
} else {
this.startLogin();
}
},
disabledColor: Color(0xff575757),
),
@ -227,7 +229,7 @@ class _Login extends State<Login> {
}
void validateForm() {
if (util.validateIDBox(nationalIDorFile.text, loginType) == true && util.isSAUDIIDValid(nationalIDorFile.text, loginType) == true) {
if (util.validateIDBox(nationalIDorFile.text, loginType) == true && (countryCode == "971" ? true : util.isSAUDIIDValid(nationalIDorFile.text, loginType) == true)) {
setState(() {
isButtonDisabled = false;
});

@ -166,12 +166,13 @@ class Utils {
Pattern pattern = loginIDPattern(type); //r'^\d+(?:\.\d+)?$';
RegExp regex = new RegExp(pattern);
print(regex.hasMatch(value));
return regex.hasMatch(value);
}
String loginIDPattern(loginType) {
var length = loginType == 1 ? 10 : 1;
return "([0-9]{" + length.toString() + "})";
return "([0-9]{" + length.toString() + "}\$)";
}
static showProgressDialog(context, [String message = "Loading..."]) async {

Loading…
Cancel
Save