Enhance display of denied TV shows

This commit is contained in:
sephrat 2022-04-07 18:43:13 +02:00
parent d933196cf0
commit 0523c9a3f1
7 changed files with 20 additions and 1 deletions

View file

@ -308,6 +308,9 @@ namespace Ombi.Core.Engine.V2
item.PartlyAvailable = oldModel.PartlyAvailable;
item.Requested = oldModel.Requested;
item.Available = oldModel.Available;
item.Denied = oldModel.Denied;
item.DeniedReason = oldModel.DeniedReason;
item.FullyDenied = oldModel.FullyDenied;
item.Approved = oldModel.Approved;
item.SeasonRequests = oldModel.SeasonRequests;
item.RequestId = oldModel.RequestId;

View file

@ -56,6 +56,7 @@ namespace Ombi.Core.Models.Search
public bool FullyAvailable { get; set; }
// We only have some episodes
public bool PartlyAvailable { get; set; }
public bool FullyDenied { get; set; }
public override RequestType Type => RequestType.TvShow;
public string BackdropPath { get; set; }

View file

@ -48,6 +48,7 @@ namespace Ombi.Core.Models.Search.V2
public bool FullyAvailable { get; set; }
// We only have some episodes
public bool PartlyAvailable { get; set; }
public bool FullyDenied { get; set; }
public override RequestType Type => RequestType.TvShow;
}

View file

@ -62,6 +62,7 @@ namespace Ombi.Core.Rule.Rules.Search
request.Requested = true;
request.Approved = tvRequests.ChildRequests.Any(x => x.Approved);
request.Denied = tvRequests.ChildRequests.Any(x => x.Denied ?? false);
request.DeniedReason = tvRequests.ChildRequests.FirstOrDefault(x => x.Denied == true).DeniedReason;
// Let's modify the seasonsrequested to reflect what we have requested...
foreach (var season in request.SeasonRequests)
@ -100,6 +101,11 @@ namespace Ombi.Core.Rule.Rules.Search
request.PartlyAvailable = true;
}
if (request.SeasonRequests.Any() && request.SeasonRequests.All(x => x.Episodes.All(e => e.Denied ?? false)))
{
request.FullyDenied = true;
}
var hasUnairedRequests = request.SeasonRequests.Any() && request.SeasonRequests.All(x => x.Episodes.Any(e => e.AirDate >= DateTime.UtcNow));
if (request.FullyAvailable)