public async Task <IActionResult> EditWhiteList(int serverId) { if (!await RightsHandler.HasRightsToThisPavlovServer(HttpContext.User, await _userservice.getUserFromCp(HttpContext.User), serverId, _service, _pavlovServerService)) { return(Forbid()); } var server = await _pavlovServerService.FindOne(serverId); var steamIds = (await _steamIdentityService.FindAll()).ToArray(); var selectedSteamIds = (await _whitelistService.FindAllFrom(server)).ToArray(); if (server.Shack) { steamIds = steamIds.Where(x => !string.IsNullOrEmpty(x.OculusId)).ToArray(); } //service var model = new PavlovServerWhitelistViewModel { Shack = server.Shack, steamIds = selectedSteamIds.Select(x => x.SteamIdentityId).ToList(), pavlovServerId = server.Id }; ViewBag.SteamIdentities = steamIds.ToList(); return(View("WhiteList", model)); }
public async Task <IActionResult> SaveWhiteList(PavlovServerWhitelistViewModel pavlovServerWhitelistViewModel) { if (!await RightsHandler.HasRightsToThisPavlovServer(HttpContext.User, await _userservice.getUserFromCp(HttpContext.User), pavlovServerWhitelistViewModel.pavlovServerId, _service, _pavlovServerService)) { return(Forbid()); } var server = await _pavlovServerService.FindOne(pavlovServerWhitelistViewModel.pavlovServerId); try { await _whitelistService.SaveWhiteListToFileAndDb(pavlovServerWhitelistViewModel.steamIds, server); } catch (CommandException e) { return(BadRequest(e.Message)); } //service return(RedirectToAction("Index", "SshServer")); }