From 2ee4ffc4c99f794941e9d3e2c7e47a145d89d83d Mon Sep 17 00:00:00 2001 From: Ivan Chen Date: Tue, 20 Apr 2021 16:44:12 -0400 Subject: added 5 invite limits --- src/services/UserFriendsService.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/services') diff --git a/src/services/UserFriendsService.ts b/src/services/UserFriendsService.ts index 5c41e988..deb3ec6d 100644 --- a/src/services/UserFriendsService.ts +++ b/src/services/UserFriendsService.ts @@ -233,7 +233,10 @@ export const inviteFriendService = async ( }), }); if (response.status === 201 || response.status === 200) { - return await response.json(); + const data = await response.json(); + return data.invites_left; + } else if (response.status === 400) { + return -1; } return false; }; -- cgit v1.2.3-70-g09d2 From 43ba5fb4e02cb08110ff992399762ecad1d6ba36 Mon Sep 17 00:00:00 2001 From: ankit-thanekar007 Date: Wed, 21 Apr 2021 09:12:47 -0700 Subject: Badge bug fix frontend --- src/screens/badge/BadgeSelection.tsx | 7 +++++-- src/services/SuggestedPeopleService.ts | 12 ++++++++++-- 2 files changed, 15 insertions(+), 4 deletions(-) (limited to 'src/services') diff --git a/src/screens/badge/BadgeSelection.tsx b/src/screens/badge/BadgeSelection.tsx index deaefb52..2fec8ea3 100644 --- a/src/screens/badge/BadgeSelection.tsx +++ b/src/screens/badge/BadgeSelection.tsx @@ -66,13 +66,16 @@ const BadgeSelection: React.FC = ({route}) => { style={styles.rightButtonContainer} onPress={async () => { if (editing) { - updateBadgesService(selectedBadges); + updateBadgesService(selectedBadges, university); navigation.navigate('UpdateSPPicture', { editing: true, }); } else { if (selectedBadges.length !== 0) { - const success = await addBadgesService(selectedBadges); + const success = await addBadgesService( + selectedBadges, + university, + ); if (success) { dispatch(suggestedPeopleBadgesFinished()); navigation.navigate('SuggestedPeople'); diff --git a/src/services/SuggestedPeopleService.ts b/src/services/SuggestedPeopleService.ts index 4f56feb9..617f3970 100644 --- a/src/services/SuggestedPeopleService.ts +++ b/src/services/SuggestedPeopleService.ts @@ -136,11 +136,15 @@ export const getMutualBadgeHolders = async (badge_id: string) => { } }; -export const addBadgesService = async (selectedBadges: string[]) => { +export const addBadgesService = async ( + selectedBadges: string[], + university: string, +) => { try { const token = await AsyncStorage.getItem('token'); const form = new FormData(); form.append('badges', JSON.stringify(selectedBadges)); + form.append('university', JSON.stringify(university)); const response = await fetch(ADD_BADGES_ENDPOINT, { method: 'POST', headers: { @@ -161,11 +165,15 @@ export const addBadgesService = async (selectedBadges: string[]) => { } }; -export const updateBadgesService = async (selectedBadges: string[]) => { +export const updateBadgesService = async ( + selectedBadges: string[], + university: string, +) => { try { const token = await AsyncStorage.getItem('token'); const form = new FormData(); form.append('badges', JSON.stringify(selectedBadges)); + form.append('university', JSON.stringify(university)); const response = await fetch(UPDATE_BADGES_ENDPOINT, { method: 'POST', headers: { -- cgit v1.2.3-70-g09d2 From e050709c3be4e9bae828caa6a01bfdab5f4bcfcf Mon Sep 17 00:00:00 2001 From: Ivan Chen Date: Wed, 21 Apr 2021 12:23:37 -0400 Subject: updated to use the new endpoint --- src/constants/api.ts | 1 + src/screens/profile/ProfileScreen.tsx | 9 ++++++++- src/services/UserProfileService.ts | 22 ++++++++++++++++++++++ 3 files changed, 31 insertions(+), 1 deletion(-) (limited to 'src/services') diff --git a/src/constants/api.ts b/src/constants/api.ts index cb45b238..dd934f0e 100644 --- a/src/constants/api.ts +++ b/src/constants/api.ts @@ -16,6 +16,7 @@ export const EDIT_PROFILE_ENDPOINT: string = API_URL + 'edit-profile/'; export const SEND_OTP_ENDPOINT: string = API_URL + 'send-otp/'; export const VERIFY_OTP_ENDPOINT: string = API_URL + 'verify-otp/'; export const USER_PROFILE_ENDPOINT: string = API_URL + 'profile/'; +export const USER_PROFILE_VISITED_ENDPOINT: string = API_URL + 'profile/visited/'; export const PROFILE_INFO_ENDPOINT: string = API_URL + 'user-profile-info/'; export const HEADER_PHOTO_ENDPOINT: string = API_URL + 'header-pic/'; export const PROFILE_PHOTO_ENDPOINT: string = API_URL + 'profile-pic/'; diff --git a/src/screens/profile/ProfileScreen.tsx b/src/screens/profile/ProfileScreen.tsx index 6d9ef020..3dd142e1 100644 --- a/src/screens/profile/ProfileScreen.tsx +++ b/src/screens/profile/ProfileScreen.tsx @@ -1,8 +1,9 @@ -import React from 'react'; +import React, {useEffect} from 'react'; import {StatusBar} from 'react-native'; import {Content, TabsGradient} from '../../components'; import {RouteProp} from '@react-navigation/native'; import {MainStackParams} from '../../routes/'; +import {visitedUserProfile} from '../../services'; type ProfileScreenRouteProps = RouteProp; @@ -14,6 +15,12 @@ const ProfileScreen: React.FC = ({route}) => { const {screenType} = route.params; let {userXId} = route.params; + useEffect(() => { + if (userXId) { + visitedUserProfile(userXId); + } + }); + return ( <> diff --git a/src/services/UserProfileService.ts b/src/services/UserProfileService.ts index 1ce1d0b5..a2237c94 100644 --- a/src/services/UserProfileService.ts +++ b/src/services/UserProfileService.ts @@ -16,6 +16,7 @@ import { SEND_OTP_ENDPOINT, TAGG_CUSTOMER_SUPPORT, USER_PROFILE_ENDPOINT, + USER_PROFILE_VISITED_ENDPOINT, VERIFY_OTP_ENDPOINT, } from '../constants'; import { @@ -412,3 +413,24 @@ export const patchEditProfile = async (form: FormData, userId: string) => { throw ERROR_DOUBLE_CHECK_CONNECTION; } }; + +export const visitedUserProfile = async (userId: string) => { + try { + const token = await AsyncStorage.getItem('token'); + const form = new FormData(); + form.append('user_id', userId); + const response = await fetch(USER_PROFILE_VISITED_ENDPOINT, { + method: 'POST', + headers: { + 'Content-Type': 'multipart/form-data', + Authorization: 'Token ' + token, + }, + body: form, + }); + if (response.status !== 200) { + console.error('Failed to submit a profile visit'); + } + } catch (error) { + return undefined; + } +}; -- cgit v1.2.3-70-g09d2