public async Task <IActionResult> Update(UpdatePageDto dto) { var culture = CultureInfo.CurrentCulture; Logger.LogDebug("Updating page '{0}' for culture: {1}", dto.Id, culture.Name); try { await _service.UpdateAsync(dto, culture); return(Ok(null)); } catch (NotFoundException e) { Logger.LogDebug("Could not find page with id '{0}'", dto.Id); return(NotFound(e.Message)); } catch (ValidationException e) { Logger.LogDebug("A validation exception occured while updating page with id '{0}': {1}", dto.Id, e.Message); return(BadRequest(e.Message)); } catch (Exception e) { Logger.LogError(e, "An exception occured while updating page '{0}'", dto.Id); return(InternalServerError(e.Message)); } }
public async Task UpdateAsync(UpdatePageDto dto, CultureInfo culture) { var page = await _repository.FindWithImportsAsync(x => x.Id == dto.Id, p => p.Translations); if (page == null) { throw new NotFoundException(ErrorMessages.PageNotFound); } page.Update(dto, culture); await _repository.SaveChangesAsync(); }
public async Task <ActionResult <ControllerResponse <GetPageDto> > > update(string id, UpdatePageDto bulletIn) { string userId = _httpContextAccessor.HttpContext.User.FindFirstValue(ClaimTypes.NameIdentifier).ToString(); var bullet = await _pageService.getByIdAsync(id); if (bullet.userId != userId) { throw new UnauthorizedAccessException("Page don't belong to you"); } bullet = _mapper.Map <UpdatePageDto, Page>(bulletIn, bullet); await _pageService.updateAsync(id, bullet); return(Ok(new ControllerResponse <GetPageDto> { data = _mapper.Map <GetPageDto>(bullet) })); }