fix($242): add subs for selected suvs

pull/33/head
Andrei Dekterev 3 years ago
parent 8c28c0d1b3
commit 6c8bbf1933
  1. 21
      src/features/BuyMatchPopup/components/SelectSubscription/index.tsx
  2. 14
      src/features/BuyMatchPopup/store/hooks/useSubscriptions.tsx
  3. 29
      src/features/TournamentPage/hooks.tsx

@ -32,6 +32,7 @@ import {
ChooseSubItem,
ChooseSubList,
} from './styled'
import { checkUrlParams, getAllUrlParams } from '../../../../helpers/parseUrlParams/parseUrlParams'
export const SelectSubscriptionStep = () => {
const {
@ -55,14 +56,18 @@ export const SelectSubscriptionStep = () => {
return (
<Wrapper>
<Header>
<HeaderTitle>
<Names nameObj={match.team1} />
{` ${MDASH} `}
<Names nameObj={match.team2} />
<ChooseSub>
<T9n t='choose_subscription' />
</ChooseSub>
</HeaderTitle>
{(!checkUrlParams('subscribe')
&& !getAllUrlParams('id'))
&& (
<HeaderTitle>
<Names nameObj={match.team1} />
{` ${MDASH} `}
<Names nameObj={match.team2} />
<ChooseSub>
<T9n t='choose_subscription' />
</ChooseSub>
</HeaderTitle>
)}
<HeaderActions position='right'>
<CloseButton onClick={close} />
</HeaderActions>

@ -22,6 +22,7 @@ import type {
import { SubscriptionType } from '../../types'
import { transformSubscriptions } from '../helpers'
import { useSubscriptionsLexics } from './useSubscriptionsLexics'
import { checkUrlParams } from '../../../../helpers/parseUrlParams/parseUrlParams'
const defaultSubscriptions: MatchSubscriptions = []
const defaultPeriod = SubscriptionType.Month
@ -36,6 +37,11 @@ const getInitialPeriod = (subscription?: MatchSubscription) => {
|| defaultPeriod
}
export const MATCH_CONFIG = {
matchId: 2376841,
sportId: 1,
}
export const useSubscriptions = () => {
const { suffix } = useLexicsStore()
const { fetchLexics } = useSubscriptionsLexics()
@ -55,7 +61,13 @@ export const useSubscriptions = () => {
] = useState<MatchPackage | null>(null)
const fetchSubscriptions = useCallback(async (match: Match) => {
const subscriptions = await getSubscriptions(match.sportType, match.id)
let subscriptions
if (checkUrlParams('id') && checkUrlParams('subscribe')) {
subscriptions = await getSubscriptions(MATCH_CONFIG.sportId, MATCH_CONFIG.matchId)
} else {
subscriptions = await getSubscriptions(match.sportType, match.id)
}
const convertedSubscriptions = transformSubscriptions({
match,
subscriptions,

@ -6,19 +6,28 @@ import {
import { useHistory } from 'react-router'
import type { TournamentInfo } from 'requests'
import { getTournamentInfo, getTournamentMatches } from 'requests'
import {
getMatchInfo,
getTournamentInfo,
getTournamentMatches,
MatchInfo,
} from 'requests'
import { checkUrlParams } from 'helpers/parseUrlParams/parseUrlParams'
import { checkUrlParams, getAllUrlParams } from 'helpers/parseUrlParams/parseUrlParams'
import { usePageParams } from 'hooks/usePageParams'
import { useName } from 'features/Name'
import { isPermittedTournament } from '../../helpers/isPermittedTournament'
import { useProfileCard } from '../ProfileCard/hooks'
import { useBuyMatchPopupStore } from '../BuyMatchPopup'
import { MATCH_CONFIG } from '../BuyMatchPopup/store/hooks/useSubscriptions'
import { prepareMatchProfile } from '../MatchPage/helpers/prepareMatchProfile'
export const useTournamentPage = () => {
const [tournamentProfile, setTournamentProfile] = useState<TournamentInfo>(null)
const { profileId: tournamentId, sportType } = usePageParams()
const { open: openBuyMatchPopup } = useBuyMatchPopupStore()
const country = useName(tournamentProfile?.country || {})
const history = useHistory()
@ -63,6 +72,22 @@ export const useTournamentPage = () => {
name_rus: tournamentProfile.name_rus,
}
useEffect(() => {
if ((checkUrlParams('subscribe')
&& getAllUrlParams('id'))) {
getMatchInfo(MATCH_CONFIG.sportId, MATCH_CONFIG.matchId)
.then((match: MatchInfo) => {
const matchProfile = match && prepareMatchProfile({
matchId: MATCH_CONFIG.matchId,
profile: match,
sportType: MATCH_CONFIG.sportId,
})
matchProfile && openBuyMatchPopup(matchProfile)
})
}
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [])
return {
fetchMatches,
headerImage: tournamentProfile?.header_image,

Loading…
Cancel
Save