diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-07-03 22:22:57 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-07-03 22:22:57 -0400 |
| commit | 7fa9b14f56eabbb06e38726879b3cddc47b8e8fb (patch) | |
| tree | 68c33977dc4f71cb3decae62c071887b9f914fc1 /MediaBrowser.Server.Implementations/Sorting/AirTimeComparer.cs | |
| parent | 59dc591f66c20b6417aa2baa9503a154585386f9 (diff) | |
fixes #762 - Marking unwatched doesn't update display
Diffstat (limited to 'MediaBrowser.Server.Implementations/Sorting/AirTimeComparer.cs')
| -rw-r--r-- | MediaBrowser.Server.Implementations/Sorting/AirTimeComparer.cs | 33 |
1 files changed, 28 insertions, 5 deletions
diff --git a/MediaBrowser.Server.Implementations/Sorting/AirTimeComparer.cs b/MediaBrowser.Server.Implementations/Sorting/AirTimeComparer.cs index 46c3df07b..7e6a252cd 100644 --- a/MediaBrowser.Server.Implementations/Sorting/AirTimeComparer.cs +++ b/MediaBrowser.Server.Implementations/Sorting/AirTimeComparer.cs @@ -26,13 +26,36 @@ namespace MediaBrowser.Server.Implementations.Sorting /// <returns>System.String.</returns> private DateTime GetValue(BaseItem x) { - var series = (x as Series) ?? x.FindParent<Series>(); + var series = x as Series; - DateTime result; - if (series != null && DateTime.TryParse(series.AirTime, out result)) + if (series == null) { - return result; - } + var season = x as Season; + + if (season != null) + { + series = season.Series; + } + else + { + var episode = x as Episode; + + if (episode != null) + { + series = episode.Series; + } + } + } + + if (series != null) + { + DateTime result; + if (DateTime.TryParse(series.AirTime, out result)) + { + return result; + } + } + return DateTime.MinValue; } |
