diff --git a/package.json b/package.json
index aac70aca..23a2b040 100644
--- a/package.json
+++ b/package.json
@@ -14,7 +14,8 @@
"build-storybook": "build-storybook -s public",
"start:auth": "REACT_APP_TYPE=auth-service react-scripts start",
"test:auth": "REACT_APP_TYPE=auth-service react-scripts test",
- "facr": "REACT_APP_CLIENT=facr react-scripts start"
+ "facr": "REACT_APP_CLIENT=facr react-scripts start",
+ "lff": "REACT_APP_CLIENT=lff react-scripts start"
},
"dependencies": {
"@stripe/react-stripe-js": "^1.4.0",
diff --git a/public/images/lff_auth_logo.svg b/public/images/lff_auth_logo.svg
new file mode 100644
index 00000000..e4f1e11c
--- /dev/null
+++ b/public/images/lff_auth_logo.svg
@@ -0,0 +1,9 @@
+
diff --git a/public/images/score-switch-lff-mobile-off.svg b/public/images/score-switch-lff-mobile-off.svg
new file mode 100644
index 00000000..4a6aade2
--- /dev/null
+++ b/public/images/score-switch-lff-mobile-off.svg
@@ -0,0 +1,22 @@
+
diff --git a/public/images/score-switch-lff-mobile-on.svg b/public/images/score-switch-lff-mobile-on.svg
new file mode 100644
index 00000000..4744f8e1
--- /dev/null
+++ b/public/images/score-switch-lff-mobile-on.svg
@@ -0,0 +1,22 @@
+
diff --git a/public/images/score-switch-lff-off.svg b/public/images/score-switch-lff-off.svg
new file mode 100644
index 00000000..fc638032
--- /dev/null
+++ b/public/images/score-switch-lff-off.svg
@@ -0,0 +1,22 @@
+
diff --git a/public/images/score-switch-lff-on.svg b/public/images/score-switch-lff-on.svg
new file mode 100644
index 00000000..de204061
--- /dev/null
+++ b/public/images/score-switch-lff-on.svg
@@ -0,0 +1,22 @@
+
diff --git a/src/config/clients/index.tsx b/src/config/clients/index.tsx
index e74608b5..b0857562 100644
--- a/src/config/clients/index.tsx
+++ b/src/config/clients/index.tsx
@@ -2,12 +2,14 @@ import type { ClientConfig } from './types'
import { facr } from './facr'
import { instat } from './instat'
+import { lff } from './lff'
export const currentClient = process.env.REACT_APP_CLIENT || 'instat'
const clients = {
facr,
instat,
+ lff,
}
export const client: ClientConfig = clients[currentClient]
diff --git a/src/config/clients/lff.tsx b/src/config/clients/lff.tsx
new file mode 100644
index 00000000..486b1d05
--- /dev/null
+++ b/src/config/clients/lff.tsx
@@ -0,0 +1,28 @@
+import {
+ ClientConfig,
+ ClientIds,
+ ClientNames,
+} from './types'
+
+export const lff: ClientConfig = {
+ auth: {
+ clientId: ClientIds.Lff,
+ },
+ defaultLanguage: 'en',
+ description: 'Live sports streaming platform. Football, basketball, ice hockey and more. Access to various player playlists and game highlights. Multiple subscription options. Available across all devices.',
+ disabledPreferences: true,
+ name: ClientNames.Lff,
+ privacyLink: '/clients/instat/terms-and-conditions.html',
+ showSearch: true,
+ styles: {
+ background: 'background-image: url(/images/Checker.png);',
+ logo: 'lff_auth_logo.svg',
+ logoHeight: 6,
+ logoLeft: 1.2,
+ logoTop: 1.2,
+ logoWidth: 6,
+ matchLogoHeight: 2.5,
+ matchLogoWidth: 2.5,
+ },
+ title: 'InStat TV - The Home of Sports Streaming',
+}
diff --git a/src/config/clients/types.tsx b/src/config/clients/types.tsx
index 60978160..6fdc0968 100644
--- a/src/config/clients/types.tsx
+++ b/src/config/clients/types.tsx
@@ -9,11 +9,13 @@ type StyledCss = ReturnType
export enum ClientIds {
Facr = 'facr-ott-web',
Instat = 'ott-web',
+ Lff = 'lff-ott-web',
}
export enum ClientNames {
Facr = 'facr',
Instat = 'instat',
+ Lff = 'lff',
}
export type ClientConfig = {
diff --git a/src/features/App/AuthenticatedApp.tsx b/src/features/App/AuthenticatedApp.tsx
index 7b627bed..56719971 100644
--- a/src/features/App/AuthenticatedApp.tsx
+++ b/src/features/App/AuthenticatedApp.tsx
@@ -36,7 +36,6 @@ const SystemSettings = lazy(() => import('features/SystemSettings'))
export const AuthenticatedApp = () => {
useLexicsConfig(indexLexics)
-
return (
diff --git a/src/features/AuthServiceApp/config/clients/index.tsx b/src/features/AuthServiceApp/config/clients/index.tsx
index bddcd5b7..13caf0e8 100644
--- a/src/features/AuthServiceApp/config/clients/index.tsx
+++ b/src/features/AuthServiceApp/config/clients/index.tsx
@@ -2,12 +2,14 @@ import { ClientIds } from 'config/clients/types'
import { facr } from './facr'
import { instat } from './instat'
+import { lff } from './lff'
const clients = {
[ClientIds.Facr]: facr,
[ClientIds.Instat]: instat,
+ [ClientIds.Lff]: lff,
}
const params = new URLSearchParams(window.location.search)
const clientId = params.get('client_id') as ClientIds
-export const client = clients[clientId] || instat
+export const client = clients[clientId] || lff
diff --git a/src/features/AuthServiceApp/config/clients/lff.tsx b/src/features/AuthServiceApp/config/clients/lff.tsx
new file mode 100644
index 00000000..880cec9e
--- /dev/null
+++ b/src/features/AuthServiceApp/config/clients/lff.tsx
@@ -0,0 +1,42 @@
+import styled, { css } from 'styled-components/macro'
+
+import { lff as platformLff } from 'config/clients/lff'
+
+import type { ClientConfig } from './types'
+
+const Background = styled.div`
+ position: relative;
+ width: 100%;
+ min-height: 100vh;
+ display: flex;
+ justify-content: center;
+ background: linear-gradient(18.42deg, #242321 8.36%, #242321 42.61%, #DB1C49 86.2%);
+`
+
+export const lff: ClientConfig = {
+ ...platformLff,
+ background: Background,
+ styles: {
+ input: css`
+ background-color: transparent;
+ :not(:last-child) {
+ border-color: ${({ theme }) => theme.colors.text100};
+ }
+ `,
+ inputGroup: css`
+ border: 1px solid ${({ theme }) => theme.colors.text100};
+ `,
+ loader: css`
+ color: #00257A;
+ `,
+ logo: css`
+ background-image: url(/images/lff_auth_logo.svg);
+ height: 220px;
+ width: 220px;
+ `,
+ submitButton: css`
+ background-color: #DF1C4A;
+ color: white;
+ `,
+ },
+}
diff --git a/src/features/Common/Button/styled.tsx b/src/features/Common/Button/styled.tsx
index b7e6e039..d6732d9e 100644
--- a/src/features/Common/Button/styled.tsx
+++ b/src/features/Common/Button/styled.tsx
@@ -1,6 +1,7 @@
import styled, { css } from 'styled-components/macro'
import { isMobileDevice } from 'config/userAgent'
+import { client } from 'config/clients'
const baseButtonStyles = css`
width: 272px;
@@ -44,13 +45,18 @@ export const solidButtonStyles = css`
font-weight: bold;
border-color: transparent;
background-color: #294FC3;
- box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.3);
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3);
${isMobileDevice
? css`
height: 30px;
min-height: 30px;
`
: ''};
+
+ ${client.name === 'lff' ? css`
+ background: #DF1C4A;
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3);
+ ` : ''}
`
export const ButtonSolid = styled.button`
diff --git a/src/features/HeaderFilters/components/DateFilter/styled.tsx b/src/features/HeaderFilters/components/DateFilter/styled.tsx
index d9c71130..4f311a0d 100644
--- a/src/features/HeaderFilters/components/DateFilter/styled.tsx
+++ b/src/features/HeaderFilters/components/DateFilter/styled.tsx
@@ -1,6 +1,7 @@
import styled, { css } from 'styled-components/macro'
import { isMobileDevice } from 'config/userAgent'
+import { client } from 'config/clients'
import { devices } from 'config'
export const BaseButton = styled.button`
@@ -23,6 +24,10 @@ export const Wrapper = styled.div`
width: 100%;
}
+ ${client.name === 'lff' ? css`
+ color: rgba(255, 255, 255, 0.5);
+ ` : ''}
+
${isMobileDevice
? css`
/* padding-top: 4px; */
@@ -80,6 +85,11 @@ export const DateButton = styled(BaseButton)`
opacity: 0.5;
margin-left: 10px;
+ ${client.name === 'lff' ? css`
+ color: rgba(255, 255, 255, 0.5);
+ opacity: 1;
+ ` : ''}
+
${isMobileDevice
? css`
position: static;
@@ -148,6 +158,10 @@ export const WeekDay = styled(BaseButton)`
:hover {
color: #FFFFFF;
}
+
+ ${client.name === 'lff' ? css`
+ color: rgba(255, 255, 255, 0.5);
+ ` : ''}
${({ selected }) => (
selected
diff --git a/src/features/HeaderMenu/styled.tsx b/src/features/HeaderMenu/styled.tsx
index 76236a4c..df07f67b 100644
--- a/src/features/HeaderMenu/styled.tsx
+++ b/src/features/HeaderMenu/styled.tsx
@@ -36,11 +36,15 @@ export const HeaderLogo = styled(Logo)`
height: ${client.styles.matchLogoHeight}rem;
` : '')}
- ${isMobileDevice
- ? css`
- width: 65px;
- height: 15px;
- margin: 5px 22px;
- `
- : ''}
+ ${isMobileDevice && client.name !== 'lff' ? css`
+ width: 65px;
+ height: 15px;
+ margin: 5px 22px;
+ ` : ''}
+
+ ${isMobileDevice && client.name === 'lff' ? css`
+ width: 42px;
+ height: 42px;
+ margin: 5px 22px;
+ ` : ''}
`
diff --git a/src/features/HeaderMobile/styled.tsx b/src/features/HeaderMobile/styled.tsx
index a0aa1396..c3900ab7 100644
--- a/src/features/HeaderMobile/styled.tsx
+++ b/src/features/HeaderMobile/styled.tsx
@@ -5,7 +5,6 @@ import isUndefined from 'lodash/isUndefined'
import { client } from 'config/clients'
import { isMobileDevice } from 'config/userAgent'
-import { Logo } from 'features/Logo'
import { ModalWindow } from 'features/Modal/styled'
import { Modal as BaseModal } from 'features/Modal'
import { customScrollbar } from 'features/Common'
@@ -15,7 +14,13 @@ export const DEFAULT_HEADER_COLOR = 'rgba(53, 96, 225, 0.56)'
export const defaultHeaderStyles = (
color: string = DEFAULT_HEADER_COLOR, headerImage: string | undefined | null,
) => {
- if (headerImage && client.name !== 'facr') {
+ if (client.name === 'lff') {
+ return css`
+ background: linear-gradient(38.47deg, #242321 26.08%, #DB1C49 95.99%), #000000;
+ `
+ }
+
+ if (headerImage && client.name === 'instat') {
return css`background: url(${headerImage}.png);
background-size: 100% 100%;
@media (max-width: 450px){
@@ -93,20 +98,6 @@ export const HeaderGroup = styled.div`
: ''};
`
-export const HeaderLogo = styled(Logo)`
- ${({ isMatchPage }) => (isMatchPage ? css`
- width: ${client.styles.matchLogoWidth}rem;
- height: ${client.styles.matchLogoHeight}rem;
- ` : '')}
-
- ${isMobileDevice
- ? css`
- width: 65px;
- height: 15px;
- `
- : ''}
-`
-
type PositionProps = {
isMatchPage?: boolean,
left?: number,
diff --git a/src/features/Logo/index.tsx b/src/features/Logo/index.tsx
index e503b15d..9f1cc0e9 100644
--- a/src/features/Logo/index.tsx
+++ b/src/features/Logo/index.tsx
@@ -21,8 +21,8 @@ export const Logo = styled.div`
${isMobileDevice
? css`
- width: 144px;
- height: 33px;
+ width: 46px;
+ height: 46px;
@media screen and (orientation: landscape){
width: 92px;
diff --git a/src/features/MatchPage/index.tsx b/src/features/MatchPage/index.tsx
index 2ee216d4..064d8991 100644
--- a/src/features/MatchPage/index.tsx
+++ b/src/features/MatchPage/index.tsx
@@ -70,7 +70,7 @@ const MatchPage = () => {
return (
-
+
diff --git a/src/features/MatchSidePlaylists/styled.tsx b/src/features/MatchSidePlaylists/styled.tsx
index db186ccd..2cd20d4e 100644
--- a/src/features/MatchSidePlaylists/styled.tsx
+++ b/src/features/MatchSidePlaylists/styled.tsx
@@ -4,6 +4,7 @@ import { devices } from 'config/devices'
import { isMobileDevice } from 'config/userAgent'
import { customScrollbar } from 'features/Common'
+import { client } from '../../config/clients'
export const Wrapper = styled.div`
${isMobileDevice
@@ -92,16 +93,17 @@ export const Button = styled.button`
border-radius: 1.8px;
}
- ${({ active, theme }) => (
- active
- ? css`
- background-color: ${theme.colors.button};
- &:hover {
- background-color: #0c3ccc;
- }
- `
- : ''
- )}
+ ${({ active, theme }) => {
+ const bgColor = client.name === 'lff' ? '#A30C2F' : theme.colors.button
+ const bgHoverColor = client.name === 'lff' ? '#A30C2F' : '#0c3ccc'
+
+ return active ? css`
+ background-color: ${bgColor};
+ &:hover {
+ background-color: ${bgHoverColor};
+ }
+ ` : ''
+ }}
`
export const Title = styled.span`
diff --git a/src/features/MatchSwitches/components/ScoreSwitch/index.tsx b/src/features/MatchSwitches/components/ScoreSwitch/index.tsx
index 371a1a95..002ec11d 100644
--- a/src/features/MatchSwitches/components/ScoreSwitch/index.tsx
+++ b/src/features/MatchSwitches/components/ScoreSwitch/index.tsx
@@ -1,5 +1,6 @@
import { isMobileDevice } from 'config/userAgent'
import { useMatchSwitchesStore } from 'features/MatchSwitches'
+import { getSwitchScoreIconName } from 'helpers/getSwitchScoreIconName'
import {
Switch,
@@ -20,7 +21,7 @@ export const ScoreSwitch = () => {
>
diff --git a/src/features/ProfileHeader/index.tsx b/src/features/ProfileHeader/index.tsx
index 4ec20da9..da5b8e14 100644
--- a/src/features/ProfileHeader/index.tsx
+++ b/src/features/ProfileHeader/index.tsx
@@ -50,8 +50,9 @@ export const ProfileHeader = ({
const url = '/images/5704'
const color = useProfileColor(profileId)
const imageHeader = profileId === 5704
- && sportType === SportTypes.FOOTBALL
- && profileType === ProfileTypes.TOURNAMENTS ? url : headerImage
+ && sportType === SportTypes.FOOTBALL
+ && profileType === ProfileTypes.TOURNAMENTS ? url : headerImage
+
return (
{
- if (headerImage && client.name !== 'facr') {
+ if (client.name === 'lff') {
+ return css`
+ background: linear-gradient(38.47deg, #242321 26.08%, #DB1C49 95.99%), #000000;
+ `
+ }
+
+ if (headerImage && client.name === 'instat') {
return css`background: url(${headerImage}.png);
background-size: 100% 100%;
@media (max-width: 450px){
@@ -56,6 +62,12 @@ export const HeaderStyled = styled.header`
${({ color, headerImage }) => defaultHeaderStyles(color, headerImage)}
+ ${({ color }) => (
+ client.name === 'lff' ? css`
+ background: ${color};
+ ` : ''
+ )}
+
${isMobileDevice
? css`
padding: 8px;
@@ -87,20 +99,28 @@ export const HeaderLogo = styled(Logo)`
width: ${client.styles.matchLogoWidth}rem;
height: ${client.styles.matchLogoHeight}rem;
` : '')}
-
- ${isMobileDevice
- ? css`
- width: 85px;
- height: 20px;
-
- @media (max-width: 450px){
- left: 48vw;
- top: 5px;
- transform: translateX(-50%);
- position: absolute;
- }
- `
- : ''}
+
+ ${client.name === 'lff' ? css`
+ top: 5px;
+ left: 20px;
+ ` : ''}
+
+ ${isMobileDevice ? css`
+ width: 85px;
+ height: 20px;
+
+ @media (max-width: 450px){
+ left: 48vw;
+ top: 5px;
+ transform: translateX(-50%);
+ position: absolute;
+ }
+ ` : ''}
+
+ ${client.name === 'lff' && isMobileDevice ? css`
+ width: 44px;
+ height: 44px;
+ ` : ''}
`
type PositionProps = {
diff --git a/src/features/Theme/config.tsx b/src/features/Theme/config.tsx
index f97b844f..e85302dd 100644
--- a/src/features/Theme/config.tsx
+++ b/src/features/Theme/config.tsx
@@ -1,3 +1,5 @@
+import { client } from 'config/clients'
+
export const lightTheme = {
colors: {
background: '',
@@ -21,14 +23,14 @@ export const lightTheme = {
export const darkTheme = {
colors: {
- background: `
+ background: client.name !== 'lff' ? `
radial-gradient(
49.07% 49.07% at 50% 29.54%,
rgba(255, 255, 255, 0.14) 0%,
rgba(255, 255, 255, 0) 100%
),
rgba(0, 0, 0, 0.9)
- `,
+ ` : '#1D1D1D',
black: '#000000',
black40: 'rgba(0, 0, 0, 0.4)',
black70: 'rgba(0, 0, 0, 0.7)',
diff --git a/src/features/TournamentList/components/TournamentMobile/index.tsx b/src/features/TournamentList/components/TournamentMobile/index.tsx
index bdd1ce0a..985eab58 100644
--- a/src/features/TournamentList/components/TournamentMobile/index.tsx
+++ b/src/features/TournamentList/components/TournamentMobile/index.tsx
@@ -25,6 +25,7 @@ import {
ScMatchesWrapper,
ScSecondInfo,
} from './styled'
+import { client } from '../../../../config/clients'
export type TournamentProps = {
tournament: TournamentType & {
@@ -53,9 +54,17 @@ export const TournamentMobile = ({
ProfileTypes.TOURNAMENTS,
tournament.id,
)
+
+ const activeWrapperColor = client.name === 'lff' ? '#A30C2F' : '#294FC3'
+ const wrapperColor = open ? activeWrapperColor : '#3f3f3f'
+
return (
- setOpen(!open)}>
+ setOpen(!open)}
+ color={wrapperColor}
+ open={open}
+ >
`
+export const CardWrapper = styled.div<{
+ color: string,
+ open: boolean,
+}>`
display: flex;
align-items: center;
- background-color: ${({ open }) => (open ? '#294FC3' : '#3f3f3f')};
+ background-color: ${({ color }) => color};
cursor: pointer;
${isMobileDevice
? css`
diff --git a/src/features/TournamentPage/hooks.tsx b/src/features/TournamentPage/hooks.tsx
index 318076bd..dc4067c0 100644
--- a/src/features/TournamentPage/hooks.tsx
+++ b/src/features/TournamentPage/hooks.tsx
@@ -3,6 +3,7 @@ import {
useState,
useCallback,
} from 'react'
+import { useHistory } from 'react-router'
import type { TournamentInfo } from 'requests'
import { getTournamentInfo, getTournamentMatches } from 'requests'
@@ -10,17 +11,23 @@ import { getTournamentInfo, getTournamentMatches } from 'requests'
import { usePageParams } from 'hooks/usePageParams'
import { useName } from 'features/Name'
+import { isPermittedTournament } from '../../helpers/isPermittedTournament'
export const useTournamentPage = () => {
const [tournamentProfile, setTournamentProfile] = useState(null)
const { profileId: tournamentId, sportType } = usePageParams()
const country = useName(tournamentProfile?.country || {})
+ const history = useHistory()
useEffect(() => {
+ if (!isPermittedTournament(tournamentId, sportType)) {
+ history.push('/')
+ }
getTournamentInfo(sportType, tournamentId)
.then(setTournamentProfile)
},
[
+ history,
sportType,
tournamentId,
])
diff --git a/src/features/UserAccount/components/Header/index.tsx b/src/features/UserAccount/components/Header/index.tsx
index c53180ca..b568be31 100644
--- a/src/features/UserAccount/components/Header/index.tsx
+++ b/src/features/UserAccount/components/Header/index.tsx
@@ -20,16 +20,14 @@ const HeaderStyled = styled.header`
margin-bottom: 0;
}
- ${isMobileDevice
- ? css`
- @media (max-width: 650px){
- margin-bottom: 20px;
- }
- @media (orientation: landscape){
- margin-bottom: 20px;
- }
- `
- : ''};
+ ${isMobileDevice ? css`
+ @media (max-width: 650px) {
+ margin-bottom: 20px;
+ }
+ @media (orientation: landscape) {
+ margin-bottom: 20px;
+ }
+ ` : ''};
`
const HomeIcon = styled.div`
@@ -46,18 +44,37 @@ export const HeaderLogo = styled(Logo)`
top: ${client.styles.logoTop}rem;
left: ${client.styles.logoLeft}rem;
- ${isMobileDevice
- ? css`
- left: 50%;
- transform: translateX(-50%);
- `
- : ''}
+ ${isMobileDevice ? css`
+ left: 50%;
+ transform: translateX(-50%);
+ ` : ''}
+`
+
+export const HeaderLffLogo = styled(Logo)`
+ position: absolute;
+ width: 80px;
+ height: 80px;
+ top: 36px;
+ left: 32px;
+
+ ${isMobileDevice ? css`
+ width: 46px;
+ height: 46px;
+ left: 15px;
+ top: 15px;
+ ` : ''}
`
export const Header = () => (
-
+ {
+ client.name === 'lff' ? (
+
+ ) : (
+
+ )
+ }
diff --git a/src/features/UserAccount/components/ScoreSwitch/index.tsx b/src/features/UserAccount/components/ScoreSwitch/index.tsx
index 5fa04123..35f19246 100644
--- a/src/features/UserAccount/components/ScoreSwitch/index.tsx
+++ b/src/features/UserAccount/components/ScoreSwitch/index.tsx
@@ -2,13 +2,13 @@ import styled, { css } from 'styled-components/macro'
import { isMobileDevice } from 'config/userAgent'
import { devices } from 'config'
-
import { useMatchSwitchesStore } from 'features/MatchSwitches'
import {
Switch,
Icon,
Title as TitleBase,
} from 'features/MatchSwitches/styled'
+import { getSwitchScoreIconName } from 'helpers/getSwitchScoreIconName'
type TWrapper = {
isHidden?: boolean,
@@ -61,7 +61,7 @@ export const ScoreSwitch = ({ className }: Props) => {
diff --git a/src/features/UserAccount/styled.tsx b/src/features/UserAccount/styled.tsx
index 5de071b8..12ea84ab 100644
--- a/src/features/UserAccount/styled.tsx
+++ b/src/features/UserAccount/styled.tsx
@@ -6,6 +6,7 @@ import { devices } from 'config/devices'
import { isMobileDevice } from 'config/userAgent'
import { ButtonSolid, ButtonOutline } from 'features/Common/Button'
+import { client } from '../../config/clients'
export const SolidButton = styled(ButtonSolid)`
width: auto;
@@ -13,7 +14,7 @@ export const SolidButton = styled(ButtonSolid)`
padding: 0 0.94rem;
color: white;
font-weight: bold;
- background-color: #294fc4;
+ background-color: ${client.name === 'lff' ? '#A30C2F' : '#294fc4'};
box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.3);
border-color: transparent;
border-radius: 5px;
diff --git a/src/helpers/getSwitchScoreIconName/index.tsx b/src/helpers/getSwitchScoreIconName/index.tsx
new file mode 100644
index 00000000..3a777b93
--- /dev/null
+++ b/src/helpers/getSwitchScoreIconName/index.tsx
@@ -0,0 +1,17 @@
+import { isMobileDevice } from 'config/userAgent'
+import { client } from 'config/clients'
+
+export const getSwitchScoreIconName = () => {
+ switch (true) {
+ case client.name === 'lff' && !isMobileDevice:
+ return 'score-switch-lff'
+ case client.name === 'lff' && isMobileDevice:
+ return 'score-switch-lff-mobile'
+ case client.name !== 'lff' && !isMobileDevice:
+ return 'score-switch'
+ case client.name !== 'lff' && isMobileDevice:
+ return 'score-switch-mobile'
+ default:
+ return 'score-switch'
+ }
+}
diff --git a/src/helpers/isPermittedTournament/index.tsx b/src/helpers/isPermittedTournament/index.tsx
new file mode 100644
index 00000000..8dbae6c3
--- /dev/null
+++ b/src/helpers/isPermittedTournament/index.tsx
@@ -0,0 +1,15 @@
+import includes from 'lodash/includes'
+
+import { client } from 'config/clients'
+import { SportTypes } from 'config/sportTypes'
+
+export const isPermittedTournament = (
+ tournamentId: number,
+ sportType: SportTypes,
+) => {
+ if (client.name !== 'lff') {
+ return true
+ }
+
+ return includes([928, 1620], tournamentId) && sportType === 1
+}