aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Entities
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-10-15 23:26:39 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-10-15 23:26:39 -0400
commit6ca771cc7906ae6524f737ae9bf0bc1b916efb40 (patch)
tree98d4c8fad6868d0836caec61446f2cffc4a232f8 /MediaBrowser.Controller/Entities
parentb889c31f5629b0d46fdd8f71d62f1546e18efc11 (diff)
move user image into profile settings
Diffstat (limited to 'MediaBrowser.Controller/Entities')
-rw-r--r--MediaBrowser.Controller/Entities/DayOfWeekHelper.cs71
-rw-r--r--MediaBrowser.Controller/Entities/TV/Episode.cs41
-rw-r--r--MediaBrowser.Controller/Entities/User.cs3
3 files changed, 94 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)