forked from DebaucheryLibrarian/traxxx
Changed next page determination to ensure --after is followed even if there are no unique releases.
This commit is contained in:
@@ -40,8 +40,8 @@ async function init() {
|
||||
const sceneMovies = deepScenes && deepScenes.map(scene => scene.movie).filter(Boolean);
|
||||
const deepMovies = argv.sceneMovies && await fetchMovies([...(argv.movie || []), ...(sceneMovies || [])]);
|
||||
|
||||
const movieScenes = deepMovies.map(movie => movie.scenes?.map(scene => ({ ...scene, entity: movie.entity }))).flat().filter(Boolean);
|
||||
const deepMovieScenes = argv.movieScenes ? await fetchScenes(movieScenes) : movieScenes;
|
||||
const movieScenes = argv.movieScenes ? deepMovies.map(movie => movie.scenes?.map(scene => ({ ...scene, entity: movie.entity }))).flat().filter(Boolean) : [];
|
||||
const deepMovieScenes = argv.deep ? await fetchScenes(movieScenes) : movieScenes;
|
||||
|
||||
if (argv.inspect) {
|
||||
console.log(util.inspect(deepScenes));
|
||||
|
||||
@@ -31,8 +31,8 @@ function extractActors(scene) {
|
||||
return release;
|
||||
}
|
||||
|
||||
async function fetchLatestWrap(site, page = 1) {
|
||||
const latest = await fetchLatest(site, page);
|
||||
async function fetchLatestWrap(site, page = 1, include, preData) {
|
||||
const latest = await fetchLatest(site, page, include, preData);
|
||||
|
||||
return latest.map(scene => extractActors(scene));
|
||||
}
|
||||
|
||||
@@ -44,8 +44,8 @@ function scrapeScene({ query }, channel) {
|
||||
return release;
|
||||
}
|
||||
|
||||
async function fetchLatestLocal(channel, page) {
|
||||
return fetchLatest(channel, page, true);
|
||||
async function fetchLatestLocal(channel, page, include, preData) {
|
||||
return fetchLatest(channel, page, include, preData, true);
|
||||
}
|
||||
|
||||
async function fetchScene(url, channel) {
|
||||
|
||||
@@ -359,7 +359,7 @@ function scrapeProfile(html, url, actorName, entity) {
|
||||
return profile;
|
||||
}
|
||||
|
||||
async function fetchLatest(site, page = 1, entryIdFromTitle = false) {
|
||||
async function fetchLatest(site, page = 1, include, preData, entryIdFromTitle = false) {
|
||||
const url = site.parameters?.latest
|
||||
? util.format(site.parameters.latest, page)
|
||||
: `${site.url}/trial/categories/movies_${page}_d.html`;
|
||||
|
||||
@@ -56,17 +56,15 @@ function needNextPage(releases, uniqueReleases, totalReleases, hasDates, upcomin
|
||||
return totalReleases + releases.length < argv.nullDateLimit;
|
||||
}
|
||||
|
||||
if (uniqueReleases.length === 0) {
|
||||
return false;
|
||||
}
|
||||
if (argv.after) {
|
||||
const oldestReleaseOnPage = releases
|
||||
.sort((releaseA, releaseB) => releaseB.date - releaseA.date)
|
||||
.slice(-1)[0];
|
||||
|
||||
const oldestReleaseOnPage = releases
|
||||
.sort((releaseA, releaseB) => releaseB.date - releaseA.date)
|
||||
.slice(-1)[0];
|
||||
|
||||
if (moment(oldestReleaseOnPage.date).isAfter(argv.after)) {
|
||||
// oldest release on page is newer than the specified date cut-off
|
||||
return true;
|
||||
if (moment(oldestReleaseOnPage.date).isAfter(argv.after)) {
|
||||
// oldest release on page is newer than the specified date cut-off
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
|
||||
Reference in New Issue
Block a user