diff --git a/.drone.yml b/.drone.yml
index 66e5e6a6..4ab93d7c 100644
--- a/.drone.yml
+++ b/.drone.yml
@@ -184,7 +184,7 @@ steps:
depends_on:
- npm-install
- - name: deploy-lff
+ - name: deploy-diwansport
image: amazon/aws-cli:latest
environment:
AWS_ACCESS_KEY_ID:
diff --git a/src/components/SmartBanner/index.tsx b/src/components/SmartBanner/index.tsx
index 97f24a58..817341d4 100644
--- a/src/components/SmartBanner/index.tsx
+++ b/src/components/SmartBanner/index.tsx
@@ -1,6 +1,7 @@
import { Icon } from 'features/Icon'
import { add } from 'date-fns'
+import { isIOS } from 'config'
import {
ScBannerWrap,
@@ -38,7 +39,9 @@ export const SmartBanner = ({ setIsOpenDownload }: SmartBannerProps) => (
inSports – the Home of Sports Streaming
{
diff --git a/src/config/clients/insports.tsx b/src/config/clients/insports.tsx
index ec1258c0..95bb14cb 100644
--- a/src/config/clients/insports.tsx
+++ b/src/config/clients/insports.tsx
@@ -15,6 +15,7 @@ export const insports: ClientConfig = {
name: ClientNames.Insports,
privacyLink: '/privacy-policy-and-statement?client_id=insports-ott-web',
showSearch: true,
+ showSmartBanner: true,
styles: {
background: 'background-image: url(/images/Checker.png);',
logo: 'insports-logo.svg',
diff --git a/src/config/clients/types.tsx b/src/config/clients/types.tsx
index febb8d15..77f01e9b 100644
--- a/src/config/clients/types.tsx
+++ b/src/config/clients/types.tsx
@@ -35,6 +35,7 @@ export type ClientConfig = {
privacyLink: string,
requests?: Record,
showSearch?: boolean,
+ showSmartBanner?: boolean,
styles: {
background?: string,
homePageHeader?: StyledCss,
diff --git a/src/config/userAgent.tsx b/src/config/userAgent.tsx
index b0405c07..15dcc250 100644
--- a/src/config/userAgent.tsx
+++ b/src/config/userAgent.tsx
@@ -1,3 +1,5 @@
export const isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent)
+export const isAndroid = /Android/.test(navigator.userAgent)
+
export const isMobileDevice = /iPhone|Android/.test(navigator.userAgent)
diff --git a/src/features/HeaderMobile/index.tsx b/src/features/HeaderMobile/index.tsx
index 86d26f4c..2435e6f8 100644
--- a/src/features/HeaderMobile/index.tsx
+++ b/src/features/HeaderMobile/index.tsx
@@ -1,7 +1,7 @@
import { useRecoilValue } from 'recoil'
-import { isIOS } from 'config/userAgent'
-import { isLffClient } from 'config/clients'
+import { isAndroid, isIOS } from 'config/userAgent'
+import { client, isLffClient } from 'config/clients'
import { HeaderMenu } from 'features/HeaderMenu'
import { DateFilter } from 'features/HeaderFilters'
@@ -10,6 +10,8 @@ import { SportsFilter } from 'features/SportsFilter'
import { isSportFilterShownAtom } from 'features/HomePage/Atoms/HomePageAtoms'
import { SmartBanner } from 'components/SmartBanner'
+import { UserInfo } from 'requests'
+
import {
HeaderStyled,
ScoreSwitchWrapper,
@@ -19,16 +21,22 @@ import {
type HeaderBannerProps = {
isOpenDownload: boolean,
setIsOpenDownload: (open: boolean) => void,
+ userInfo?: UserInfo,
}
-export const HeaderMobile = ({ isOpenDownload, setIsOpenDownload }: HeaderBannerProps) => {
+export const HeaderMobile = ({
+ isOpenDownload,
+ setIsOpenDownload,
+ userInfo,
+}: HeaderBannerProps) => {
const isSportFilterShown = useRecoilValue(isSportFilterShownAtom)
return (
<>
{
isOpenDownload
- && !isIOS
+ && (isAndroid || (isIOS && userInfo?.has_subscription))
+ && client.showSmartBanner
&&
}
diff --git a/src/features/HomePage/hooks.tsx b/src/features/HomePage/hooks.tsx
index c8b11b82..83cc160b 100644
--- a/src/features/HomePage/hooks.tsx
+++ b/src/features/HomePage/hooks.tsx
@@ -34,7 +34,7 @@ const getTimezoneOffset = (date: Date) => {
const getDate = (date: Date) => format(date, 'yyyy-MM-dd')
export const useHomePage = () => {
- const { user } = useAuthStore()
+ const { user, userInfo } = useAuthStore()
const { selectedDate } = useHeaderFiltersStore()
const [isOpenDownload, setIsOpenDownload] = useState(false)
const [isShowConfirmPopup, setIsShowConfirmPopup] = useState(false)
@@ -54,6 +54,7 @@ export const useHomePage = () => {
})()
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [])
+
useEffect(() => {
const dateLastOpenSmartBanner = localStorage.getItem('dateLastOpenSmartBanner')
if (!dateLastOpenSmartBanner
@@ -85,5 +86,6 @@ export const useHomePage = () => {
isOpenDownload,
isShowConfirmPopup,
setIsOpenDownload,
+ userInfo,
}
}
diff --git a/src/features/HomePage/index.tsx b/src/features/HomePage/index.tsx
index 6f9fd6ca..e4e476a2 100644
--- a/src/features/HomePage/index.tsx
+++ b/src/features/HomePage/index.tsx
@@ -29,6 +29,7 @@ const Home = () => {
isOpenDownload,
isShowConfirmPopup,
setIsOpenDownload,
+ userInfo,
} = useHomePage()
return (
@@ -37,6 +38,7 @@ const Home = () => {
) : (
diff --git a/src/requests/getUserInfo.tsx b/src/requests/getUserInfo.tsx
index db8c30a2..e02528b6 100644
--- a/src/requests/getUserInfo.tsx
+++ b/src/requests/getUserInfo.tsx
@@ -18,6 +18,7 @@ export type UserInfo = {
},
email: string,
firstname: string | null,
+ has_subscription: boolean,
is_unsubscribed: boolean | null,
language: {
id: number | null,