Skip to content

Commit 7adbfe7

Browse files
committed
fix
1 parent ac6440d commit 7adbfe7

20 files changed

+132
-47
lines changed

Controllers/ApiController.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,10 @@ public ActionResult Jackett(string apikey, string query, string title, string ti
6464
{
6565
//Console.WriteLine(HttpContext.Request.Path + HttpContext.Request.QueryString.Value);
6666

67+
string cachekey = $"api:v2.0:indexers:{query}:{title}:{title_original}:{year}:{(category != null && category.Count > 0 ? string.Join(",", category.Select(i => $"{i.Key}={i.Value}")) : "null")}:{is_serial}";
68+
if (memoryCache.TryGetValue(cachekey, out List<Result> _cacheResult))
69+
return Json(new RootObject() { Results = _cacheResult });
70+
6771
var fastdb = getFastdb();
6872
var torrents = new Dictionary<string, TorrentDetails>();
6973
bool rqnum = !HttpContext.Request.QueryString.Value.Contains("&is_serial=") && HttpContext.Request.Headers.UserAgent.ToString() == "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36";
@@ -646,6 +650,8 @@ List<ffStream> FFprobe(TorrentDetails t, out HashSet<string> langs)
646650
});
647651
}
648652

653+
memoryCache.Set(cachekey, Results, DateTime.Now.AddMinutes(5));
654+
649655
return Json(new RootObject() { Results = Results });
650656
}
651657
#endregion
@@ -930,7 +936,7 @@ public static Dictionary<string, List<string>> getFastdb(bool update = false)
930936
{
931937
var fastdb = new Dictionary<string, List<string>>();
932938

933-
foreach (var item in FileDB.masterDb)
939+
foreach (var item in FileDB.masterDb.ToArray())
934940
{
935941
foreach (string k in item.Key.Split(":"))
936942
{

Controllers/CRON/AniLibriaController.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,8 +81,11 @@ async public Task<string> Parse(int limit)
8181
}
8282
}
8383
catch { }
84+
finally
85+
{
86+
workParse = false;
87+
}
8488

85-
workParse = false;
8689
return "ok";
8790
}
8891
}

Controllers/CRON/AnimeLayerController.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,8 +114,11 @@ async public Task<string> Parse(int maxpage = 1)
114114
}
115115
}
116116
catch { }
117+
finally
118+
{
119+
workParse = false;
120+
}
117121

118-
workParse = false;
119122
return "ok";
120123
}
121124
#endregion

Controllers/CRON/BaibakoController.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,8 +113,11 @@ async public Task<string> Parse(int maxpage)
113113
}
114114
}
115115
catch { }
116+
finally
117+
{
118+
workParse = false;
119+
}
116120

117-
workParse = false;
118121
return "ok";
119122
}
120123
#endregion

Controllers/CRON/BitruController.cs

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,16 +27,30 @@ static BitruController()
2727

2828

2929
#region Parse
30+
static bool _workParse = false;
31+
3032
async public Task<string> Parse(int page = 1)
3133
{
34+
if (_workParse)
35+
return "work";
36+
37+
_workParse = true;
3238
string log = "";
3339

34-
// movie - Фильмы | Фильмы
35-
// serial - Сериалы | Сериалы
36-
foreach (string cat in new List<string>() { "movie", "serial" })
40+
try
41+
{
42+
// movie - Фильмы | Фильмы
43+
// serial - Сериалы | Сериалы
44+
foreach (string cat in new List<string>() { "movie", "serial" })
45+
{
46+
await parsePage(cat, page);
47+
log += $"{cat} - {page}\n";
48+
}
49+
}
50+
catch { }
51+
finally
3752
{
38-
await parsePage(cat, page);
39-
log += $"{cat} - {page}\n";
53+
_workParse = false;
4054
}
4155

4256
return string.IsNullOrWhiteSpace(log) ? "ok" : log;

Controllers/CRON/HDRezkaController.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,11 @@ async public Task<string> Parse(int maxpage = 1)
3636
}
3737
}
3838
catch { }
39+
finally
40+
{
41+
workParse = false;
42+
}
3943

40-
workParse = false;
4144
return "ok";
4245
}
4346
#endregion

Controllers/CRON/KinozalController.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,8 +131,11 @@ async public Task<string> Parse(int page)
131131
}
132132
}
133133
catch { }
134+
finally
135+
{
136+
_workParse = false;
137+
}
134138

135-
_workParse = false;
136139
return string.IsNullOrWhiteSpace(log) ? "ok" : log;
137140
}
138141
#endregion

Controllers/CRON/LostfilmController.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,11 @@ async public Task<string> Parse(int maxpage = 1)
129129
}
130130
}
131131
catch { }
132+
finally
133+
{
134+
_workParse = false;
135+
}
132136

133-
_workParse = false;
134137
return "ok";
135138
}
136139
#endregion

Controllers/CRON/MegapeerController.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,11 @@ async public Task<string> Parse(int page)
5353
}
5454
}
5555
catch { }
56+
finally
57+
{
58+
_workParse = false;
59+
}
5660

57-
_workParse = false;
5861
return string.IsNullOrWhiteSpace(log) ? "ok" : log;
5962
}
6063
#endregion

Controllers/CRON/NNMClubController.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,11 @@ async public Task<string> Parse(int page)
5656
}
5757
}
5858
catch { }
59+
finally
60+
{
61+
_workParse = false;
62+
}
5963

60-
_workParse = false;
6164
return string.IsNullOrWhiteSpace(log) ? "ok" : log;
6265
}
6366
#endregion

0 commit comments

Comments
 (0)