profile page fix bugs

This commit is contained in:
mohammad
2024-07-28 15:27:34 +03:00
parent 0eae96503b
commit f27a9b0d8a
3 changed files with 8 additions and 21 deletions

View File

@ -23,8 +23,7 @@ class ProfileBloc extends Bloc<ProfileEvent, ProfileState> {
String timeZoneSelected = ''; String timeZoneSelected = '';
String regionSelected = ''; String regionSelected = '';
final TextEditingController searchController = TextEditingController(); final TextEditingController searchController = TextEditingController();
final TextEditingController nameController = TextEditingController( final TextEditingController nameController = TextEditingController(text: '${HomeCubit.user!.firstName} ${HomeCubit.user!.lastName}');
text: '${HomeCubit.user!.firstName} ${HomeCubit.user!.lastName}');
List<TimeZone>? timeZoneList; List<TimeZone>? timeZoneList;
List<RegionModel>? regionList; List<RegionModel>? regionList;
@ -240,25 +239,17 @@ class ProfileBloc extends Bloc<ProfileEvent, ProfileState> {
String? fullNameValidator(String? value) { String? fullNameValidator(String? value) {
if (value == null) return 'Full name is required'; if (value == null) return 'Full name is required';
final withoutExtraSpaces = value.replaceAll(RegExp(r"\s+"), ' ').trim(); final withoutExtraSpaces = value.replaceAll(RegExp(r"\s+"), ' ').trim();
if (withoutExtraSpaces.length < 2 || withoutExtraSpaces.length > 30) { if (withoutExtraSpaces.length < 2 || withoutExtraSpaces.length > 30) {
return 'Full name must be between 2 and 30 characters long'; return 'Full name must be between 2 and 30 characters long';
} }
// Test if it contains anything but alphanumeric spaces and single quote // Test if it contains anything but alphanumeric spaces and single quote
if (RegExp(r"/[^ a-zA-Z0-9-\']/").hasMatch(withoutExtraSpaces)) { if (RegExp(r"/[^ a-zA-Z0-9-\']/").hasMatch(withoutExtraSpaces)) {
return 'Only alphanumeric characters, space, dash and single quote are allowed'; return 'Only alphanumeric characters, space, dash and single quote are allowed';
} }
final parts = withoutExtraSpaces.split(' '); final parts = withoutExtraSpaces.split(' ');
if (parts.length < 2) return 'Full name must contain first and last names'; if (parts.length < 2) return 'Full name must contain first and last names';
if (parts.length > 2) return 'Full name can at most contain 3 parts';
if (parts.length > 3) return 'Full name can at most contain 3 parts';
if (parts.any((part) => part.length < 2 || part.length > 30)) { if (parts.any((part) => part.length < 2 || part.length > 30)) {
return 'Full name parts must be between 2 and 30 characters long'; return 'Full name parts must be between 2 and 30 characters long';
} }

View File

@ -24,9 +24,7 @@ class RegionPage extends StatelessWidget {
); );
} }
if (state is SaveState) { if (state is SaveState) {
new Future.delayed(const Duration(milliseconds: 500), () {
Navigator.of(context).pop(true); Navigator.of(context).pop(true);
});
} }
}, },
builder: (context, state) { builder: (context, state) {

View File

@ -26,9 +26,7 @@ class TimeZoneScreenPage extends StatelessWidget {
), ),
); );
}if (state is SaveState) { }if (state is SaveState) {
new Future.delayed(const Duration(milliseconds: 500), () {
Navigator.of(context).pop(true); Navigator.of(context).pop(true);
});
} }
}, },
builder: (context, state) { builder: (context, state) {