public ArticlesController(IFeatureRepository featureRepository, IBlogPostRepository blogPostRepository, IUserRepository userRepository) : base(userRepository) { _blogPostRepository = blogPostRepository; _featureRepository = featureRepository; _featureService = new FeatureService(_featureRepository); }
private void SetViewBag(Blog blog, ViewResult viewResult, User user) { if (blog == null) { blog = SetupNewBlog(); } _featureService = new FeatureService(_featureRepository); //var blogposts = _blogPostRepository.GetAll().Where(o => o.Published).ToList(); //var archiveModel = new ArchiveModel(); //var years = blogposts.Select(o => o.DateCreated.Year).Distinct().Select(i => new Year { Name = i }); //foreach (var year in years) //{ // var months = // blogposts.Where(o => o.DateCreated.Year == year.Name).Select(i => i.DateCreated.Month).Distinct(). // Select(y => new Month // { // Nr = y, // Name = new DateTime(DateTime.Now.Year, y, 1).ToString("MMM") // }); // foreach (var month in months) // { // var posts = // blogposts.Where(o => o.DateCreated.Year == year.Name && o.DateCreated.Month == month.Nr); // month.Posts.AddRange(posts.Select(o => new Article { Title = o.Title, Id = o.Id })); // month.Count = posts.Count(); // year.Months.Add(month); // } // year.Count = months.Count(); // archiveModel.Years.Add(year); //} viewResult.ViewBag.Title = blog.Name; viewResult.ViewBag.Logo = blog.LogoUrl; viewResult.ViewBag.Name = blog.Name; viewResult.ViewBag.Description = blog.Description; viewResult.ViewBag.Phone = blog.Phone; viewResult.ViewBag.Fax = blog.Fax; viewResult.ViewBag.Address = blog.Address.AddressLine; viewResult.ViewBag.Post = blog.Address.Zip + " " + blog.Address.City; viewResult.ViewBag.FullAddress = blog.Address.AddressLine + ", " + blog.Address.Zip + " " + blog.Address.City; viewResult.ViewBag.Email = blog.Email; viewResult.ViewBag.Lat = blog.GeoPoint.Latitude; viewResult.ViewBag.Lon = blog.GeoPoint.Longitude; viewResult.ViewBag.Menu = blog.Menu; viewResult.ViewBag.StyleSheet = blog.StyleSheet; viewResult.ViewBag.GoogleAnalyticsId = blog.GoogleAnalyticsId; viewResult.ViewBag.EnableNewsletter = _featureService.EnableNewsletter.IsEnabledForUser(user); viewResult.ViewBag.EnableTaggableContent = _featureService.EnableTaggableContent.IsEnabledForUser(user); viewResult.ViewBag.EnableUserLogin = _featureService.EnableUserLogin.IsEnabledForUser(user); viewResult.ViewBag.EnableSearch = _featureService.EnableSearch.IsEnabledForUser(user); //ViewBag.ShowContactinfoInFooter = blog.ShowContactinfoInFooter; //ViewBag.Tags = // blogposts.SelectMany(o => o.Tags).GroupBy(i => i).Select( // y => new TagModel { Name = y.Key, Count = y.Count() }); //ViewBag.Archive = archiveModel; //ViewBag.UserIsEditor = LoggedInUser != null && LoggedInUser.Groups.Any(o => o == "Admin"); viewResult.ViewBag.AllowedHtmlElements = "<h1><h2><h3><h4><a><ul><li><strong><b><u><i><p><img>"; }