Implement isAnime filtering logic for provider modules based on original_language

This commit is contained in:
Felix 2025-10-19 11:01:05 +03:00
parent 7fdd0d8b30
commit 479196e46b
5 changed files with 45 additions and 5 deletions

View File

@ -10,7 +10,17 @@ namespace Anihub
var online = new List<(string name, string url, string plugin, int index)>(); var online = new List<(string name, string url, string plugin, int index)>();
var init = ModInit.Anihub; var init = ModInit.Anihub;
if (init.enable && !init.rip)
// Логіка визначення isAnime згідно Deepwiki:
// isanime = true якщо original_language == "ja" або "zh"
bool hasLang = !string.IsNullOrEmpty(original_language);
bool isanime = hasLang && (original_language == "ja" || original_language == "zh");
// Аніме-модуль додається тільки якщо:
// - загальний пошук (serial == -1), або
// - контент є аніме (isanime), або
// - мова невідома (немає original_language)
if (init.enable && !init.rip && (serial == -1 || isanime || !hasLang))
{ {
string url = init.overridehost; string url = init.overridehost;
if (string.IsNullOrEmpty(url)) if (string.IsNullOrEmpty(url))

View File

@ -10,7 +10,17 @@ namespace AnimeON
var online = new List<(string name, string url, string plugin, int index)>(); var online = new List<(string name, string url, string plugin, int index)>();
var init = ModInit.AnimeON; var init = ModInit.AnimeON;
if (init.enable && !init.rip)
// Визначаємо isAnime згідно стандарту Lampac (Deepwiki):
// isanime = true якщо original_language == "ja" або "zh"
bool hasLang = !string.IsNullOrEmpty(original_language);
bool isanime = hasLang && (original_language == "ja" || original_language == "zh");
// AnimeON — аніме-провайдер. Додаємо його:
// - при загальному пошуку (serial == -1), або
// - якщо контент визначений як аніме (isanime), або
// - якщо мова невідома (відсутній original_language)
if (init.enable && !init.rip && (serial == -1 || isanime || !hasLang))
{ {
string url = init.overridehost; string url = init.overridehost;
if (string.IsNullOrEmpty(url)) if (string.IsNullOrEmpty(url))

View File

@ -10,7 +10,16 @@ namespace CikavaIdeya
var online = new List<(string name, string url, string plugin, int index)>(); var online = new List<(string name, string url, string plugin, int index)>();
var init = ModInit.CikavaIdeya; var init = ModInit.CikavaIdeya;
if (init.enable && !init.rip)
// Визначення isAnime згідно Lampac (Deepwiki): original_language == "ja" або "zh"
bool hasLang = !string.IsNullOrEmpty(original_language);
bool isanime = hasLang && (original_language == "ja" || original_language == "zh");
// CikavaIdeya — не-аніме провайдер. Додаємо якщо:
// - загальний пошук (serial == -1), або
// - контент НЕ аніме (!isanime), або
// - мова невідома (немає original_language)
if (init.enable && !init.rip && (serial == -1 || !isanime || !hasLang))
{ {
string url = init.overridehost; string url = init.overridehost;
if (string.IsNullOrEmpty(url)) if (string.IsNullOrEmpty(url))

View File

@ -10,6 +10,7 @@ namespace UaTUT
var online = new List<(string name, string url, string plugin, int index)>(); var online = new List<(string name, string url, string plugin, int index)>();
var init = ModInit.UaTUT; var init = ModInit.UaTUT;
// UaTUT: змішаний контент (аніме + не-аніме) — завжди включати при enable && !rip
if (init.enable && !init.rip) if (init.enable && !init.rip)
{ {
string url = init.overridehost; string url = init.overridehost;

View File

@ -10,7 +10,17 @@ namespace Unimay
var online = new List<(string name, string url, string plugin, int index)>(); var online = new List<(string name, string url, string plugin, int index)>();
var init = ModInit.Unimay; var init = ModInit.Unimay;
if (init.enable && !init.rip)
// Визначення isAnime згідно стандарту Lampac (Deepwiki):
// isanime = true якщо original_language == "ja" або "zh"
bool hasLang = !string.IsNullOrEmpty(original_language);
bool isanime = hasLang && (original_language == "ja" || original_language == "zh");
// Unimay — аніме-провайдер. Додаємо якщо:
// - загальний пошук (serial == -1), або
// - контент є аніме (isanime), або
// - мова невідома (немає original_language)
if (init.enable && !init.rip && (serial == -1 || isanime || !hasLang))
{ {
string url = init.overridehost; string url = init.overridehost;
if (string.IsNullOrEmpty(url)) if (string.IsNullOrEmpty(url))