Compare commits
2 Commits
08747baf51
...
1ddb840f4a
| Author | SHA1 | Date | |
|---|---|---|---|
| 1ddb840f4a | |||
| c001a4f2ca |
@@ -37,10 +37,10 @@
|
|||||||
"category": "Library",
|
"category": "Library",
|
||||||
"overview": "A cleaner for your stale media.",
|
"overview": "A cleaner for your stale media.",
|
||||||
"description": "Clean out the stale media from your library using scheduled tasks",
|
"description": "Clean out the stale media from your library using scheduled tasks",
|
||||||
"timestamp": "$(PluginTimestamp)",
|
"timestamp": "$(Timestamp)",
|
||||||
"targetAbi": "10.11.0",
|
"targetAbi": "10.11.0",
|
||||||
"owner": "T-Gander",
|
"owner": "T-Gander",
|
||||||
"version": "$(Version)"
|
"version": "$(AssemblyVersion)"
|
||||||
}'
|
}'
|
||||||
Overwrite="true"
|
Overwrite="true"
|
||||||
Encoding="utf-8" />
|
Encoding="utf-8" />
|
||||||
|
|||||||
@@ -93,13 +93,20 @@ public sealed class StaleMediaTask : IScheduledTask
|
|||||||
private List<BaseItem> GetStaleMovies(List<BaseItem> movies)
|
private List<BaseItem> GetStaleMovies(List<BaseItem> movies)
|
||||||
{
|
{
|
||||||
List<BaseItem> staleMovies = [];
|
List<BaseItem> staleMovies = [];
|
||||||
|
|
||||||
foreach (var movie in movies)
|
foreach (var movie in movies)
|
||||||
{
|
{
|
||||||
|
bool movieIsStale = movie.DateCreated > DateTime.Now.AddDays(-Configuration.StaleMediaCutoff);
|
||||||
var mostRecentUserData = movie.UserData.OrderByDescending(data => data.LastPlayedDate).First();
|
var mostRecentUserData = movie.UserData.OrderByDescending(data => data.LastPlayedDate).First();
|
||||||
|
|
||||||
if (mostRecentUserData.LastPlayedDate < DateTime.Now.AddDays(-Configuration.StaleMediaCutoff))
|
if (mostRecentUserData.LastPlayedDate < DateTime.Now.AddDays(-Configuration.StaleMediaCutoff))
|
||||||
{
|
{
|
||||||
staleMovies.Add(movie);
|
staleMovies.Add(movie);
|
||||||
}
|
}
|
||||||
|
else if (movieIsStale)
|
||||||
|
{
|
||||||
|
staleMovies.Add(movie);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return staleMovies;
|
return staleMovies;
|
||||||
@@ -160,6 +167,7 @@ public sealed class StaleMediaTask : IScheduledTask
|
|||||||
});
|
});
|
||||||
|
|
||||||
bool seasonHasUserData = episodes.Any(episode => episode.UserData.Count > 0);
|
bool seasonHasUserData = episodes.Any(episode => episode.UserData.Count > 0);
|
||||||
|
bool seasonIsStale = episodes.All(episode => episode.DateCreated > DateTime.Now.AddDays(-Configuration.StaleMediaCutoff));
|
||||||
|
|
||||||
if (seasonHasUserData)
|
if (seasonHasUserData)
|
||||||
{
|
{
|
||||||
@@ -174,6 +182,11 @@ public sealed class StaleMediaTask : IScheduledTask
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// Check for episodes that have gone unwatched for stale media cutoff
|
||||||
|
else if (seasonIsStale)
|
||||||
|
{
|
||||||
|
staleEpisodes.AddRange(episodes);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return staleEpisodes;
|
return staleEpisodes;
|
||||||
|
|||||||
Reference in New Issue
Block a user