Fixed pagination behavior for upcoming scenes.

This commit is contained in:
DebaucheryLibrarian
2020-08-22 01:57:23 +02:00
parent 7c052fedfc
commit 5f5c48ea05
3 changed files with 17 additions and 3 deletions

View File

@@ -37,7 +37,11 @@ async function filterUniqueReleases(latestReleases, accReleases) {
return uniqueReleases;
}
function needNextPage(releases, uniqueReleases, totalReleases, hasDates) {
function needNextPage(releases, uniqueReleases, totalReleases, hasDates, upcoming) {
if (upcoming && uniqueReleases.length > 0) {
return argv.paginateUpcoming;
}
if (argv.last) {
return totalReleases + releases.length < argv.last;
}
@@ -46,6 +50,10 @@ function needNextPage(releases, uniqueReleases, totalReleases, hasDates) {
return totalReleases + releases.length < argv.nullDateLimit;
}
if (uniqueReleases.length === 0) {
return false;
}
const oldestReleaseOnPage = releases
.sort((releaseA, releaseB) => releaseB.date - releaseA.date)
.slice(-1)[0];
@@ -84,7 +92,7 @@ async function scrapeReleases(scraper, entity, preData, upcoming = false, page =
? limitedReleases
: await filterUniqueReleases(limitedReleases, accReleases);
if (needNextPage(releases, uniqueReleases, totalReleases, hasDates)) {
if (needNextPage(releases, uniqueReleases, totalReleases, hasDates, upcoming)) {
return scrapeReleases(scraper, entity, preData, upcoming, page + 1, accReleases.concat(uniqueReleases), totalReleases + releases.length);
}