add media view to FundProject

This commit is contained in:
Barry Gitarts 2019-08-02 15:56:33 -04:00 committed by Barry G
parent 0c8c198d6f
commit f25e83001f
2 changed files with 28 additions and 2 deletions

View File

@ -0,0 +1,24 @@
import React from 'react'
import ReactPlayer from 'react-player'
import { withStyles } from '@material-ui/core/styles'
import CardMedia from '@material-ui/core/CardMedia'
const styles = () => ({})
function MediaView({ className, isVideo, source, playing, imgClass }) {
return (
<div className={className} >
{isVideo &&
<ReactPlayer width="100%" height="100%" url={source} playing={playing} controls/>}
{!isVideo && <CardMedia
component="img"
alt="video"
className={imgClass}
src={source}
title="media-description"
/>}
</div>
)
}
export default withStyles(styles)(MediaView)

View File

@ -20,6 +20,7 @@ import { getAmountsPledged } from '../../utils/pledges'
import { useProjectData } from './hooks' import { useProjectData } from './hooks'
import { getNumberOfBackers, getMediaType, getMediaSrc } from '../../utils/project' import { getNumberOfBackers, getMediaType, getMediaSrc } from '../../utils/project'
import { getDateCreated, convertToHours } from '../../utils/dates' import { getDateCreated, convertToHours } from '../../utils/dates'
import MediaView from '../base/MediaView'
const { addProject } = LiquidPledging.methods const { addProject } = LiquidPledging.methods
@ -203,10 +204,10 @@ const SubmissionSection = ({ classes, history, projectData, projectId, pledges,
const { projectAge, projectAssets, manifest } = projectData const { projectAge, projectAssets, manifest } = projectData
const amountsPledged = useMemo(() => getAmountsPledged(pledges), [pledges, projectId]) const amountsPledged = useMemo(() => getAmountsPledged(pledges), [pledges, projectId])
const numberOfBackers = useMemo(() => getNumberOfBackers(pledges), [pledges, projectId]) const numberOfBackers = useMemo(() => getNumberOfBackers(pledges), [pledges, projectId])
const mediaType = useMemo(() => getMediaType(projectAssets), [projectAssets, projectId]) const isVideo = useMemo(() => getMediaType(projectAssets), [projectAssets, projectId])
const mediaUrl = useMemo(() => getMediaSrc(projectAssets), [projectAssets, projectId]) const mediaUrl = useMemo(() => getMediaSrc(projectAssets), [projectAssets, projectId])
const createdDate = getDateCreated(projectAge) const createdDate = getDateCreated(projectAge)
console.log({createdDate, projectAge, projectAssets, manifest, amountsPledged, numberOfBackers, mediaType, mediaUrl}) console.log({createdDate, projectAge, projectAssets, manifest, amountsPledged, numberOfBackers, isVideo, mediaUrl})
return ( return (
<Formik <Formik
@ -299,6 +300,7 @@ const SubmissionSection = ({ classes, history, projectData, projectId, pledges,
<Icon name="boxArrow" /> <Icon name="boxArrow" />
<div className={classes.chatText}>{manifest.code}</div> <div className={classes.chatText}>{manifest.code}</div>
</div> </div>
<MediaView className={classes.fullWidth} isVideo={isVideo} source={mediaUrl} />
<TextDisplay <TextDisplay
name="Full description" name="Full description"
text={manifest.description} text={manifest.description}