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)
+ }} />
+ //
+ ))}
:
}