public static StoreInfo ReadStoreInfo(ISession session) { return(new StoreInfo { StoreId = SessionOps.Read <int>(session, SessionName.StoreId), IsAdmin = SessionOps.Read <bool>(session, SessionName.AdminAccess), UserName = SessionOps.Read <string>(session, SessionName.UserName), }); }
public async Task <IActionResult> EditRole(string id) { var role = await _roleManager.FindByIdAsync(id); if (role == null) { return(RedirectToAction("Index")); } var roleEditViewModel = new RoleEditViewModel { Id = id, RoleName = role.Name, Users = new List <string>() }; List <string> userList = new List <string>(); var re = SessionOps.GetSessionList <string>(HttpContext.Session.Get($"role_{id}_user_list")); if (re != null) { userList = re; } else { var configAuthorization = Config.App.GetJToken(Constants.JsontagAuthorization) as JObject; var authBlob = AzureService.GetBlob(null, "index", WebUIConfig.AppInfoConfigFile); var json = await authBlob.DownloadGenericObjectAsync(); var addAuth = JsonUtils.GetJToken(Constants.JsontagAuthorization, json); var addAuthObj = addAuth == null ? null : addAuth as JObject; if (!Object.ReferenceEquals(addAuthObj, null)) { addAuthObj.Merge(configAuthorization, new JsonMergeSettings { MergeArrayHandling = MergeArrayHandling.Union }); } if (!Object.ReferenceEquals(addAuthObj, null)) { foreach (var pair in addAuthObj) { if (pair.Key == role.Name) { var peopleArray = pair.Value as JArray; foreach (var onepeople in peopleArray) { userList.Add(onepeople.ToString()); } } } } SessionOps.SetSession($"role_{id}_user_list", userList, HttpContext.Session); } roleEditViewModel.Users = userList; return(View(roleEditViewModel)); }
public static void WriteCookieData(ISession session, PostLogin loginData) { SessionOps.Write(session, SessionName.StoreId, loginData.StoreId); SessionOps.Write(session, SessionName.AdminAccess, loginData.IsAdmin); SessionOps.Write(session, SessionName.LastLoginTime, loginData.LastLoginTime); SessionOps.Write(session, SessionName.StoreCity, loginData.StoreCity); SessionOps.Write(session, SessionName.StoreCode, loginData.StoreCode); SessionOps.Write(session, SessionName.StoreName, loginData.StoreName); SessionOps.Write(session, SessionName.UserName, loginData.UserName); }
public static PostLogin ReadCookieData(ISession session) { return(new PostLogin { StoreId = SessionOps.Read <int>(session, SessionName.StoreId), IsAdmin = SessionOps.Read <bool>(session, SessionName.AdminAccess), LastLoginTime = SessionOps.Read <string>(session, SessionName.LastLoginTime), StoreCity = SessionOps.Read <string>(session, SessionName.StoreCity), StoreCode = SessionOps.Read <string>(session, SessionName.StoreCode), StoreName = SessionOps.Read <string>(session, SessionName.StoreName), UserName = SessionOps.Read <string>(session, SessionName.UserName), }); }
public static bool IsSessionSet(ISession session) { var usrname = SessionOps.Read <string>(session, SessionName.UserName); if (string.IsNullOrEmpty(usrname)) { return(false); } else { return(true); } }
public async Task <IActionResult> DeleteUserFromRole(string roleId) { var role = await _roleManager.FindByIdAsync(roleId); if (role == null) { return(RedirectToAction("Index")); } var vm = new UserRoleViewModel { RoleId = role.Id }; List <string> userList = new List <string>(); var re = SessionOps.GetSessionList <string>(HttpContext.Session.Get($"role_{roleId}_user_list")); if (re != null) { userList = re; } else { var authBlob = AzureService.GetBlob(null, "index", WebUIConfig.AppInfoConfigFile); var json = await authBlob.DownloadGenericObjectAsync(); var addAuth = JsonUtils.GetJToken(Constants.JsontagAuthorization, json); var addAuthObj = addAuth == null ? null : addAuth as JObject; if (!Object.ReferenceEquals(addAuthObj, null)) { foreach (var pair in addAuthObj) { if (pair.Key == role.Name) { var peopleArray = pair.Value as JArray; foreach (var onepeople in peopleArray) { userList.Add(onepeople.ToString()); } } } } SessionOps.SetSession($"role_{roleId}_user_list", userList, HttpContext.Session); } vm.Users = userList; return(View(vm)); }
public async Task <IActionResult> AddUserToRole(UserRoleViewModel userRoleViewModel) { var role = await _roleManager.FindByIdAsync(userRoleViewModel.RoleId); if (await AzureService.FindUserId(userRoleViewModel.Email) == null) { ModelState.AddModelError(string.Empty, "Email not exist! Please confirm your email."); return(View(userRoleViewModel)); } var authBlob = AzureService.GetBlob(null, "index", WebUIConfig.AppInfoConfigFile); var json = await authBlob.DownloadGenericObjectAsync(); var addAuth = JsonUtils.GetJToken(Constants.JsontagAuthorization, json); var addAuthObj = addAuth == null ? null : addAuth as JObject; foreach (var pair in addAuthObj) { if (pair.Key == role.Name) { var peopleArray = pair.Value as JArray; foreach (var onepeople in peopleArray) { if (String.Compare(onepeople.ToString(), userRoleViewModel.Email, true) == 0) { return(RedirectToAction("EditRole", new { id = role.Id })); } } var user = await _userManager.FindByEmailAsync(userRoleViewModel.Email); if (user != null) { await _userManager.AddToRoleAsync(user, role.Name); } peopleArray.Add(userRoleViewModel.Email); SessionOps.AddSession <string>($"role_{userRoleViewModel.RoleId}_user_list", userRoleViewModel.Email, HttpContext.Session.Get($"role_{userRoleViewModel.RoleId}_user_list"), HttpContext.Session); await authBlob.UploadGenericObjectAsync(json); } } return(RedirectToAction("EditRole", new { id = role.Id })); }
public async Task <IActionResult> DeleteUserFromRole(UserRoleViewModel userRoleViewModel) { var role = await _roleManager.FindByIdAsync(userRoleViewModel.RoleId); var authBlob = AzureService.GetBlob(null, "index", WebUIConfig.AppInfoConfigFile); var json = await authBlob.DownloadGenericObjectAsync(); var addAuth = JsonUtils.GetJToken(Constants.JsontagAuthorization, json); var addAuthObj = addAuth == null ? null : addAuth as JObject; List <string> userList = new List <string>(); foreach (var pair in addAuthObj) { if (pair.Key == role.Name) { var peopleArray = pair.Value as JArray; foreach (var onepeople in peopleArray) { if (String.Compare(onepeople.ToString(), userRoleViewModel.Email, true) == 0) { var user = await _userManager.FindByEmailAsync(userRoleViewModel.Email); if (user != null) { await _userManager.RemoveFromRoleAsync(user, role.Name); } peopleArray.Remove(onepeople); await authBlob.UploadGenericObjectAsync(json); SessionOps.RemoveSession <string>($"role_{userRoleViewModel.RoleId}_user_list", onepeople.ToString(), HttpContext.Session.Get($"role_{userRoleViewModel.RoleId}_user_list"), HttpContext.Session); break; } } } } return(RedirectToAction("EditRole", new { id = role.Id })); }
public static void WriteLoggIn(ISession session, StoreInfo info) { SessionOps.Write(session, SessionName.StoreId, info.StoreId); SessionOps.Write(session, SessionName.AdminAccess, info.IsAdmin); SessionOps.Write(session, SessionName.UserName, info.UserName); }
public static void WriteLogOut(ISession session) { SessionOps.Write(session, SessionName.StoreId, 0); SessionOps.Write(session, SessionName.AdminAccess, false); SessionOps.Write(session, SessionName.UserName, ""); }