using Bootstrap.DataAccess; using Bootstrap.Security; using System; using System.Collections.Generic; using System.Linq; namespace Bootstrap.Admin.Models { public class NavigatorBarModel : HeaderBarModel { public NavigatorBarModel(string url) { Navigations = BootstrapMenu.RetrieveSystemMenus(UserName); Applications = DictHelper.RetrieveApps(); ActiveMenu(null, Navigations.ToList(), url); HomeUrl = "~/Admin/Index"; } private void ActiveMenu(BootstrapMenu parent, List menus, string url) { menus.ForEach(m => { m.Active = m.Url.Equals(url, StringComparison.OrdinalIgnoreCase) ? "active" : ""; ActiveMenu(m, m.Menus.ToList(), url); if (parent != null && m.Active != "") parent.Active = m.Active; }); } /// /// /// public IEnumerable Navigations { get; private set; } /// /// /// public IEnumerable> Applications { get; private set; } } }