public CalendarModel(BloggingContext db, DefaultModel pageModel) : base(pageModel) { if (db.Posts.Count() != 0) { LastPostDate = (from posts in db.Posts orderby posts.Time descending where (from t in posts.Tags select t.Tag.ToUpper()).Contains("UPDATE") == false && posts.Time != null select posts.Time.Value).First(); Now = LastPostDate; } else { Now = DateTime.Now; } FirstOfThisMonth = new DateTime(Now.Year, Now.Month, 1); DaysInThisMonth = DateTime.DaysInMonth(Now.Year, Now.Month); var FirstDayOfMonth = FirstOfThisMonth.DayOfWeek; GetDatesWithPostsThisMonth(db); Dictionary<int, DateInfo> firstRow = StartFirstRow(FirstDayOfMonth); CompleteFirstRow(firstRow); Dates = new List<Dictionary<int, DateInfo>>(); Dates.Add(firstRow); while (DateCounter <= DaysInThisMonth) { Dates.Add(FullRow()); } AddExtraNextMonthRow(Dates); }
public ModuleModel(DefaultModel pageModel) { this.PageModel = pageModel; }