diff --git a/apps/mobile/src/utils/useAnnouncement.js b/apps/mobile/src/utils/useAnnouncement.js index 5a9c92221..b8a24e879 100644 --- a/apps/mobile/src/utils/useAnnouncement.js +++ b/apps/mobile/src/utils/useAnnouncement.js @@ -2,7 +2,7 @@ import {useCallback, useEffect, useState} from 'react'; import {Platform} from 'react-native'; import {SUBSCRIPTION_STATUS} from '.'; import PremiumService from '../services/PremiumService'; -import { db } from './DB'; +import {db} from './DB'; import Storage from './storage'; var CACHED_ANNOUNCEMENT; @@ -13,20 +13,19 @@ export default function useAnnouncement() { (async function () { try { CACHED_ANNOUNCEMENT = CACHED_ANNOUNCEMENT || (await db.announcement()); - + if ( !CACHED_ANNOUNCEMENT || - await Storage.read('removedAnnouncement') === CACHED_ANNOUNCEMENT.id || + (await Storage.read('removedAnnouncement')) === + CACHED_ANNOUNCEMENT.id || !shouldShowAnnouncement(CACHED_ANNOUNCEMENT) ) return; - - setAnnouncement(CACHED_ANNOUNCEMENT); - } catch(e) { - setAnnouncement() - } - + setAnnouncement(CACHED_ANNOUNCEMENT); + } catch (e) { + setAnnouncement(); + } })(); }, []); @@ -40,7 +39,7 @@ export default function useAnnouncement() { const allowedPlatforms = ['all', 'mobile', Platform.OS]; function shouldShowAnnouncement(announcement) { let show = allowedPlatforms.indexOf(announcement.platform) > -1; - console.log(show) + console.log(show); if (!show) return; const subStatus = PremiumService.getUser()?.subscription?.type; @@ -58,6 +57,12 @@ function shouldShowAnnouncement(announcement) { case 'loggedOut': show = !PremiumService.getUser(); break; + case 'verified': + show = PremiumService.getUser()?.isEmailVerified; + break; + case 'loggedIn': + show = !!PremiumService.getUser(); + break; case 'unverified': show = !PremiumService.getUser()?.isEmailVerified; break;