don't call sync/set for exisitng users that signed in in a different tab
this was causing users to lose their subs before the page refreshed
This commit is contained in:
parent
5435dc88d4
commit
45bc5182ce
1 changed files with 4 additions and 2 deletions
|
@ -18,6 +18,7 @@ import Spinner from 'component/spinner';
|
||||||
import YoutubeTransferStatus from 'component/youtubeTransferStatus';
|
import YoutubeTransferStatus from 'component/youtubeTransferStatus';
|
||||||
import useFetched from 'effects/use-fetched';
|
import useFetched from 'effects/use-fetched';
|
||||||
import Confetti from 'react-confetti';
|
import Confetti from 'react-confetti';
|
||||||
|
import usePrevious from 'effects/use-previous';
|
||||||
|
|
||||||
const REDIRECT_PARAM = 'redirect';
|
const REDIRECT_PARAM = 'redirect';
|
||||||
const REDIRECT_IMMEDIATELY_PARAM = 'immediate';
|
const REDIRECT_IMMEDIATELY_PARAM = 'immediate';
|
||||||
|
@ -87,6 +88,7 @@ function UserSignUp(props: Props) {
|
||||||
const isIdentityVerified = user && user.is_identity_verified;
|
const isIdentityVerified = user && user.is_identity_verified;
|
||||||
const passwordSet = user && user.password_set;
|
const passwordSet = user && user.password_set;
|
||||||
const hasFetchedReward = useFetched(claimingReward);
|
const hasFetchedReward = useFetched(claimingReward);
|
||||||
|
const previousHasVerifiedEmail = usePrevious(hasVerifiedEmail);
|
||||||
const channelCount = channels ? channels.length : 0;
|
const channelCount = channels ? channels.length : 0;
|
||||||
const hasClaimedEmailAward = claimedRewards.some(reward => reward.reward_type === REWARDS.TYPE_CONFIRM_EMAIL);
|
const hasClaimedEmailAward = claimedRewards.some(reward => reward.reward_type === REWARDS.TYPE_CONFIRM_EMAIL);
|
||||||
const hasYoutubeChannels = youtubeChannels && Boolean(youtubeChannels.length);
|
const hasYoutubeChannels = youtubeChannels && Boolean(youtubeChannels.length);
|
||||||
|
@ -134,11 +136,11 @@ function UserSignUp(props: Props) {
|
||||||
}, [fetchUser]);
|
}, [fetchUser]);
|
||||||
|
|
||||||
React.useEffect(() => {
|
React.useEffect(() => {
|
||||||
if (hasVerifiedEmail) {
|
if (previousHasVerifiedEmail === false && hasVerifiedEmail) {
|
||||||
setPrefsReady();
|
setPrefsReady();
|
||||||
setSettingAndSync(SETTINGS.FIRST_RUN_STARTED, true);
|
setSettingAndSync(SETTINGS.FIRST_RUN_STARTED, true);
|
||||||
}
|
}
|
||||||
}, [hasVerifiedEmail, setPrefsReady]);
|
}, [hasVerifiedEmail, previousHasVerifiedEmail, setPrefsReady]);
|
||||||
|
|
||||||
React.useEffect(() => {
|
React.useEffect(() => {
|
||||||
// Don't claim the reward if sync is enabled until after a sync has been completed successfully
|
// Don't claim the reward if sync is enabled until after a sync has been completed successfully
|
||||||
|
|
Loading…
Reference in a new issue