aboutsummaryrefslogtreecommitdiff
path: root/src/screens/onboarding/OnboardingStepThree.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/screens/onboarding/OnboardingStepThree.tsx')
-rw-r--r--src/screens/onboarding/OnboardingStepThree.tsx42
1 files changed, 19 insertions, 23 deletions
diff --git a/src/screens/onboarding/OnboardingStepThree.tsx b/src/screens/onboarding/OnboardingStepThree.tsx
index a91c36fe..29028421 100644
--- a/src/screens/onboarding/OnboardingStepThree.tsx
+++ b/src/screens/onboarding/OnboardingStepThree.tsx
@@ -47,17 +47,25 @@ interface OnboardingStepThreeProps {
navigation: OnboardingStepThreeNavigationProp;
}
+type FormType = {
+ smallPic: string;
+ university: UniversityType;
+ birthdate: string | undefined;
+ gender: string;
+ isValidGender: boolean;
+ classYear: number;
+ attemptedSubmit: boolean;
+};
+
const OnboardingStepThree: React.FC<OnboardingStepThreeProps> = ({
route,
navigation,
}) => {
const {userId, username} = route.params;
- let emptyDate: string | undefined;
- let emptyUniversity: UniversityType | undefined;
- const [form, setForm] = React.useState({
+ const [form, setForm] = React.useState<FormType>({
smallPic: '',
- university: emptyUniversity,
- birthdate: emptyDate,
+ university: UniversityType.Empty,
+ birthdate: undefined,
gender: '',
isValidGender: true,
classYear: -1,
@@ -160,11 +168,11 @@ const OnboardingStepThree: React.FC<OnboardingStepThreeProps> = ({
Alert.alert(ERROR_SELECT_CLASS_YEAR);
return;
}
- if (!form.university) {
+ if (form.university === UniversityType.Empty) {
Alert.alert(ERROR_SELECT_UNIVERSITY);
return;
}
- if (form.birthdate === emptyDate) {
+ if (!form.birthdate) {
Alert.alert(ERROR_SELECT_BIRTHDAY);
return;
}
@@ -178,7 +186,6 @@ const OnboardingStepThree: React.FC<OnboardingStepThreeProps> = ({
attemptedSubmit: true,
});
}
- let invalidFields: boolean = false;
const request = new FormData();
if (form.smallPic) {
request.append('smallProfilePicture', {
@@ -188,16 +195,13 @@ const OnboardingStepThree: React.FC<OnboardingStepThreeProps> = ({
});
}
- if (form.birthdate) {
- request.append('birthday', form.birthdate);
- }
if (customGender) {
if (form.isValidGender) {
request.append('gender', form.gender);
} else {
setForm({...form, attemptedSubmit: false});
setTimeout(() => setForm({...form, attemptedSubmit: true}));
- invalidFields = true;
+ return;
}
} else {
if (form.isValidGender) {
@@ -205,17 +209,9 @@ const OnboardingStepThree: React.FC<OnboardingStepThreeProps> = ({
}
}
- if (form.classYear !== -1) {
- request.append('university_class', form.classYear);
- }
-
- if (form.university) {
- request.append('university', form.university);
- }
-
- if (invalidFields) {
- return;
- }
+ request.append('birthday', form.birthdate);
+ request.append('university_class', form.classYear);
+ request.append('university', form.university);
patchEditProfile(request, userId)
.then((_) =>