/// <summary> /// Default action /// </summary> /// <param name="currentPage">The current page.</param> /// <param name="deleted">if set to <c>true</c> [deleted].</param> /// <returns> /// Returns a list of children to the current page /// </returns> public ActionResult Index(dynamic currentPage, bool deleted = false) { // If the current page is null, assume we haven't created the start page yet if (!(currentPage is Page)) { ViewBag.Class = "start"; return View("Start", new NewModel()); } using (IDocumentSession session = this.documentStore.OpenSession()) { var viewModel = new IndexViewModel { RootModel = session.Advanced.GetStartPage(), CurrentModel = currentPage, ParentModel = session.Advanced.GetParentFor<IPage>((IPage) currentPage), Children = session.Advanced.GetChildrenFor((IPage) currentPage) }; return View("Index", viewModel); } }
/// <summary> /// Default action /// </summary> /// <param name="deleted">if set to <c>true</c> [deleted].</param> /// <returns> /// Returns a list of children to the current page /// </returns> public ActionResult Index(bool deleted = false) { // If the current page is null, assume we haven't created the start page yet if (_model == null) { ViewBag.Class = "start"; return View("Start", new NewModel()); } var id = (string)_model.Id; var parentId = _model.Parent != null ? (string)_model.Parent.Id : null; var viewModel = new IndexViewModel { RootModel = _session.Query<IPageModel>().SingleOrDefault(model => model.Parent == null), CurrentModel = _model, ParentModel = parentId != null ? _session.Load<IPageModel>(parentId) : null, Children = _session.Query<IPageModel, DocumentsByParent>() .Where(model => model.Parent.Id == id) .Where(model => model.Metadata.IsDeleted == deleted) .OrderBy(model => model.Metadata.SortOrder) .ToList() }; return View("Index", viewModel); }
/// <summary> /// Default action /// </summary> /// <param name="deleted">if set to <c>true</c> [deleted].</param> /// <returns> /// Returns a list of children to the current page /// </returns> public ActionResult Index(bool deleted = false) { // If the current page is null, assume we haven't created the start page yet if (_currentPage == null) { ViewBag.Class = "start"; return View("Start", new NewModel()); } var viewModel = new IndexViewModel { RootModel = _structureInfo.StartPage, CurrentModel = _structureInfo.CurrentPage, ParentModel = _structureInfo.ParentPage, Children = deleted ? _structureInfo.NavigationContext.Where(x => _structureInfo.CurrentPage.Children.Contains(x.Id) && x.Metadata.IsDeleted) : _structureInfo.NavigationContext.Where(x => _structureInfo.CurrentPage.Children.Contains(x.Id)) }; return View("Index", viewModel); }
/// <summary> /// Views the deleted. /// </summary> /// <returns></returns> public ActionResult ShowDeleted() { var id = (string)_model.Id; var parentId = _model.Parent != null ? (string)_model.Parent.Id : null; var viewModel = new IndexViewModel { RootModel = _session.Query<IPageModel>().SingleOrDefault(model => model.Parent == null), CurrentModel = _model, ParentModel = parentId != null ? _session.Load<IPageModel>(parentId) : null, Children = _session.Query<IPageModel>() .Where(model => model.Parent.Id == id) .OrderBy(model => model.Metadata.SortOrder) .ToList() }; ViewBag.Class = "content"; return View("Index", viewModel); }