aboutsummaryrefslogtreecommitdiff
path: root/src/utils
diff options
context:
space:
mode:
authorIvan Chen <ivan@tagg.id>2021-03-27 20:30:36 -0400
committerGitHub <noreply@github.com>2021-03-27 20:30:36 -0400
commit67fb6f5cae06dfbcb359dd6468cb66ad85fa230d (patch)
treeeaf092811d5be72e89e4dec9942dc59a1f8a0211 /src/utils
parentbef5728b24a71d1bf327a72e425346020a997037 (diff)
parentbf0a2abf8bab333ff0d87bc07002e6f96199ce3b (diff)
Merge pull request #330 from ankit-thanekar007/tma-722-cornell-fe
[TMA 722] : Cornell FrontEnd changes
Diffstat (limited to 'src/utils')
-rw-r--r--src/utils/common.ts43
-rw-r--r--src/utils/search.ts18
2 files changed, 55 insertions, 6 deletions
diff --git a/src/utils/common.ts b/src/utils/common.ts
index 0a76ec08..4f31af8e 100644
--- a/src/utils/common.ts
+++ b/src/utils/common.ts
@@ -1,4 +1,9 @@
-import {ContactType, NotificationType} from './../types/types';
+import {
+ ContactType,
+ NotificationType,
+ UniversityType,
+ UniversityBadgeType,
+} from './../types/types';
import moment from 'moment';
import {Linking} from 'react-native';
import {BROWSABLE_SOCIAL_URLS, TOGGLE_BUTTON_TYPE} from '../constants';
@@ -132,3 +137,39 @@ export const extractContacts = async () => {
});
return retrievedContacts;
};
+
+export const getUniversityBadge = (
+ university: UniversityType,
+ type: UniversityBadgeType,
+) => {
+ switch (type) {
+ case 'Search':
+ return _searchPageIcon(university);
+ case 'Crest':
+ return _crestIcon(university);
+ default:
+ return require('../assets/images/bwbadges.png');
+ }
+};
+
+const _searchPageIcon = (university: UniversityType) => {
+ switch (university) {
+ case UniversityType.Cornell:
+ return require('../assets/universities/cornell-search.png');
+ case UniversityType.Brown:
+ return require('../assets/images/bwbadges.png');
+ default:
+ return require('../assets/images/bwbadges.png');
+ }
+};
+
+const _crestIcon = (university: UniversityType) => {
+ switch (university) {
+ case UniversityType.Cornell:
+ return require('../assets/universities/cornell.png');
+ case UniversityType.Brown:
+ return require('../assets/universities/brown.png');
+ default:
+ return require('../assets/images/bwbadges.png');
+ }
+};
diff --git a/src/utils/search.ts b/src/utils/search.ts
index 4293ff25..26f40b1b 100644
--- a/src/utils/search.ts
+++ b/src/utils/search.ts
@@ -1,14 +1,18 @@
import AsyncStorage from '@react-native-community/async-storage';
import {BADGE_DATA} from '../constants/badges';
-import {ProfilePreviewType, CategoryPreviewType} from '../types';
+import {
+ ProfilePreviewType,
+ CategoryPreviewType,
+ UniversityType,
+} from '../types';
/*
* Gets all possible search suggestions.
*/
-export const getSearchSuggestions = (): string[] => {
+export const getSearchSuggestions = (university: UniversityType): string[] => {
const suggestions: string[] = [];
- for (const category of BADGE_DATA) {
+ for (const category of BADGE_DATA[university]) {
for (const interest of category.data) {
suggestions.push(interest.badgeName);
}
@@ -62,7 +66,9 @@ export const getRecentlySearchedUsers = async (): Promise<
> => {
try {
const usersJSON = await AsyncStorage.getItem(recentlySearchedUsersKey);
- if (usersJSON) return JSON.parse(usersJSON);
+ if (usersJSON) {
+ return JSON.parse(usersJSON);
+ }
} catch (e) {
console.log(e);
}
@@ -124,7 +130,9 @@ export const getRecentlySearchedCategories = async (): Promise<
const categoriesJSON = await AsyncStorage.getItem(
'@recently_searched_categories',
);
- if (categoriesJSON) return JSON.parse(categoriesJSON);
+ if (categoriesJSON) {
+ return JSON.parse(categoriesJSON);
+ }
} catch (e) {
console.log(e);
}