From 3cd20e2c522372a141c55baa4887a81eb626500f Mon Sep 17 00:00:00 2001 From: Oleg Lavrovsky Date: Sun, 29 Oct 2023 00:49:01 +0200 Subject: [PATCH] Artfix --- webapp/src/components/ArtObject.tsx | 33 +++++++++++++++-------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/webapp/src/components/ArtObject.tsx b/webapp/src/components/ArtObject.tsx index 2997b95..aab7ce0 100644 --- a/webapp/src/components/ArtObject.tsx +++ b/webapp/src/components/ArtObject.tsx @@ -5,31 +5,32 @@ const DEFAULT_IMG = 'https://upload.wikimedia.org/wikipedia/commons/thumb/c/c7/O const ArtObject = ({ piece }: { piece: Piece }) => { // Get a screenshot or image link - let imageurl = - piece["type of embed"] == 'IMAGE' ? - piece.embed - : piece.screenshot ? - piece.screenshot.split(' (')[1].replace(')', '') - : DEFAULT_IMG; + let imageurl = null; + if (piece["type of embed"] == 'IMAGE') { + imageurl = piece.embed; + } else if (piece.screenshot) { + imageurl = piece.screenshot.split(' (')[1].replace(')', ''); + } else { + imageurl = DEFAULT_IMG; + } let embedurl = - piece["type of embed"] == 'IFRAME' ? + (piece["type of embed"] == 'IFRAME') ? piece.embed : null; let youtubeurl = - piece["type of embed"] == 'VIDEO' - && piece.embed.indexOf('?v=')>1 ? + (piece["type of embed"] == 'VIDEO') + && (piece.embed.indexOf('?v=')>1) ? 'https://www.youtube.com/embed/' + piece.embed.split('?v=')[1] : null; // TODO: MUSIC embedder for soundcloud / spotify / ... // Click away screenshot when embedding - let imagehide = (embedurl || youtubeurl) ? '' : 'width-full z-50'; - let embedhide = imagehide ? 'hide' : ''; + piece.imagehide = (embedurl || youtubeurl) ? '' : 'width-full z-50'; + piece.embedhide = piece.imagehide ? 'hide' : ''; -const [showResults, setShowResults] = React.useState(false) - const showEmbed = () => { - this.className = 'hide' + let showEmbed = () => { + piece.imagehide = piece.embedhide = 'hide'; } return ( @@ -38,7 +39,7 @@ const [showResults, setShowResults] = React.useState(false) {piece.name}
- {embedhide && + {piece.embedhide && Image