Merge pull request 'fix: Enhance contact number validation in organization form' (#43) from Vaibhav_Bug-#452 into main

Reviewed-on: #43
This commit is contained in:
vaibhav.surve 2025-06-04 05:39:53 +00:00
commit 4862e53967

View File

@ -272,25 +272,40 @@ class _OrganizationFormState extends State<_OrganizationForm> {
); );
} }
Widget _buildTextField(String fieldName, String label, Widget _buildTextField(String fieldName, String label,
{TextInputType keyboardType = TextInputType.text}) { {TextInputType keyboardType = TextInputType.text}) {
final controller = validator.getController(fieldName); final controller = validator.getController(fieldName);
final validatorFunc = validator.getValidation<String>(fieldName); final defaultValidator = validator.getValidation<String>(fieldName);
return Padding( // Custom logic for contact number
padding: const EdgeInsets.symmetric(vertical: 6), String? Function(String?)? validatorFunc = defaultValidator;
child: TextFormField( if (fieldName == 'contactNumber') {
controller: controller, validatorFunc = (value) {
keyboardType: keyboardType, if (value == null || value.isEmpty) {
decoration: InputDecoration( return 'Contact number is required';
labelText: label, }
border: const OutlineInputBorder(), if (!RegExp(r'^\d{10}$').hasMatch(value)) {
), return 'Enter a valid 10-digit contact number';
validator: validatorFunc, }
), return null;
); };
} }
return Padding(
padding: const EdgeInsets.symmetric(vertical: 6),
child: TextFormField(
controller: controller,
keyboardType: keyboardType,
decoration: InputDecoration(
labelText: label,
border: const OutlineInputBorder(),
),
validator: validatorFunc,
),
);
}
void _submitForm() async { void _submitForm() async {
bool isValid = validator.validateForm(); bool isValid = validator.validateForm();