Update search.ts

This commit is contained in:
erynith
2023-12-16 16:30:11 -05:00
committed by GitHub
parent 0dc7baeca7
commit 2a43934788

View File

@@ -2,7 +2,7 @@ import { load } from 'cheerio';
import { MovieMedia, ShowMedia } from '@/main/media';
import { flixHqBase } from '@/providers/sources/flixhq/common';
import { compareMedia } from '@/utils/compare';
import { compareMedia, compareTitle } from '@/utils/compare';
import { ScrapeContext } from '@/utils/context';
export async function getFlixhqId(ctx: ScrapeContext, media: MovieMedia | ShowMedia): Promise<string | null> {
@@ -18,16 +18,18 @@ export async function getFlixhqId(ctx: ScrapeContext, media: MovieMedia | ShowMe
const id = query.find('div.film-poster > a').attr('href')?.slice(1);
const title = query.find('div.film-detail > h2 > a').attr('title');
const year = query.find('div.film-detail > div.fd-infor > span:nth-child(1)').text();
const seasons = year.includes('SS') ? parseInt(year.split('SS')[1]) : 0;
if (!id || !title || !year) return null;
return {
id,
title,
year: parseInt(year, 10),
seasons,
};
});
const matchingItem = items.find((v) => v && compareMedia(media, v.title, v.year));
const matchingItem = items.find((v) => v && (media.type === 'movie' ? compareMedia(media, v.title, v.year) : compareTitle(media.title, v.title) && media.season.number === v.seasons || media.season.number < v.seasons || media.season.number < v.seasons + 1));
if (!matchingItem) return null;
return matchingItem.id;