public async Task <IActionResult> Edit(string id) { if (!await _authorizationService.AuthorizeAsync(User, Permissions.ManageRemoteInstances)) { return(Forbid()); } var remoteInstance = await _service.GetRemoteInstanceAsync(id); if (remoteInstance == null) { return(NotFound()); } var model = new EditRemoteInstanceViewModel { Id = remoteInstance.Id, Name = remoteInstance.Name, ClientName = remoteInstance.ClientName, ApiKey = remoteInstance.ApiKey, Url = remoteInstance.Url }; return(View(model)); }
public async Task <IActionResult> Edit(EditRemoteInstanceViewModel model) { if (!await _authorizationService.AuthorizeAsync(User, Permissions.ManageRemoteInstances)) { return(Forbid()); } var remoteInstance = await _service.GetRemoteInstanceAsync(model.Id); if (remoteInstance == null) { return(NotFound()); } if (ModelState.IsValid) { ValidateViewModel(model); } if (ModelState.IsValid) { await _service.TryUpdateRemoteInstance(model.Id, model.Name, model.Url, model.ClientName, model.ApiKey); _notifier.Success(H["Remote instance updated successfully"]); return(RedirectToAction(nameof(Index))); } // If we got this far, something failed, redisplay form return(View(model)); }
private void ValidateViewModel(EditRemoteInstanceViewModel model) { if (String.IsNullOrWhiteSpace(model.Name)) { ModelState.AddModelError(nameof(EditRemoteInstanceViewModel.Name), S["The name is mandatory."]); } if (String.IsNullOrWhiteSpace(model.ClientName)) { ModelState.AddModelError(nameof(EditRemoteInstanceViewModel.ClientName), S["The client name is mandatory."]); } if (String.IsNullOrWhiteSpace(model.ApiKey)) { ModelState.AddModelError(nameof(EditRemoteInstanceViewModel.ApiKey), S["The api key is mandatory."]); } if (String.IsNullOrWhiteSpace(model.Url)) { ModelState.AddModelError(nameof(EditRemoteInstanceViewModel.Url), S["The url is mandatory."]); } else { Uri uri; if (!Uri.TryCreate(model.Url, UriKind.Absolute, out uri)) { ModelState.AddModelError(nameof(EditRemoteInstanceViewModel.Url), S["The url is invalid."]); } } }
public async Task <IActionResult> Create() { if (!await _authorizationService.AuthorizeAsync(User, Permissions.ManageRemoteInstances)) { return(Forbid()); } var model = new EditRemoteInstanceViewModel(); return(View(model)); }
public async Task <IActionResult> Create(EditRemoteInstanceViewModel model) { if (!await _authorizationService.AuthorizeAsync(User, Permissions.ManageRemoteInstances)) { return(Forbid()); } if (ModelState.IsValid) { ValidateViewModel(model); } if (ModelState.IsValid) { await _service.CreateRemoteInstanceAsync(model.Name, model.Url, model.ClientName, model.ApiKey); await _notifier.SuccessAsync(H["Remote instance created successfully."]); return(RedirectToAction(nameof(Index))); } // If we got this far, something failed, redisplay form return(View(model)); }