diff --git a/src/Enums/SeekPosition.cs b/src/Enums/SeekPosition.cs deleted file mode 100644 index 57195ff..0000000 --- a/src/Enums/SeekPosition.cs +++ /dev/null @@ -1,23 +0,0 @@ -namespace moment.net.Enums -{ - /// - /// Static class as placeholder for an seek position enumerator - /// Implemented this way for convinience => SeekPosition.Day/ SeekPosition.Month - /// - - public enum Months - { - Jan, - Feb, - Mar, - Apr, - May, - Jun, - Jul, - Aug, - Sep, - Oct, - Nov, - Dec, - } -} \ No newline at end of file diff --git a/src/FinalSpan.cs b/src/FinalSpan.cs index 9a2fde3..91d8e40 100644 --- a/src/FinalSpan.cs +++ b/src/FinalSpan.cs @@ -7,34 +7,36 @@ namespace moment.net public class FinalSpan { private DateTime _dt; - private DayOfWeek _dow; + private readonly DayOfWeek _dayOfWeek; public FinalSpan(DateTime dateTime, DayOfWeek dayOfWeek) { _dt = dateTime; - _dow = dayOfWeek; + _dayOfWeek = dayOfWeek; } public DateTime InMonth() { var m = _dt.Month; // only loop through the last seven days of the month - _dt = new DateTime(_dt.Year,_dt.Month, (DateTime.DaysInMonth(_dt.Year, _dt.Month)-7), 0, 0, 0, _dt.Kind); + _dt = new DateTime(_dt.Year, _dt.Month, (DateTime.DaysInMonth(_dt.Year, _dt.Month) - 7), 0, 0, 0, _dt.Kind); while (_dt.Month == m) { - if(_dt.DayOfWeek == _dow) + if (_dt.DayOfWeek == _dayOfWeek) { return _dt; } + _dt = _dt.AddDays(1); } + return DateTime.MaxValue; } public DateTime InYear() { var dt = new DateTime(_dt.Year, 12, (DateTime.DaysInMonth(_dt.Year, 12) - 7), 0, 0, 0, _dt.Kind); - return new FinalSpan(dt, _dow).InMonth(); + return new FinalSpan(dt, _dayOfWeek).InMonth(); } } }