diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-10-15 23:26:39 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-10-15 23:26:39 -0400 |
| commit | 6ca771cc7906ae6524f737ae9bf0bc1b916efb40 (patch) | |
| tree | 98d4c8fad6868d0836caec61446f2cffc4a232f8 /MediaBrowser.Controller | |
| parent | b889c31f5629b0d46fdd8f71d62f1546e18efc11 (diff) | |
move user image into profile settings
Diffstat (limited to 'MediaBrowser.Controller')
| -rw-r--r-- | MediaBrowser.Controller/Entities/DayOfWeekHelper.cs | 71 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/TV/Episode.cs | 41 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/User.cs | 3 | ||||
| -rw-r--r-- | MediaBrowser.Controller/MediaBrowser.Controller.csproj | 1 |
4 files changed, 95 insertions, 21 deletions
diff --git a/MediaBrowser.Controller/Entities/DayOfWeekHelper.cs b/MediaBrowser.Controller/Entities/DayOfWeekHelper.cs new file mode 100644 index 000000000..80ba206cc --- /dev/null +++ b/MediaBrowser.Controller/Entities/DayOfWeekHelper.cs @@ -0,0 +1,71 @@ +using MediaBrowser.Model.Configuration; +using System; +using System.Collections.Generic; + +namespace MediaBrowser.Controller.Entities +{ + public static class DayOfWeekHelper + { + public static List<DayOfWeek> GetDaysOfWeek(DynamicDayOfWeek day) + { + return GetDaysOfWeek(new List<DynamicDayOfWeek> { day }); + } + + public static List<DayOfWeek> GetDaysOfWeek(List<DynamicDayOfWeek> days) + { + var list = new List<DayOfWeek>(); + + if (days.Contains(DynamicDayOfWeek.Sunday) || + days.Contains(DynamicDayOfWeek.Weekend) || + days.Contains(DynamicDayOfWeek.Everyday)) + { + list.Add(DayOfWeek.Sunday); + } + + if (days.Contains(DynamicDayOfWeek.Saturday) || + days.Contains(DynamicDayOfWeek.Weekend) || + days.Contains(DynamicDayOfWeek.Everyday)) + { + list.Add(DayOfWeek.Saturday); + } + + if (days.Contains(DynamicDayOfWeek.Monday) || + days.Contains(DynamicDayOfWeek.Weekday) || + days.Contains(DynamicDayOfWeek.Everyday)) + { + list.Add(DayOfWeek.Monday); + } + + if (days.Contains(DynamicDayOfWeek.Monday) || + days.Contains(DynamicDayOfWeek.Weekday) || + days.Contains(DynamicDayOfWeek.Everyday)) + { + list.Add(DayOfWeek.Tuesday + ); + } + + if (days.Contains(DynamicDayOfWeek.Wednesday) || + days.Contains(DynamicDayOfWeek.Weekday) || + days.Contains(DynamicDayOfWeek.Everyday)) + { + list.Add(DayOfWeek.Wednesday); + } + + if (days.Contains(DynamicDayOfWeek.Thursday) || + days.Contains(DynamicDayOfWeek.Weekday) || + days.Contains(DynamicDayOfWeek.Everyday)) + { + list.Add(DayOfWeek.Thursday); + } + + if (days.Contains(DynamicDayOfWeek.Friday) || + days.Contains(DynamicDayOfWeek.Weekday) || + days.Contains(DynamicDayOfWeek.Everyday)) + { + list.Add(DayOfWeek.Friday); + } + + return list; + } + } +} diff --git a/MediaBrowser.Controller/Entities/TV/Episode.cs b/MediaBrowser.Controller/Entities/TV/Episode.cs index b95c7df9c..87074ca02 100644 --- a/MediaBrowser.Controller/Entities/TV/Episode.cs +++ b/MediaBrowser.Controller/Entities/TV/Episode.cs @@ -146,7 +146,27 @@ namespace MediaBrowser.Controller.Entities.TV [IgnoreDataMember] public Season Season { - get { return FindParent<Season>(); } + get + { + var season = FindParent<Season>(); + + // Episodes directly in series folder + if (season == null) + { + var series = FindParent<Series>(); + + if (ParentIndexNumber.HasValue) + { + var findNumber = ParentIndexNumber.Value; + + season = series.Children + .OfType<Season>() + .FirstOrDefault(i => i.IndexNumber.HasValue && i.IndexNumber.Value == findNumber); + } + } + + return season; + } } [IgnoreDataMember] @@ -237,25 +257,6 @@ namespace MediaBrowser.Controller.Entities.TV return season.Id; } - var seasonNumber = ParentIndexNumber; - - // Parent is a Series - if (seasonNumber.HasValue) - { - var series = Series; - - if (series != null) - { - season = series.Children.OfType<Season>() - .FirstOrDefault(i => i.IndexNumber.HasValue && i.IndexNumber.Value == seasonNumber.Value); - - if (season != null) - { - return season.Id; - } - } - } - return null; } } diff --git a/MediaBrowser.Controller/Entities/User.cs b/MediaBrowser.Controller/Entities/User.cs index 6ba8701f7..5d1a21387 100644 --- a/MediaBrowser.Controller/Entities/User.cs +++ b/MediaBrowser.Controller/Entities/User.cs @@ -287,7 +287,8 @@ namespace MediaBrowser.Controller.Entities var localTime = date.ToLocalTime(); - return localTime.DayOfWeek == schedule.DayOfWeek && IsWithinTime(schedule, localTime); + return DayOfWeekHelper.GetDaysOfWeek(schedule.DayOfWeek).Contains(localTime.DayOfWeek) && + IsWithinTime(schedule, localTime); } private bool IsWithinTime(AccessSchedule schedule, DateTime localTime) diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.csproj b/MediaBrowser.Controller/MediaBrowser.Controller.csproj index 7039a00eb..7e2892c6e 100644 --- a/MediaBrowser.Controller/MediaBrowser.Controller.csproj +++ b/MediaBrowser.Controller/MediaBrowser.Controller.csproj @@ -123,6 +123,7 @@ <Compile Include="Entities\Book.cs" /> <Compile Include="Configuration\IServerConfigurationManager.cs" /> <Compile Include="Entities\Audio\MusicGenre.cs" /> + <Compile Include="Entities\DayOfWeekHelper.cs" /> <Compile Include="Entities\Extensions.cs" /> <Compile Include="Entities\Game.cs" /> <Compile Include="Entities\GameGenre.cs" /> |
