aboutsummaryrefslogtreecommitdiff
path: root/src/screens/onboarding/InvitationCodeVerification.tsx
diff options
context:
space:
mode:
authorIvan Chen <ivan@tagg.id>2021-03-19 18:10:41 -0400
committerGitHub <noreply@github.com>2021-03-19 18:10:41 -0400
commitec7aa3cacd5c613e0d6ff589274ac58ce62bd6a8 (patch)
tree18d6061d24b34df136cfb7d7a4e3f61580b82b7d /src/screens/onboarding/InvitationCodeVerification.tsx
parentf8a2634372eb7bda871a11cd14aca758782a1d2e (diff)
parent8013dd29f447990f95cc4ad9557238fc825bcc54 (diff)
Merge pull request #309 from IvanIFChen/tma707-login-after-invitation-code
[TMA-707] Login directly after entering correct invitation code
Diffstat (limited to 'src/screens/onboarding/InvitationCodeVerification.tsx')
-rw-r--r--src/screens/onboarding/InvitationCodeVerification.tsx14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/screens/onboarding/InvitationCodeVerification.tsx b/src/screens/onboarding/InvitationCodeVerification.tsx
index 41d17f29..7cd4b3bf 100644
--- a/src/screens/onboarding/InvitationCodeVerification.tsx
+++ b/src/screens/onboarding/InvitationCodeVerification.tsx
@@ -1,3 +1,4 @@
+import AsyncStorage from '@react-native-community/async-storage';
import {RouteProp} from '@react-navigation/native';
import {StackNavigationProp} from '@react-navigation/stack';
import React from 'react';
@@ -9,6 +10,7 @@ import {
useBlurOnFulfill,
useClearByFocusCell,
} from 'react-native-confirmation-code-field';
+import {useDispatch} from 'react-redux';
import {
ArrowButton,
Background,
@@ -25,7 +27,7 @@ import {
} from '../../constants/strings';
import {OnboardingStackParams} from '../../routes';
import {BackgroundGradientType} from '../../types';
-import {SCREEN_WIDTH} from '../../utils';
+import {SCREEN_WIDTH, userLogin} from '../../utils';
type InvitationCodeVerificationRouteProp = RouteProp<
OnboardingStackParams,
@@ -56,6 +58,7 @@ const InvitationCodeVerification: React.FC<InvitationCodeVerificationProps> = ({
value,
setValue,
});
+ const dispatch = useDispatch();
const handleInvitationCodeVerification = async () => {
if (value.length === 6) {
@@ -71,10 +74,11 @@ const InvitationCodeVerification: React.FC<InvitationCodeVerificationProps> = ({
);
if (verifyInviteCodeResponse.status === 200) {
- navigation.navigate('Login');
- setTimeout(() => {
- Alert.alert(SUCCESS_INVITATION_CODE);
- }, 500);
+ const userId = route.params.userId;
+ const username = route.params.username;
+ await AsyncStorage.setItem('userId', userId);
+ await AsyncStorage.setItem('username', username);
+ userLogin(dispatch, {userId, username});
} else {
Alert.alert(ERROR_INVALID_INVITATION_CODE);
}