diff --git a/src/components/Cross.css b/src/components/Cross.css new file mode 100644 index 00000000..d4ef70b1 --- /dev/null +++ b/src/components/Cross.css @@ -0,0 +1,7 @@ +.cross { + display: inline-block; +} + +.cross:hover { + transform: rotate(45deg); +} \ No newline at end of file diff --git a/src/components/Cross.js b/src/components/Cross.js new file mode 100644 index 00000000..eb2ae21b --- /dev/null +++ b/src/components/Cross.js @@ -0,0 +1,14 @@ +import React from 'react' +import './Cross.css' + +export function Cross(props) { + return ( + + + + `}}> + + ) +} diff --git a/src/components/MovieRow.js b/src/components/MovieRow.js index f857f5fb..a7a7adac 100644 --- a/src/components/MovieRow.js +++ b/src/components/MovieRow.js @@ -1,7 +1,8 @@ import React from 'react' import { Arrow } from './Arrow' -import './MovieRow.css' +// import { Cross } from './Crosss' import { PercentageOverlay } from './PercentageOverlay' +import './MovieRow.css' // title: string // onClick: () => void @@ -21,6 +22,7 @@ export function MovieRow(props) { return (
props.onClick && props.onClick()}>
+ {/* */} {props.title}{props.place ? ` - S${props.place.season}:E${props.place.episode}` : ''}  ({props.year})
diff --git a/src/views/Search.css b/src/views/Search.css index 903b854c..7e8cb50d 100644 --- a/src/views/Search.css +++ b/src/views/Search.css @@ -22,7 +22,7 @@ cursor: pointer; } .cardView nav a.selected-link { - background: var(--button); + background: var(--card); color: var(--button-text); font-weight: bold; } diff --git a/src/views/Search.js b/src/views/Search.js index ca8ee347..283b1d4d 100644 --- a/src/views/Search.js +++ b/src/views/Search.js @@ -151,6 +151,26 @@ export function SearchView() { if (entry.percentageDone < 90) { newContinueWatching.push(entry) + } else { + if (!subselection.show) return; + + if (subselection.meta.episodes[subselection.show.season].includes(`${parseInt(subselection.show.episode) + 1}`)) { + subselection.show = { + season: subselection.show.season, + episode: `${parseInt(subselection.show.episode) + 1}` + } + + entry.percentageDone = 0; + } else if (subselection.meta.episodes[`${parseInt(subselection.show.season) + 1}`]['1']) { + subselection.show = { + season: `${parseInt(subselection.show.season) + 1}`, + episode: '1' + } + } else { + return; + } + + newContinueWatching.push(entry); } } } @@ -178,7 +198,7 @@ export function SearchView() { setPage('search')} href>Search {continueWatching.length > 0 ? setPage('watching')} href>Continue watching - : ''} + : ''} {/* Search */} @@ -228,27 +248,20 @@ export function SearchView() { {/* Continue watching */} {continueWatching.length > 0 && page === 'watching' ? Continue watching - {Object.entries(continueWatching.reduce((a, v) => { - if (!a[v.source]) a[v.source] = [] - a[v.source].push(v) - return a; - }, {})).map(v => ( -
-

{v[0]}

- {v[1].map((v, i) => ( - { - if (v.type === 'show') { - history.push(`${routeMatch.url}/${v.source}/${v.data.meta.title}/${v.slug}/season/${v.data.show.season}/episode/${v.data.show.episode}`) - } else { - history.push(`${routeMatch.url}/${v.source}/${v.data.meta.title}/${v.slug}`) - } - - setShowingOptions(false) - getStream(v.data.meta.title, v.data.meta.slug, v.type, v.source, v.data.meta.year) - }} /> - ))} -
- ))} + {continueWatching?.map((v, i) => ( + //
+ { + if (v.type === 'show') { + history.push(`${routeMatch.url}/${v.source}/${v.data.meta.title}/${v.slug}/season/${v.data.show.season}/episode/${v.data.show.episode}`) + } else { + history.push(`${routeMatch.url}/${v.source}/${v.data.meta.title}/${v.slug}`) + } + + setShowingOptions(false) + getStream(v.data.meta.title, v.data.meta.slug, v.type, v.source, v.data.meta.year) + }} /> + //
+ ))}
: }