mirror of
https://github.com/lampame/lampac-ukraine.git
synced 2026-04-16 09:22:21 +00:00
Added language validation to only allow online API calls for Japanese and Chinese language variants. Early return for unsupported languages prevents unnecessary API calls.
48 lines
1.9 KiB
C#
48 lines
1.9 KiB
C#
using Microsoft.AspNetCore.Http;
|
|
using Microsoft.Extensions.Caching.Memory;
|
|
using Shared.Models;
|
|
using Shared.Models.Base;
|
|
using Shared.Models.Module;
|
|
using System.Collections.Generic;
|
|
|
|
namespace Bamboo
|
|
{
|
|
public class OnlineApi
|
|
{
|
|
public static List<(string name, string url, string plugin, int index)> Invoke(
|
|
HttpContext httpContext,
|
|
IMemoryCache memoryCache,
|
|
RequestModel requestInfo,
|
|
string host,
|
|
OnlineEventsModel args)
|
|
{
|
|
long.TryParse(args.id, out long tmdbid);
|
|
return Events(host, tmdbid, args.imdb_id, args.kinopoisk_id, args.title, args.original_title, args.original_language, args.year, args.source, args.serial, args.account_email);
|
|
}
|
|
|
|
public static List<(string name, string url, string plugin, int index)> Events(string host, long id, string imdb_id, long kinopoisk_id, string title, string original_title, string original_language, int year, string source, int serial, string account_email)
|
|
{
|
|
var online = new List<(string name, string url, string plugin, int index)>();
|
|
|
|
var init = ModInit.Bamboo;
|
|
if (init.enable && !init.rip)
|
|
{
|
|
if (!string.IsNullOrEmpty(original_language))
|
|
{
|
|
var lang = original_language.ToLowerInvariant();
|
|
if (lang != "ja" && lang != "jp" && lang != "zh" && lang != "zh-cn" && lang != "zh-hans" && lang != "zh-hant" && lang != "zh-tw" && lang != "zh-hk")
|
|
return online;
|
|
}
|
|
|
|
string url = init.overridehost;
|
|
if (string.IsNullOrEmpty(url) || UpdateService.IsDisconnected())
|
|
url = $"{host}/bamboo";
|
|
|
|
online.Add((init.displayname, url, "bamboo", init.displayindex));
|
|
}
|
|
|
|
return online;
|
|
}
|
|
}
|
|
}
|