protected virtual void Initialize(Guid pageId, PageIdentity pageIdentity = PageIdentity.Unknown, bool promoteProducts = true) { this.currentUser = this.HttpContext.CurrentUser() ?? UserIdentityManager.GetActiveUser(this.Request, this.repository); this.ViewData["SettingsViewModel"] = this.settingsViewModel; this.ViewData["MainMenuViewModel"] = MenuViewModelFactory.CreateDefaultMenu(this.repository, pageId, currentUser, pageIdentity); this.ViewData["ShowLeftRailLogin"] = currentUser == null; //this.ViewData["MediaListViewModel"] = promoteProducts ? CategoryViewModelFactory.CreatePopularProducts(this.repository, null) : null; this.ViewData["HttpReferrer"] = this.Request.UrlReferrer != null?this.Request.UrlReferrer.ToString() : null; }
public static MainMenuViewModel CreateDefaultMenu(IRepository repository, Guid current, User user, PageIdentity page = PageIdentity.Unknown) { var mainMenuViewModel = new MainMenuViewModel { MetaMenu = new List <MenuItemViewModel>() }; mainMenuViewModel.Menu = CreateItems(repository, null, 0, current); mainMenuViewModel.Menu.Insert(0, new MenuItemViewModel { Name = StringResource.admin_HomeShort, IsActive = current == Guid.Empty && page == PageIdentity.Unknown, Link = new NavigationLink("Index", "Main") }); if (user != null) { if (user.IsAdmin) { mainMenuViewModel.MetaMenu.Add(new MenuItemViewModel { Glyph = "glyphicon glyphicon-cog", Name = StringResource.admin_Dashboard, Link = new NavigationLink { ActionName = "Pages", ControllerName = "Admin" } }); } else { /* * mainMenuViewModel.MetaMenu.Add(new MenuItemViewModel * { * Glyph = "glyphicon glyphicon-briefcase", * Name = StringResource.nav_History, * Link = new NavigationLink { ActionName = "History", ControllerName = "User" }, * IsActive = page == PageIdentity.History * }); * * var ordersCount = repository.GetOrderItemsCount(user); * * mainMenuViewModel.MetaMenu.Add(new MenuItemViewModel * { * Glyph = "glyphicon glyphicon-shopping-cart", * Name = StringResource.nav_Orders, * Link = new NavigationLink { ActionName = "Orders", ControllerName = "User" }, * Badge = ordersCount > 0 ? ordersCount.ToString() : null, * IsActive = page == PageIdentity.Cart * }); */ mainMenuViewModel.MetaMenu.Add(new MenuItemViewModel { Glyph = "glyphicon glyphicon-user", Name = StringResource.nav_Profile, Link = new NavigationLink { ActionName = "Profile", ControllerName = "User" }, IsActive = page == PageIdentity.UserProfile }); } } if (user == null || !user.IsAdmin) { mainMenuViewModel.MetaMenu.Add(new MenuItemViewModel { Glyph = "glyphicon glyphicon-paperclip", Name = StringResource.form_Contact_us, Link = new NavigationLink { ActionName = "Feedback", ControllerName = "Main" }, IsActive = page == PageIdentity.Feedback }); } if (user != null) { mainMenuViewModel.MetaMenu.Add(new MenuItemViewModel { Glyph = "glyphicon glyphicon-log-out", Name = StringResource.Logout, Link = new NavigationLink { ActionName = "Logoff", ControllerName = "Main" } }); } else { mainMenuViewModel.MetaMenu.Add(new MenuItemViewModel { Glyph = "glyphicon glyphicon-log-in", Name = StringResource.login_LoginAsUser, Link = new NavigationLink { ActionName = "Login", ControllerName = "Main" } }); } return(mainMenuViewModel); }
protected override void Initialize(Guid pageId, PageIdentity pageIdentity = PageIdentity.Unknown, bool promoteProducts = true) { base.Initialize(pageId); this.ViewData["NavigationMenuViewModel"] = MenuViewModelFactory.CreateNavigationMenu(repository, null, this.Request); this.ViewData["BreadcrumbViewModel"] = MenuViewModelFactory.CreateBreadcrumb(repository, null); }