public void LayoutAreaController_AddGet_ShouldSetTheLayoutIdToTheValueFromTheConstructor() { var layout = new Layout(); PartialViewResult partialViewResult = _layoutAreaController.Add(layout); partialViewResult.Model.As<LayoutArea>().Layout.Should().Be(layout); }
public void LayoutController_EditGet_ShouldReturnLayoutAsViewModel() { var layout = new Layout {Id = 1}; var result = _layoutController.Edit_Get(layout) as ViewResult; result.Model.Should().Be(layout); }
public void LayoutController_EditGet_ShouldReturnAViewResult() { var layout = new Layout {Id = 1}; ActionResult result = _layoutController.Edit_Get(layout); result.Should().BeOfType<ViewResult>(); }
public void LayoutController_AddPost_ShouldCallSaveDocument() { var layout = new Layout(); _layoutController.Add(layout); A.CallTo(() => _documentService.AddDocument(layout)).MustHaveHappened(Repeated.Exactly.Once); }
public LayoutArea GetArea(Layout layout, string name) { return _session.QueryOver<LayoutArea>() .Where(x => x.Layout == layout && x.AreaName == name) .Fetch(area => area.Widgets).Eager .TransformUsing(Transformers.DistinctRootEntity) .SingleOrDefault(); }
public void LayoutController_AddGet_ShouldSetParentOfModelToParentInMethod() { var parent = new Layout {Id = 1}; A.CallTo(() => _documentService.GetDocument<Layout>(1)).Returns(parent); var actionResult = _layoutController.Add_Get(1) as ViewResult; actionResult.Model.As<Layout>().Parent.Should().Be(parent); }
public void LayoutAreaAdminService_SaveArea_IfLayoutIsSetAddLayoutAreaToLayoutAreasList() { var layout = new Layout(); var layoutArea = new LayoutArea{Layout = layout}; _layoutAreaAdminService.SaveArea(layoutArea); layout.LayoutAreas.Should().Contain(layoutArea); }
public void LayoutController_AddPost_ShouldRedirectToView() { var layout = new Layout {Id = 1}; var result = _layoutController.Add(layout) as RedirectToRouteResult; result.RouteValues["action"].Should().Be("Edit"); result.RouteValues["id"].Should().Be(1); }
public void LayoutAreaAdminService_GetAreaWhereItDoesNotExist_ShouldReturnNull() { var layoutAreaService = _layoutAreaAdminService; var layout = new Layout {Name = "Layout"}; Session.Transact(session => session.SaveOrUpdate(layout)); var loadedArea = layoutAreaService.GetArea(layout, "Area.Name"); loadedArea.Should().BeNull(); }
public void LayoutAreaController_AddPost_ShouldCallSaveArea() { var layoutArea = new LayoutArea(); var layout = new Layout { Id = 1 }; layoutArea.Layout = layout; _layoutAreaController.Add(layoutArea); A.CallTo(() => _layoutAreaAdminService.SaveArea(layoutArea)).MustHaveHappened(); }
public ActionResult Add_Get(int? id) { //Build list var model = new Layout { Parent = id.HasValue ? _documentService.GetDocument<Layout>(id.Value) : null }; return View(model); }
public IEnumerable<SelectListItem> GetValidParents(Layout doc) { IList<Layout> potentialParents = _session.QueryOver<Layout>().Cacheable().List<Layout>(); List<SelectListItem> result = potentialParents.Distinct() .Where(page => page.Id != doc.Id) .OrderBy(x => x.Name) . BuildSelectItemList(page => page.Name, page => page.Id.ToString(), webpage1 => doc.Parent != null && doc.ParentId == webpage1.Id, emptyItem: null); return result; }
public void LayoutAreaController_AddPost_ShouldRedirectToEditLayout() { var layoutArea = new LayoutArea(); var layout = new Layout { Id = 1 }; layoutArea.Layout = layout; ActionResult actionResult = _layoutAreaController.Add(layoutArea); actionResult.As<RedirectToRouteResult>().RouteValues["action"].Should().Be("Edit"); actionResult.As<RedirectToRouteResult>().RouteValues["controller"].Should().Be("Layout"); actionResult.As<RedirectToRouteResult>().RouteValues["id"].Should().Be(1); }
public void SiteSettingsOptionGenerator_GetLayoutOptions_IncludesLayouts() { var siteSettingsOptionGenerator = new SiteSettingsOptionGenerator(); var layout = new Layout { Name = "Test Layout", Site = CurrentSite }; Session.Transact(session => session.Save(layout)); var errorPageOptions = siteSettingsOptionGenerator.GetLayoutOptions(Session, -1); errorPageOptions.Should().HaveCount(1); errorPageOptions[0].Text.Should().Be("Test Layout"); errorPageOptions[0].Value.Should().Be(layout.Id.ToString()); }
public void LayoutAreaAdminService_GetArea_GetsTheAreaByName() { var layoutAreaService = _layoutAreaAdminService; var layout = new Layout {Name = "Layout"}; var layoutArea = new LayoutArea {Layout = layout, AreaName = "Area.Name"}; Session.Transact(session => { session.SaveOrUpdate(layout); session.SaveOrUpdate(layoutArea); }); var loadedArea = layoutAreaService.GetArea(layout, "Area.Name"); loadedArea.Should().BeSameAs(layoutArea); }
public void Setup() { _session.Transact(session => { var baseLayout = new Layout { Name = "Base Layout", UrlSegment = "_BaseLayout", LayoutAreas = new List<LayoutArea>() }; session.Save(baseLayout); var siteSettings = _configurationProvider.GetSiteSettings<SiteSettings>(); siteSettings.DefaultLayoutId = baseLayout.Id; _configurationProvider.SaveSettings(siteSettings); List<LayoutArea> layoutAreas = GetDefaultAreas(baseLayout); layoutAreas.ForEach(area => session.Save(area)); var layoutTwoColumn = new Layout { Parent = baseLayout, Name = "Two Column" }; session.Save(layoutTwoColumn); var layoutAreasTwoColumn = new List<LayoutArea> { new LayoutArea { AreaName = "Right Column", Layout = layoutTwoColumn } }; foreach (LayoutArea layoutArea in layoutAreasTwoColumn) session.Save(layoutArea); AddWidgets(layoutAreas).ForEach(widget => session.Save(widget)); }); }
private List<LayoutArea> GetDefaultAreas(Layout baseLayout) { var layoutAreas = new List<LayoutArea> { new LayoutArea { AreaName = "Main Navigation", CreatedOn = CurrentRequestData.Now, Layout = baseLayout, }, new LayoutArea { AreaName = "Header Left", CreatedOn = CurrentRequestData.Now, Layout = baseLayout, }, new LayoutArea { AreaName = "Header Right", CreatedOn = CurrentRequestData.Now, Layout = baseLayout, }, new LayoutArea { AreaName = "Before Content", CreatedOn = CurrentRequestData.Now, Layout = baseLayout, }, new LayoutArea { AreaName = "After Content", CreatedOn = CurrentRequestData.Now, Layout = baseLayout, }, new LayoutArea { AreaName = "Footer", CreatedOn = CurrentRequestData.Now, Layout = baseLayout, } }; return layoutAreas; }
private IEnumerable<Layout> GetLayoutCopies(Site @from, Site to, SiteCloneContext siteCloneContext, Layout fromParent = null, Layout toParent = null) { var queryOver = _session.QueryOver<Layout>().Where(layout => layout.Site.Id == @from.Id); queryOver = fromParent == null ? queryOver.Where(layout => layout.Parent == null) : queryOver.Where(layout => layout.Parent.Id == fromParent.Id); var layouts = queryOver.List(); foreach (var layout in layouts) { var copy = layout.GetCopyForSite(to); siteCloneContext.AddEntry(layout, copy); copy.LayoutAreas = layout.LayoutAreas.Select(area => { var areaCopy = area.GetCopyForSite(to); siteCloneContext.AddEntry(area, areaCopy); areaCopy.Layout = copy; areaCopy.Widgets = area.Widgets .Where(widget => widget.Webpage == null) .Select(widget => { var widgetCopy = widget.GetCopyForSite(to); siteCloneContext.AddEntry(widget, widgetCopy); widgetCopy.LayoutArea = areaCopy; return widgetCopy; }) .ToList(); return areaCopy; }).ToList(); copy.Parent = toParent; yield return copy; foreach (var child in GetLayoutCopies(@from, to, siteCloneContext, layout, copy)) { yield return child; } } }
public LayoutModel Setup(MediaModel mediaModel) { var layoutModel = new LayoutModel(); //base layout var baseLayout = new Layout { Name = "Base Ecommerce Layout", UrlSegment = "_BaseEcommerceLayout", LayoutAreas = new List<LayoutArea>(), }; _documentService.AddDocument(baseLayout); //ecommerce main layout var eCommerceLayout = new Layout { Name = "Ecommerce Layout", UrlSegment = "_EcommerceLayout", LayoutAreas = new List<LayoutArea>(), Parent = baseLayout }; var ecommerceLayoutArea = new List<LayoutArea> { new LayoutArea {AreaName = "Header Left", Layout = eCommerceLayout}, new LayoutArea {AreaName = "Header Middle", Layout = eCommerceLayout}, new LayoutArea {AreaName = "Header Right", Layout = eCommerceLayout}, new LayoutArea {AreaName = "User Links", Layout = eCommerceLayout}, new LayoutArea {AreaName = "Navigation", Layout = eCommerceLayout}, new LayoutArea {AreaName = "Before Content", Layout = eCommerceLayout}, new LayoutArea {AreaName = "After Content", Layout = eCommerceLayout}, new LayoutArea {AreaName = "Footer Area 1", Layout = eCommerceLayout}, new LayoutArea {AreaName = "Footer Area 2", Layout = eCommerceLayout}, new LayoutArea {AreaName = "Footer Area 3", Layout = eCommerceLayout}, new LayoutArea {AreaName = "Footer Area 4", Layout = eCommerceLayout} }; _documentService.AddDocument(eCommerceLayout); foreach (LayoutArea area in ecommerceLayoutArea) _layoutAreaAdminService.SaveArea(area); layoutModel.EcommerceLayout = eCommerceLayout; var homeLayout = new Layout { Name = "Home Layout", UrlSegment = "_HomeLayout", LayoutAreas = new List<LayoutArea>(), Parent = eCommerceLayout }; var homeLayoutAreas = new List<LayoutArea> { new LayoutArea {AreaName = "Home After Content", Layout = homeLayout}, new LayoutArea {AreaName = "Teaser1", Layout = homeLayout}, new LayoutArea {AreaName = "Teaser2", Layout = homeLayout}, new LayoutArea {AreaName = "Teaser3", Layout = homeLayout}, new LayoutArea {AreaName = "Teaser4", Layout = homeLayout} }; _documentService.AddDocument(homeLayout); foreach (LayoutArea area in homeLayoutAreas) _layoutAreaAdminService.SaveArea(area); layoutModel.HomeLayout = homeLayout; //checkout layout var checkoutLayout = new Layout { Name = "Checkout Layout", UrlSegment = "_CheckoutLayout", LayoutAreas = new List<LayoutArea>(), Parent = eCommerceLayout }; var checkoutLayoutAreas = new List<LayoutArea> { new LayoutArea {AreaName = "Checkout Header Left", Layout = checkoutLayout}, new LayoutArea {AreaName = "Checkout Header Middle", Layout = checkoutLayout}, new LayoutArea {AreaName = "Checkout Header Right", Layout = checkoutLayout}, new LayoutArea {AreaName = "Checkout Footer Left", Layout = checkoutLayout}, new LayoutArea {AreaName = "Checkout Footer Right", Layout = checkoutLayout} }; _documentService.AddDocument(checkoutLayout); foreach (LayoutArea area in checkoutLayoutAreas) _layoutAreaAdminService.SaveArea(area); layoutModel.CheckoutLayout = checkoutLayout; //product layout var productLayout = new Layout { Name = "Product Layout", UrlSegment = "_ProductLayout", LayoutAreas = new List<LayoutArea>(), Parent = eCommerceLayout }; var productLayoutAreas = new List<LayoutArea> { new LayoutArea {AreaName = "Below Product Price", Layout = productLayout}, new LayoutArea {AreaName = "Below Add to cart", Layout = productLayout}, new LayoutArea {AreaName = "Below Product Information", Layout = productLayout}, new LayoutArea {AreaName = "Before Product Content", Layout = productLayout}, new LayoutArea {AreaName = "After Product Content", Layout = productLayout} }; _documentService.AddDocument(productLayout); foreach (LayoutArea area in productLayoutAreas) _layoutAreaAdminService.SaveArea(area); layoutModel.ProductLayout = productLayout; //category/search layout var searchLayout = new Layout { Name = "Search Layout", UrlSegment = "_SearchLayout", LayoutAreas = new List<LayoutArea>(), Parent = eCommerceLayout }; var searchLayoutAreas = new List<LayoutArea> { new LayoutArea {AreaName = "Before Filters", Layout = searchLayout}, new LayoutArea {AreaName = "After Filters", Layout = searchLayout} }; _documentService.AddDocument(searchLayout); foreach (LayoutArea area in searchLayoutAreas) _layoutAreaAdminService.SaveArea(area); layoutModel.SearchLayout = searchLayout; var contentLayout = new Layout { Name = "Content Layout", UrlSegment = "_ContentLayout", LayoutAreas = new List<LayoutArea>(), Parent = eCommerceLayout }; _documentService.AddDocument(contentLayout); layoutModel.ContentLayout = contentLayout; // UserAccount var userAccountLayout = new Layout { Name = "User Account Layout", UrlSegment = "_UserAccountLayout", LayoutAreas = new List<LayoutArea>(), Parent = eCommerceLayout }; var userAccountAreas = new List<LayoutArea> { new LayoutArea {AreaName = "Right Column", Layout = userAccountLayout} }; _documentService.AddDocument(userAccountLayout); foreach (LayoutArea area in userAccountAreas) _layoutAreaAdminService.SaveArea(area); layoutModel.UserAccountLayout = userAccountLayout; //Page templates var homeTemplate = new PageTemplate { Name = "Home Page", PageType = typeof (TextPage).FullName, UrlGeneratorType = typeof(DefaultWebpageUrlGenerator).FullName, Layout = homeLayout }; _pageTemplateAdminService.Add(homeTemplate); SetPageDefaults(layoutModel); return layoutModel; }
public RedirectToRouteResult Set(Layout doc, int? parentVal) { _layoutAreaAdminService.Set(doc, parentVal); return RedirectToAction("Edit", "Layout", new { id = doc.Id }); }
public virtual ActionResult Edit_Get(Layout doc) { return View(doc); }
public virtual ActionResult Edit(Layout doc) { _documentService.SaveDocument(doc); TempData.SuccessMessages().Add(string.Format("{0} successfully saved", doc.Name)); return RedirectToAction("Edit", new { id = doc.Id }); }
public void LayoutAreaController_EditPost_ShouldRedirectBackToTheLayoutOnceDone() { var layoutArea = new LayoutArea(); var layout = new Layout { Id = 1 }; layoutArea.Layout = layout; ActionResult actionResult = _layoutAreaController.Edit(layoutArea); actionResult.As<RedirectToRouteResult>().RouteValues["action"].Should().Be("Edit"); actionResult.As<RedirectToRouteResult>().RouteValues["controller"].Should().Be("Layout"); actionResult.As<RedirectToRouteResult>().RouteValues["id"].Should().Be(1); }
public virtual ActionResult Delete_Get(Layout document) { return PartialView(document); }
public virtual ActionResult Delete(Layout document) { _documentService.DeleteDocument(document); TempData.InfoMessages().Add(string.Format("{0} deleted", document.Name)); return RedirectToAction("Index"); }
public PartialViewResult Add(Layout layout) { return PartialView("Add", new LayoutArea {Layout = layout}); }
public void LayoutAreaAdminService_DeleteArea_AreaIsRemovedFromLayoutsLayoutAreaList() { var layout = new Layout(); var layoutArea = new LayoutArea { Layout = layout }; layout.LayoutAreas.Add(layoutArea); _layoutAreaAdminService.DeleteArea(layoutArea); layout.LayoutAreas.Should().NotContain(layoutArea); }
public void Set(Layout doc, int? parentVal) { if (doc == null) return; Layout parent = parentVal.HasValue ? _session.Get<Layout>(parentVal.Value) : null; doc.Parent = parent; _documentService.SaveDocument(doc); }
public IEnumerable<string> GetPrimary(Layout layout) { yield return layout.Name; }
public IEnumerable<string> GetSecondary(Layout layout) { yield return layout.UrlSegment; }