private static IEnumerable <Data.Models.AllData> FindEvents(DateTime beginning, DateUnit dateUnit, Data.Models.AllData _event) { switch (dateUnit) { default: case DateUnit.Day: return(FindEventsDayView(beginning, _event)); case DateUnit.Week: throw new NotImplementedException(); case DateUnit.Month: throw new NotImplementedException(); } }
private static IEnumerable <Data.Models.AllData> FindEventsDayView(DateTime beginning, Data.Models.AllData _event) { var result = new List <Data.Models.AllData>(); switch (_event.RepeatId) { case (int)Interval.Day: result.Add(_event); break; case (int)Interval.Week: if (beginning.DayOfWeek >= _event.TimeStart.DayOfWeek && beginning.DayOfWeek <= _event.TimeFinish.DayOfWeek) { result.Add(_event); } break; case (int)Interval.Month: if (beginning.Day >= _event.TimeStart.Day && beginning.Day <= _event.TimeFinish.Day) { result.Add(_event); } break; case (int)Interval.Year: if (beginning.Month >= _event.TimeStart.Month && beginning.Month <= _event.TimeFinish.Month && beginning.Day >= _event.TimeStart.Day && beginning.Day <= _event.TimeFinish.Day) { result.Add(_event); } break; } return(result); }
private static void AddTimeOffset(Data.Models.AllData _event, int timeOffset) { _event.TimeStart = _event.TimeStart.AddMinutes(-timeOffset); _event.TimeFinish = _event.TimeFinish.AddMinutes(-timeOffset); }