public void ShouldReturnContenfulGroupHomepage() { var contenfulHomepage = new ContentfulGroupHomepageBuilder().Build(); var collection = new ContentfulCollection <ContentfulGroupHomepage>(); collection.Items = new List <ContentfulGroupHomepage> { contenfulHomepage }; var groupHomepage = new GroupHomepage("title", "slug", "metaDescription", "image-url.jpg", string.Empty, null, null, null, null, string.Empty, string.Empty, string.Empty, string.Empty, new NullEventBanner()); var builder = new QueryBuilder <ContentfulGroupHomepage>().ContentTypeIs("groupHomepage").Include(1); _client.Setup(o => o.GetEntries(It.Is <QueryBuilder <ContentfulGroupHomepage> >(q => q.Build() == builder.Build()), It.IsAny <CancellationToken>())).ReturnsAsync(collection); _groupHomepageContentfulFactory.Setup(o => o.ToModel(contenfulHomepage)).Returns(groupHomepage); var response = AsyncTestHelper.Resolve(_repository.GetGroupHomepage()); var homepage = response.Get <GroupHomepage>(); homepage.BackgroundImage.Should().Be(contenfulHomepage.BackgroundImage.File.Url); homepage.Title.Should().Be(contenfulHomepage.Title); homepage.Slug.Should().Be(contenfulHomepage.Slug); }
public GroupHomepageFactoryTest() { _groupHomepageFactory = new GroupHomepageFactory(_simpleTagParserContainerMock.Object, _markdownWrapperMock.Object); _groupHomepage = new GroupHomepage { Title = Title, BackgroundImage = "background image", FeaturedGroupsHeading = string.Empty, FeaturedGroups = new List <Group>(), FeaturedGroupsCategory = new GroupCategory(), FeaturedGroupsSubCategory = new GroupSubCategory(), Alerts = new List <Alert>(), Body = "body", SecondaryBody = "secondary body", EventBanner = new EventBanner("title", "teaser", "icon", "link") }; _markdownWrapperMock.Setup(o => o.ConvertToHtml(Body)).Returns(Body); _simpleTagParserContainerMock.Setup(o => o.ParseAll(Body, It.IsAny <string>(), It.IsAny <bool>())).Returns(Body); }
public void AddEditGroupHomepageInfoRecord(GroupHomepage ObjG, string Content, int languageId) { var RecExist = db.GroupHomepageInfoes.Where(x => x.GroupHomepageID == ObjG.GroupHomepageID && x.LanguageId == languageId).FirstOrDefault(); if (RecExist != null) { RecExist.HomePageContent = Content; RecExist.GroupHomepageID = ObjG.GroupHomepageID; RecExist.DateLastModified = DateTime.Now; RecExist.LastModifiedById = Convert.ToInt64(Session["UserID"]); db.SaveChanges(); } else { GroupHomepageInfo Objnew = new GroupHomepageInfo(); Objnew.HomePageContent = Content; Objnew.GroupHomepageID = ObjG.GroupHomepageID; Objnew.LanguageId = languageId; Objnew.CreationDate = DateTime.Now; Objnew.CreatedById = Convert.ToInt64(Session["UserID"]); db.GroupHomepageInfoes.Add(Objnew); db.SaveChanges(); } }
public virtual ProcessedGroupHomepage Build(GroupHomepage groupHomepage) { var body = _tagParserContainer.ParseAll(groupHomepage.Body); var bodyHtml = _markdownWrapper.ConvertToHtml(body ?? string.Empty); var secondaryBody = _tagParserContainer.ParseAll(groupHomepage.SecondaryBody); var secondaryBodyHtml = _markdownWrapper.ConvertToHtml(secondaryBody ?? string.Empty); return(new ProcessedGroupHomepage( groupHomepage.Title, groupHomepage.MetaDescription, groupHomepage.BackgroundImage, groupHomepage.FeaturedGroupsHeading, groupHomepage.FeaturedGroups, groupHomepage.FeaturedGroupsCategory, groupHomepage.FeaturedGroupsSubCategory, groupHomepage.Alerts, groupHomepage.BodyHeading, bodyHtml, groupHomepage.SecondaryBodyHeading, secondaryBodyHtml, groupHomepage.EventBanner )); }
public ActionResult GroupHomePage(GroupHomepageLocal Obj) { if (ModelState.IsValid) { string fileName = ""; var GHomePage = db.GroupHomepages.Where(x => x.GroupID == Obj.GroupId).FirstOrDefault(); if (GHomePage == null) // create new { GroupHomepage Objnew = new GroupHomepage(); #region // Process Course file Save to server folders if (Request.Files.Count > 0) { foreach (string file in Request.Files) { HttpPostedFileBase hpf = Request.Files[file]; if (hpf.FileName != "") { fileName = hpf.FileName.Split('\\').Last().ToString(); if (Common.IsValidFileName(hpf.FileName.Split('\\').Last().ToString(), true) == false) { ModelState.AddModelError("UploadFileUrl", "error"); //PrepareAvailableLangaugeModel(activity, false); return(View(Obj)); } Guid g = Guid.NewGuid(); Objnew.GroupID = Obj.GroupId; Objnew.ImagePath = ""; Objnew.ImageLocation = Obj.ImagePosition; Objnew.CreationDate = DateTime.Now; Objnew.CreatedById = Convert.ToInt64(Session["UserID"]); db.GroupHomepages.Add(Objnew); db.SaveChanges(); var absImgDir = Path.Combine(Server.MapPath("~") + @"\Content\Uploads\GroupHomepage\", "_" + Objnew.GroupHomepageID.ToString()); Directory.CreateDirectory(absImgDir); var relCourseDir = Path.Combine(@"\Content\Uploads\GroupHomepage\", "_" + Objnew.GroupHomepageID.ToString()); hpf.SaveAs(Path.Combine(absImgDir, @fileName)); Objnew.ImagePath = Path.Combine(relCourseDir, @fileName); db.SaveChanges(); Obj.UploadFileUrl = Objnew.ImagePath; AddEditGroupHomepageInfoRecord(Objnew, Obj.PageContent, 1); } } } #endregion } else { if (Request.Files.Count > 0) { foreach (string file in Request.Files) { HttpPostedFileBase hpf = Request.Files[file]; if (hpf.FileName != "") { fileName = hpf.FileName.Split('\\').Last().ToString(); if (Common.IsValidFileName(hpf.FileName.Split('\\').Last().ToString(), true) == false) { ModelState.AddModelError("UploadFileUrl", "error"); //PrepareAvailableLangaugeModel(activity, false); return(View(Obj)); } var absImgDir = Path.Combine(Server.MapPath("~") + @"\Content\Uploads\GroupHomepage\", "_" + GHomePage.GroupHomepageID.ToString()); if (!Directory.Exists(absImgDir)) { Directory.CreateDirectory(absImgDir); } var relCourseDir = Path.Combine(@"\Content\Uploads\GroupHomepage\", "_" + GHomePage.GroupHomepageID.ToString()); hpf.SaveAs(Path.Combine(absImgDir, @fileName)); GHomePage.ImagePath = Path.Combine(relCourseDir, @fileName); } } } GHomePage.ImageLocation = Obj.ImagePosition; GHomePage.CreationDate = DateTime.Now; GHomePage.CreatedById = Convert.ToInt64(Session["UserID"]); db.SaveChanges(); Obj.UploadFileUrl = GHomePage.ImagePath; AddEditGroupHomepageInfoRecord(GHomePage, Obj.PageContent, 1); } } else { return(View(Obj)); } if (Obj.IsPreview == true) { return(RedirectToAction("GroupHomePage", "Groups", new { id = Obj.GroupId, @Preview = "y" })); } else { return(RedirectToAction("GroupHomePage", "Groups", new { id = Obj.GroupId })); } //return View(Obj); }