1
0
mirror of https://github.com/Radarr/Radarr.git synced 2026-04-23 22:25:14 -04:00

Min availability (#816)

* availability specification to prevent downloading titles before their
release

* pull inCinamas status out of js handlebars and set it in SkyHook

* minor code improvement

* add incinemas to footer

* typo

* another typo

* release date handling

* still print cinema date out for announced titles

* revert a minor change from before since its unnecessary

* early implementation of minimumAvailability --> when does radarr
consider a movie "available" should be specified by user
default to "Physical release?"

this isn't functional yet, but it has a skeleton + comments. I dont
know how to have the minimumavailability attribute default to something
or to have it actually populate the Movieinfo object
could use some help with that

* adding another comment for another location that might need to be
updated to handle minimumAvailability

* the implementation is now function;
however, i still need to specify default values for minimumAvailability

* missed these changes in the previous commit

* fix rounded corners on new field in editmovie dialog

* add minimum availability specification to the addMovie page

* minor adjustment from last commit

* handle the case where minimumavailability has never yet been set
nullstring.. if its never been set, default to Released (Physical/Web)
represented by integer value  3

* minAvailability specification on NetImport lists

* add support for min availability to the movie editor

* use enum MovieStatusType values directly

makes for cleaner code

* need to fix up the migration forgot in last commit

* cleaning up code, proper case

* erroneous code added in this feature needed to be removed

* update "Wanted" page to take into account minimumAvailability

* implement preDB minimumAvailability as default.. behaves same as
Physical/Web a few comments with TODO for when preDB is implemented

* minor adjustment

* remove some unused code (leave commented for now)

* improve code for minimumavailability and add option for
availabilitydelay (but doesnt do anything yet)

* improve isAvailable method

* clean up and fix helper info on indexer configuration page

* add buttons in Wanted/Missing view
This commit is contained in:
geogolem
2017-02-23 00:03:48 -05:00
committed by Devin Buhl
parent 731e607666
commit 140a220340
38 changed files with 446 additions and 81 deletions
+22 -1
View File
@@ -34,10 +34,31 @@ namespace NzbDrone.Api.Wanted
{
pagingSpec.FilterExpression = v => v.Monitored == false;
}
else
else if (pagingResource.FilterKey == "monitored" && pagingResource.FilterValue == "true")
{
pagingSpec.FilterExpression = v => v.Monitored == true;
}
else if (pagingResource.FilterKey == "moviestatus" && pagingResource.FilterValue == "available")
{
//TODO: might need to handle PreDB here
pagingSpec.FilterExpression = v =>
(v.MinimumAvailability == MovieStatusType.Released && v.Status >= MovieStatusType.Released) ||
(v.MinimumAvailability == MovieStatusType.InCinemas && v.Status >= MovieStatusType.InCinemas) ||
(v.MinimumAvailability == MovieStatusType.Announced && v.Status >= MovieStatusType.Announced) ||
(v.MinimumAvailability == MovieStatusType.PreDB && v.Status >= MovieStatusType.Released);
}
else if (pagingResource.FilterKey == "moviestatus" && pagingResource.FilterValue == "announced")
{
pagingSpec.FilterExpression = v => v.Status == MovieStatusType.Announced;
}
else if (pagingResource.FilterKey == "moviestatus" && pagingResource.FilterValue == "incinemas")
{
pagingSpec.FilterExpression = v => v.Status == MovieStatusType.InCinemas;
}
else if (pagingResource.FilterKey == "moviestatus" && pagingResource.FilterValue == "released")
{
pagingSpec.FilterExpression = v => v.Status == MovieStatusType.Released;
}
var resource = ApplyToPage(_movieService.MoviesWithoutFiles, pagingSpec, v => MapToResource(v, true));