summaryrefslogtreecommitdiff
path: root/frontend/site/viewer/viewer.container.js
diff options
context:
space:
mode:
authorJules Laplace <julescarbon@gmail.com>2021-03-17 18:36:14 +0100
committerJules Laplace <julescarbon@gmail.com>2021-03-17 18:36:14 +0100
commit2313cc4bb4d6c511c76d28020c1c97e6a5eb0a4d (patch)
tree1847076edc6efda0f9e075f12a9be91f63372cb5 /frontend/site/viewer/viewer.container.js
parentd165a0727e42349d935ab3ee287242f1e5029742 (diff)
audio actually playing
Diffstat (limited to 'frontend/site/viewer/viewer.container.js')
-rw-r--r--frontend/site/viewer/viewer.container.js12
1 files changed, 9 insertions, 3 deletions
diff --git a/frontend/site/viewer/viewer.container.js b/frontend/site/viewer/viewer.container.js
index 3f1c9c5..71c6bba 100644
--- a/frontend/site/viewer/viewer.container.js
+++ b/frontend/site/viewer/viewer.container.js
@@ -51,11 +51,12 @@ class ViewerContainer extends Component {
const page_path = ["", graph_name, page_name].join('/')
const { pages, home_page } = this.props.graph
const page = pages[page_path] || pages[home_page]
- if (!this.props.interactive && hasAutoplayVideo(page)) {
+ if (!this.props.interactive && hasAutoplay(page)) {
this.setState({ page, roadblock: true })
} else {
this.setState({ page, roadblock: false })
actions.site.interact()
+ this.props.audio.player.playPage(page)
}
}
@@ -103,8 +104,10 @@ class ViewerContainer extends Component {
}
removeRoadblock() {
+ console.log("remove roadblock")
actions.site.interact()
this.setState({ roadblock: false })
+ this.props.audio.player.playPage(this.state.page)
}
renderRoadblock() {
@@ -120,14 +123,17 @@ class ViewerContainer extends Component {
}
}
-const hasAutoplayVideo = page => {
- return page.tiles.some(tile => {
+const hasAutoplay = page => {
+ const hasAutoplayVideo = page.tiles.some(tile => {
return tile.type === 'video' && !tile.settings.muted
})
+ const hasAutoplayAudio = page.settings.background_audio_id > 0
+ return hasAutoplayAudio || hasAutoplayVideo
}
const mapStateToProps = state => ({
site: state.site,
+ audio: state.audio,
graph: state.site.graph,
interactive: state.site.interactive,
})