diff --git a/public/images/dollar-sign.svg b/public/images/dollar-sign.svg
new file mode 100644
index 00000000..ae6c8b37
--- /dev/null
+++ b/public/images/dollar-sign.svg
@@ -0,0 +1,3 @@
+
diff --git a/src/features/MatchCard/CardSoon/index.tsx b/src/features/MatchCard/CardSoon/index.tsx
index d13bba7d..b330b403 100644
--- a/src/features/MatchCard/CardSoon/index.tsx
+++ b/src/features/MatchCard/CardSoon/index.tsx
@@ -20,6 +20,7 @@ import {
TournamentName,
TeamLogos,
TeamLogo,
+ BuyMatchButton,
} from '../styled'
const CardWrapper = styled(CommonCardWrapper)`
@@ -37,6 +38,7 @@ type CardSoonProps = {
export const CardSoon = ({
match: {
+ availableBySubscription,
date,
sportType,
team1,
@@ -72,6 +74,7 @@ export const CardSoon = ({
profileType={ProfileTypes.TEAMS}
/>
+ {!availableBySubscription && }
{showSportName && }
diff --git a/src/features/MatchCard/MatchInfoCard/index.tsx b/src/features/MatchCard/MatchInfoCard/index.tsx
index 51d10bfa..e3cc2b0e 100644
--- a/src/features/MatchCard/MatchInfoCard/index.tsx
+++ b/src/features/MatchCard/MatchInfoCard/index.tsx
@@ -22,6 +22,7 @@ import {
TournamentName,
TeamLogos,
TeamLogo,
+ BuyMatchButton,
} from '../styled'
type Props = {
@@ -33,6 +34,7 @@ type Props = {
export const MatchInfoCard = ({
match: {
+ availableBySubscription,
date,
hasVideo,
preview,
@@ -89,6 +91,7 @@ export const MatchInfoCard = ({
)
}
+ {!availableBySubscription && }
{showSportName && }
diff --git a/src/features/MatchCard/styled.tsx b/src/features/MatchCard/styled.tsx
index 509295f9..13381153 100644
--- a/src/features/MatchCard/styled.tsx
+++ b/src/features/MatchCard/styled.tsx
@@ -43,6 +43,7 @@ export const CardWrapper = styled.li.attrs({
`
export const PreviewWrapper = styled.div`
+ position: relative;
display: flex;
flex-direction: column-reverse;
height: 147px;
@@ -70,10 +71,13 @@ export const MatchDate = styled.div`
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.1em;
- text-align: center;
+ display: flex;
+ align-items: center;
+ justify-content: center;
white-space: nowrap;
color: white;
- background: #6D6D6D;
+ background-color: #6D6D6D;
+ z-index: 1;
@media ${devices.tablet} {
top: 10px;
@@ -82,6 +86,7 @@ export const MatchDate = styled.div`
padding: 6px 8px;
}
`
+
export const Time = styled.span`
margin-left: 10px;
`
@@ -205,6 +210,7 @@ export const TeamLogos = styled.div`
padding-right: 20px;
}
`
+
export const TeamLogo = styled(ProfileLogo)`
width: 60px;
@@ -216,3 +222,25 @@ export const TeamLogo = styled(ProfileLogo)`
width: 134px;
}
`
+
+export const BuyMatchButton = styled.button`
+ border: none;
+ background: none;
+ padding: 0;
+
+ position: absolute;
+ right: 12px;
+ bottom: 12px;
+ width: 40px;
+ height: 40px;
+ cursor: pointer;
+ z-index: 1;
+
+ background-image: url(/images/dollar-sign.svg);
+ background-position: center;
+ background-repeat: no-repeat;
+ background-color: #fff;
+ border-radius: 50%;
+ border: 0.5px solid rgba(0, 0, 0, 0.2);
+ box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.5);
+`
diff --git a/src/features/Matches/helpers/prepareMatches.tsx b/src/features/Matches/helpers/prepareMatches.tsx
index f4c3fcd2..c802c15c 100644
--- a/src/features/Matches/helpers/prepareMatches.tsx
+++ b/src/features/Matches/helpers/prepareMatches.tsx
@@ -11,10 +11,12 @@ const prepareMatch = ({
id,
sport,
stream_status,
+ sub,
team1,
team2,
tournament,
}: Match) => ({
+ availableBySubscription: sub,
date: format(new Date(date), 'dd.MM.yy'),
hasVideo: has_video,
id,
diff --git a/src/requests/getMatches/types.tsx b/src/requests/getMatches/types.tsx
index 4db90d8f..40469b89 100644
--- a/src/requests/getMatches/types.tsx
+++ b/src/requests/getMatches/types.tsx
@@ -22,6 +22,7 @@ export type Match = {
round_id: number | null,
sport: SportTypes,
stream_status: MatchStatuses,
+ sub: boolean,
team1: Team,
team2: Team,
tournament: Tournament,