validateSignupFields method
bool
validateSignupFields()
Implementation
bool validateSignupFields() {
if (companyNameTxtController.text.trim().isEmpty &&
subscriptionType.value == 'Business') {
CustomFlashWidget.showFlashMessage(
type: FlashType.error,
title: "Invalid company name",
message: "Please make sure you enter a valid company name",
);
return false;
} else if (firstNameTxtController.text.trim().length < 3) {
CustomFlashWidget.showFlashMessage(
type: FlashType.error,
title: "Invalid first name",
message:
"Please make sure you enter a valid first name with at least 3 characters",
);
return false;
} else if (!containsOnlyCharacters(firstNameTxtController.text.trim())) {
CustomFlashWidget.showFlashMessage(
type: FlashType.error,
title: "Invalid first name",
message: "Please ensure that the first name contains only letters.",
);
return false;
} else if (lastNameTxtController.text.trim().length < 3) {
CustomFlashWidget.showFlashMessage(
type: FlashType.error,
title: "Invalid last name",
message:
"Please make sure you enter a valid last name with at least 3 characters",
);
return false;
} else if (!containsOnlyCharacters(lastNameTxtController.text.trim())) {
CustomFlashWidget.showFlashMessage(
type: FlashType.error,
title: "Invalid last name",
message: "Please ensure that the last name contains only letters.",
);
return false;
} else if (!RegExp(r'^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$')
.hasMatch(emailTxtController.text)) {
CustomFlashWidget.showFlashMessage(
type: FlashType.error,
title: "Invalid email",
message: "Please make sure you enter a valid email!",
);
return false;
} else if (passTxtController.text.length < 8) {
CustomFlashWidget.showFlashMessage(
type: FlashType.error,
title: "Weak Password",
message: "The password must contain at least 8 characters",
);
return false;
} else if (!RegExp(r"(?=.*[A-Z])").hasMatch(passTxtController.text)) {
CustomFlashWidget.showFlashMessage(
type: FlashType.error,
title: "Weak Password",
message: "The password must contain at least one uppercase letter",
);
return false;
} else if (passTxtController.text.contains(' ')) {
CustomFlashWidget.showFlashMessage(
type: FlashType.error,
title: "Invalid Password",
message: "The password must not contain spaces",
);
return false;
} else if (!RegExp(r"(?=.*[a-z])").hasMatch(passTxtController.text)) {
CustomFlashWidget.showFlashMessage(
type: FlashType.error,
title: "Weak Password",
message: "The password must contain at least one lowercase letter",
);
return false;
} else if (!RegExp(r"(?=.*[0-9])").hasMatch(passTxtController.text)) {
CustomFlashWidget.showFlashMessage(
type: FlashType.error,
title: "Weak Password",
message: "The password must contain at least one number",
);
return false;
} else if (!RegExp(r"(?=.*[!#\$%&()*+,-./:;<=>?@\[\]^_{|}~])")
.hasMatch(passTxtController.text)) {
CustomFlashWidget.showFlashMessage(
type: FlashType.error,
title: "Weak Password",
message: "The password must contain at least one special character",
);
return false;
} else if (referralCodeTxtController.text.isEmpty) {
CustomFlashWidget.showFlashMessage(
type: FlashType.error,
title: "Invalid Invitation Code",
message:
"The invitation code you entered is invalid. Please try again.",
actions: [
FlashAction(
label: 'Contact Support',
onPressed: () {
launchEmail();
}),
FlashAction(
label: 'Try Again',
)
]);
// openDialog(
// barrierDismissible: false,
// ReferralCodeDialog(),
// );
return false;
}
return true;
}