diff --git a/app/index.html b/app/index.html index 2471f20..c4b2e29 100644 --- a/app/index.html +++ b/app/index.html @@ -727,11 +727,6 @@ -
- - -
@@ -776,7 +771,7 @@ - + diff --git a/app/js/animeHandler.js b/app/js/animeHandler.js index 33b8554..740ec06 100644 --- a/app/js/animeHandler.js +++ b/app/js/animeHandler.js @@ -68,7 +68,7 @@ async function alRequest(opts) { let query, variables = { type: "ANIME", - sort: "TRENDING_DESC", + sort: opts.sort || "TRENDING_DESC", page: opts.page || 1, perPage: opts.perPage || 30, status_in: opts.status_in || "[CURRENT,PLANNING]", @@ -539,22 +539,7 @@ async function nyaaRss(media, episode) { }) return frag } -//resolve anime name based on torrent name and store it -async function resolveName(name, method, release) { - if (!store.hasOwnProperty(name) && !(alResponse && !alResponse.data.Page.media.some(media => (Object.values(media.title).concat(media.synonyms).filter(name => name != null).includes(name) && ((store[name] = media) && true))))) { - let res = await alRequest({ perPage: 1, name: name, method: method }) - if (!res.data.Page.media[0]) { - res = await alRequest({ name: name.replace(" (TV)", "").replace(` (${new Date().getFullYear()})`, "").replace("-", ""), method: method, perPage: 1 }) - console.log(name.replace(" (TV)", "").replace(` (${new Date().getFullYear()})`, "").replace("-", "")) - } - console.log(res) - if (settings.torrent7 && !res.data.Page.media[0] && release) { - res = await alRequest({ name: name, method: "SearchName", perPage: 1, status: "RELEASING" }) - } - store[name] = res.data.Page.media[0] - } - return store[name] -} +//resolve anime name based on file name and store it async function resolveFileMedia(opts) { // opts.fileName opts.method opts.isRelease @@ -570,14 +555,16 @@ async function resolveFileMedia(opts) { } res = await alRequest(method) if (!res.data.Page.media[0]) { - method.name = method.name.replace(" (TV)", "").replace(` (${new Date().getFullYear()})`, "").replace("-", "") // this needs to be improved!!! + method.name = method.name.replace(" (TV)", "").replace(` (${new Date().getFullYear()})`, "").replace("-", "").replace("S2","2") // this needs to be improved!!! + method.status = undefined + if (opts.isRelease) method.sort = "START_DATE_DESC" res = await alRequest(method) } if (res.data.Page.media[0]) store[elems.anime_title] = res.data.Page.media[0] } let episode, media = store[elems.anime_title] // resolve episode, if movie, dont. - if (media && media.format != "MOVIE" && elems.episode_number) { + if ((media?.format != "MOVIE" || media.episodes) && elems.episode_number) { async function resolveSeason(opts) { // opts.media, opts.episode, opts.increment, opts.offset let epMin, epMax diff --git a/app/js/playerHandler.js b/app/js/playerHandler.js index 81c3aa9..c62508a 100644 --- a/app/js/playerHandler.js +++ b/app/js/playerHandler.js @@ -649,9 +649,9 @@ if ('mediaSession' in navigator) { //AL entry auto add function checkCompletion() { - if (!playerData.watched && video.duration - 180 < video.currentTime && playerData.nowPlaying && playerData.nowPlaying[0]) { - if (settings.other2) { - if (parseInt(playerData.nowPlaying[1]) <= playerData.nowPlaying[0].episodes || !playerData.nowPlaying[0].episodes) alEntry() + if (!playerData.watched && video.duration - 180 < video.currentTime && playerData.nowPlaying && playerData.nowPlaying[0].episodes) { + if (settings.other2 && !(!playerData.nowPlaying[0].episodes && playerData.nowPlaying[0].streamingEpisodes.length)) { + if (parseInt(playerData.nowPlaying[1]) <= playerData.nowPlaying[0].episodes) alEntry() } else { halfmoon.initStickyAlert({ content: `Do You Want To Mark
${playerData.nowPlaying[0].title.userPreferred}
Episode ${playerData.nowPlaying[1]} As Completed?
diff --git a/app/js/settingsHandler.js b/app/js/settingsHandler.js index a5ed929..43a587f 100644 --- a/app/js/settingsHandler.js +++ b/app/js/settingsHandler.js @@ -1,5 +1,5 @@ const settingsElements = [ - volume, player2, player3, player5, player6, player8, player10, subtitle1, subtitle3, torrent1, torrent2, torrent3, torrent4, torrent5, torrent6, torrent7, torrent9, other2 + volume, player2, player3, player5, player6, player8, player10, subtitle1, subtitle3, torrent1, torrent2, torrent3, torrent4, torrent5, torrent6, torrent9, other2 ] setRes.addEventListener("click", restoreDefaults) settingsTab.addEventListener("click", applySettingsTimeout) diff --git a/app/js/subtitleOctopus.js b/app/js/subtitleOctopus.js index 5ebfdaa..a14b26b 100644 --- a/app/js/subtitleOctopus.js +++ b/app/js/subtitleOctopus.js @@ -48,7 +48,6 @@ function renderSubs(trackNumber) { lossyRender: true, fonts: playerData.fonts.length == 0 ? ["https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmEU9fBBc4.woff2"] : playerData.fonts, workerUrl: 'js/subtitles-octopus-worker.js', - debug: true, timeOffset: 0 }; playerData.octopusInstance = new SubtitlesOctopus(options); diff --git a/app/js/torrentHandler.js b/app/js/torrentHandler.js index ed00aa8..e90f838 100644 --- a/app/js/torrentHandler.js +++ b/app/js/torrentHandler.js @@ -84,9 +84,7 @@ loadOfflineStorage() function cleanupTorrents() { client.torrents.filter(torrent => { return !offlineTorrents.has(torrent.infoHash) || torrent.progress != 1 // creates an array of all non-offline store torrents and removes them - }).forEach(torrent => { - torrent.destroy({ destroyStore: true }) - }) + }).forEach(torrent => torrent.destroy({ destroyStore: true })) } // manually add trackers