public static string EventType2Color(this DashboardEnums.eDbEventTypes type) { switch (type) { case DashboardEnums.eDbEventTypes.NewItem: return("#01aaff"); case DashboardEnums.eDbEventTypes.NewChapter: return("#b2e4e1"); case DashboardEnums.eDbEventTypes.NewFbStore: return("#d3eab2"); case DashboardEnums.eDbEventTypes.NewStore: return("#fea700"); case DashboardEnums.eDbEventTypes.NewMailchimp: return("#f9c1b4"); case DashboardEnums.eDbEventTypes.Custom: return("#d9c2ec"); default: return("#d9c2ec"); } }
public DashboardEventToken GetDashboardEventToken(int userId, DashboardEnums.eDbEventTypes type, DateRangeToken dates, string eventName = null) { var token = new DashboardEventToken { Uid = Guid.NewGuid() , Type = type , Name = eventName ?? Utils.GetEnumDescription(type) , Color = type.EventType2Color() , Enabled = true , IsStatic = false }; if (type == DashboardEnums.eDbEventTypes.Custom || type == DashboardEnums.eDbEventTypes.NewMailchimp) { return(token); } token.IsStatic = true; using (var context = new lfeAuthorEntities()) { var evenStats = context.tvf_DB_GetAuthorEventStats(userId).FirstOrDefault(); if (evenStats == null) { return(token); } DateTime?date = null; switch (type) { case DashboardEnums.eDbEventTypes.NewItem: var cd = evenStats.LastCoursePublish; var bd = evenStats.LastBundlePublish; if (cd == null && bd == null) { return(token); } date = (cd ?? DateTime.MinValue).CompareToDate(bd ?? DateTime.MinValue); break; case DashboardEnums.eDbEventTypes.NewChapter: date = evenStats.LastChaperCreated; break; case DashboardEnums.eDbEventTypes.NewFbStore: date = evenStats.LastChaperCreated; break; case DashboardEnums.eDbEventTypes.NewStore: date = evenStats.LastChaperCreated; break; } token.Date = date; token.Enabled = date != null && (((DateTime)date).Ticks >= dates.from.Ticks && ((DateTime)date).Ticks <= dates.to.Ticks); return(token); } }