added video embed for archive episodes
This commit is contained in:
parent
0ae9e00060
commit
4b1ede7130
@ -7,7 +7,7 @@ import { H1 } from '../Text'
|
||||
import Markdown from '../Markdown'
|
||||
import translations from '../../data/strings'
|
||||
import InfoLayout from '../InfoLayout'
|
||||
import TrailerEmbed from '../VideoEmbed'
|
||||
import VideoEmbed from '../VideoEmbed'
|
||||
import {
|
||||
VideoCard,
|
||||
Title,
|
||||
@ -26,9 +26,16 @@ import config from '../../data/config'
|
||||
import trailerThumb from '../../assets/img/main_thumb.png'
|
||||
|
||||
const Info = ({ data, loading, infoActive, setInfoActive, currentVideo }) => {
|
||||
const [trailerActive, setTrailerActive] = useState(false)
|
||||
const toggleTrailerActive = () =>
|
||||
setTrailerActive(trailerState => !trailerState)
|
||||
const trailerUrl = `https://www.youtube-nocookie.com/embed/${config.seriesTrailerId}?autoplay=1&vq=hd1080`
|
||||
const [embedURL, setEmbedUrl] = useState('')
|
||||
|
||||
const onClickTrailerButton = () => {
|
||||
setEmbedUrl(trailerUrl)
|
||||
}
|
||||
const deactivateEmbed = () => {
|
||||
setEmbedUrl('')
|
||||
}
|
||||
|
||||
const pastStreams =
|
||||
data && data.length
|
||||
? data.filter(feeditem => isPast(new Date(feeditem.end)))
|
||||
@ -52,12 +59,9 @@ const Info = ({ data, loading, infoActive, setInfoActive, currentVideo }) => {
|
||||
|
||||
return (
|
||||
<InfoLayout loading={loading}>
|
||||
{trailerActive && (
|
||||
<TrailerEmbed
|
||||
onClose={toggleTrailerActive}
|
||||
url={config.seriesTrailer}
|
||||
/>
|
||||
)}
|
||||
{embedURL ? (
|
||||
<VideoEmbed onClose={deactivateEmbed} url={embedURL} />
|
||||
) : null}
|
||||
{infoActive && (
|
||||
<CrossSvg size="64" onClick={() => setInfoActive(false)} />
|
||||
)}
|
||||
@ -68,7 +72,7 @@ const Info = ({ data, loading, infoActive, setInfoActive, currentVideo }) => {
|
||||
<H1>Finding the Future in Unexpected Places</H1>
|
||||
<Markdown withLinebreaks>{intro}</Markdown>
|
||||
|
||||
<Trailer imgSrc={trailerThumb} onClick={toggleTrailerActive} />
|
||||
<Trailer imgSrc={trailerThumb} onClick={onClickTrailerButton} />
|
||||
|
||||
<Row>
|
||||
<a
|
||||
@ -107,7 +111,14 @@ const Info = ({ data, loading, infoActive, setInfoActive, currentVideo }) => {
|
||||
<Fragment>
|
||||
<Title>{translations.en.pastStream}:</Title>
|
||||
{pastStreams.map(feeditem => (
|
||||
<VideoCard key={feeditem.start} hasPassed {...feeditem} />
|
||||
<VideoCard
|
||||
key={feeditem.start}
|
||||
hasPassed
|
||||
onClickButton={() =>
|
||||
setEmbedUrl(`${config.peertube_root}${feeditem.embedPath}`)
|
||||
}
|
||||
{...feeditem}
|
||||
/>
|
||||
))}
|
||||
</Fragment>
|
||||
) : null}
|
||||
|
@ -183,6 +183,7 @@ export const VideoCard = ({
|
||||
previewPath,
|
||||
hasPassed,
|
||||
videoUrl,
|
||||
onClickButton,
|
||||
}) => {
|
||||
const startDate = new Date(start)
|
||||
const utcDate = zonedTimeToUtc(startDate, 'Europe/Berlin')
|
||||
@ -211,17 +212,19 @@ export const VideoCard = ({
|
||||
</Fragment>
|
||||
)}
|
||||
<P>{description}</P>
|
||||
<a
|
||||
href={
|
||||
hasPassed
|
||||
? videoUrl
|
||||
: `webcal://cloud.undersco.re/remote.php/dav/public-calendars/${config.calendarId}/?export`
|
||||
}
|
||||
>
|
||||
<Button>
|
||||
{hasPassed ? translations.en.watchEpisode : translations.en.subEvent}
|
||||
</Button>
|
||||
</a>
|
||||
{hasPassed ? (
|
||||
<Button onClick={onClickButton}>{translations.en.watchEpisode}</Button>
|
||||
) : (
|
||||
<a
|
||||
href={
|
||||
hasPassed
|
||||
? videoUrl
|
||||
: `webcal://cloud.undersco.re/remote.php/dav/public-calendars/${config.calendarId}/?export`
|
||||
}
|
||||
>
|
||||
<Button>{translations.en.subEvent}</Button>
|
||||
</a>
|
||||
)}
|
||||
</VCWrapper>
|
||||
)
|
||||
}
|
||||
|
@ -14,7 +14,6 @@ const Video = ({ url, onClose }) => {
|
||||
overlayTimeout.current = null
|
||||
setOverlayActiveState(true)
|
||||
|
||||
console.log('overlayTimeout.current', overlayTimeout.current)
|
||||
overlayTimeout.current = setTimeout(
|
||||
() => setOverlayActiveState(false),
|
||||
1500
|
||||
@ -29,7 +28,7 @@ const Video = ({ url, onClose }) => {
|
||||
onMouseMove={activateOverlay}
|
||||
width="560"
|
||||
height="315"
|
||||
src="https://www.youtube-nocookie.com/embed/b-JQ5Bo4JnI?autoplay=1&vq=hd1080"
|
||||
src={url}
|
||||
frameborder="0"
|
||||
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
|
||||
allowfullscreen
|
||||
|
@ -1,7 +1,6 @@
|
||||
export default {
|
||||
peertube_root: 'https://tv.undersco.re',
|
||||
seriesTrailer:
|
||||
'https://tv.undersco.re/videos/embed/5e29327c-41de-4b48-b567-ee28b181336f',
|
||||
seriesTrailerId: 'b-JQ5Bo4JnI',
|
||||
|
||||
calendarId: '9FzomgAfidHWCQcx',
|
||||
chat: {
|
||||
|
Loading…
Reference in New Issue
Block a user