using Microsoft.AspNetCore.Mvc; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using System.Security.Claims; using Microsoft.AspNetCore.Http; using BWPMModels; using Microsoft.AspNetCore.Identity; using App.Models; namespace APP.ViewComponents { public class MenuItemsViewComponent : ViewComponent { List menuItems = new List(); //List menuItems = new List(); private readonly UserManager _userManager; private readonly SignInManager _signInManager; public MenuItemsViewComponent(UserManager userManager, SignInManager signInManager) { this._userManager = userManager; this._signInManager = signInManager; //HttpContext.Session.SetString("usertype","1"); //string usertype = HttpContext.Session.GetString("usertype"); menuItems = AppMenuItem.MenuItems("1"); //if (_signInManager.IsSignedIn(HttpContext.User)) //{ // menuItems.Add(new AppMenuItem { id = "999", text = "Login", parentId = "", url = "/Account/Logout" }); //} //else //{ // menuItems.Add(new AppMenuItem { id = "999", text = "Login", parentId = "", url = "/Account/Login" }); //} //// if (state == "" || state == "False") ////{ menuItems.Add(new AppMenuItem { id = "999", text = "Login", parentId = "", url = "/Account/Login" }); } ////; //ViewBag.menuitems = menuItems; //var model = menuItems; } public async Task InvokeAsync() { if (_signInManager.IsSignedIn(HttpContext.User)) { menuItems.Add(new AppMenuItem { id = "999", text = "Logout", parentId = "", url = "/Account/Logout" }); } else { menuItems.Add(new AppMenuItem { id = "999", text = "Login", parentId = "", url = "/Account/Login" }); } var model = menuItems; ViewBag.menuitems = menuItems; return await Task.FromResult((IViewComponentResult)View("MenuItems", model)); } } }