From d44e3e2783fca377a71d0c65ee7777410f19556f Mon Sep 17 00:00:00 2001 From: jessop Date: Fri, 31 Jan 2020 17:04:44 -0500 Subject: [PATCH] make invite redirect to channel if appropriate --- ui/component/invited/view.jsx | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/ui/component/invited/view.jsx b/ui/component/invited/view.jsx index 4c201eda2..e4cf509ed 100644 --- a/ui/component/invited/view.jsx +++ b/ui/component/invited/view.jsx @@ -4,8 +4,9 @@ import React, { useEffect } from 'react'; import Button from 'component/button'; import ClaimPreview from 'component/claimPreview'; import Card from 'component/common/card'; -import { parseURI } from 'lbry-redux'; +import { buildURI, parseURI } from 'lbry-redux'; import { rewards as REWARDS, ERRORS } from 'lbryinc'; +import { formatLbryUrlForWeb } from 'util/url'; type Props = { user: any, @@ -37,10 +38,18 @@ function Invited(props: Props) { } = props; const refUri = referrer && 'lbry://' + referrer.replace(':', '#'); - const { isChannel: referrerIsChannel, claimName: referrerChannelName } = parseURI(refUri); + const { + isChannel: referrerIsChannel, + claimName: referrerChannelName, + channelClaimId: referrerChannelClaimId, + } = parseURI(refUri); + const channelUri = + referrerIsChannel && + formatLbryUrlForWeb(buildURI({ channelName: referrerChannelName, channelClaimId: referrerChannelClaimId })); const rewardsApproved = user && user.is_reward_approved; const hasVerifiedEmail = user && user.has_verified_email; const referredRewardAvailable = rewards && rewards.some(reward => reward.reward_type === REWARDS.TYPE_REFEREE); + const redirect = channelUri || `/$/${PAGES.HOME}`; // always follow if it's a channel useEffect(() => { @@ -65,7 +74,7 @@ function Invited(props: Props) { }, [referrer]); function handleDone() { - history.push(`/$/${PAGES.DISCOVER}`); + history.push(redirect); } if (referrerSetError === ERRORS.ALREADY_CLAIMED) {