aboutsummaryrefslogtreecommitdiff
path: root/src/screens/badge
diff options
context:
space:
mode:
Diffstat (limited to 'src/screens/badge')
-rw-r--r--src/screens/badge/BadgeSelection.tsx28
1 files changed, 23 insertions, 5 deletions
diff --git a/src/screens/badge/BadgeSelection.tsx b/src/screens/badge/BadgeSelection.tsx
index a67206c4..755bb581 100644
--- a/src/screens/badge/BadgeSelection.tsx
+++ b/src/screens/badge/BadgeSelection.tsx
@@ -4,9 +4,13 @@ import {Alert, SafeAreaView, StatusBar, StyleSheet, View} from 'react-native';
import {Text} from 'react-native-animatable';
import {TouchableOpacity} from 'react-native-gesture-handler';
import LinearGradient from 'react-native-linear-gradient';
-import {useDispatch} from 'react-redux';
+import {useDispatch, useSelector} from 'react-redux';
import {MainStackParams} from '../../routes';
-import {addBadgesService, updateBadgesService} from '../../services';
+import {
+ addBadgesService,
+ getSuggestedPeopleProfile,
+ updateBadgesService,
+} from '../../services';
import {BACKGROUND_GRADIENT_MAP} from '../../constants';
import {BADGE_DATA} from '../../constants/badges';
import {ERROR_BADGES_EXCEED_LIMIT} from '../../constants/strings';
@@ -16,6 +20,7 @@ import {SCREEN_HEIGHT, StatusBarHeight} from '../../utils';
import BadgeList from './BadgeList';
import BadgeScreenHeader from './BadgeScreenHeader';
import {useNavigation} from '@react-navigation/native';
+import {RootState} from '../../store/rootReducer';
/**
* Home Screen for displaying Tagg Badge Selections
@@ -28,14 +33,27 @@ type BadgeSelectionProps = {
};
const BadgeSelection: React.FC<BadgeSelectionProps> = ({route}) => {
- const prevSelectedBadges = route.params.prevSelectedBadges;
+ const {userId: loggedInUserId} = useSelector(
+ (state: RootState) => state.user.user,
+ );
const [selectedBadges, setSelectedBadges] = useState<string[]>([]);
const dispatch = useDispatch();
const navigation = useNavigation();
useEffect(() => {
- setSelectedBadges(prevSelectedBadges);
- }, [prevSelectedBadges]);
+ const loadData = async () => {
+ const response = await getSuggestedPeopleProfile(loggedInUserId);
+ if (response) {
+ const data = response.badges;
+ let extractedBadgeNames: string[] = [];
+ data.forEach((badge) => {
+ extractedBadgeNames.push(badge.name);
+ });
+ setSelectedBadges(extractedBadgeNames);
+ }
+ };
+ loadData();
+ }, []);
navigation.setOptions({
headerRight: () => (