public async Task <IActionResult> Update(int dialogId, int messageId, string newText) { var message = await _messagesRepository.Find(messageId); if (message == null) { return(StatusCode(404, "Сообщение не найдено")); } var currentUserId = CurrentUserId(); if (message.UserId != currentUserId) { return(StatusCode(401, "Изменить сообщение может только его создатель")); } if ((message.DateCreate - DateTime.Now).TotalMinutes > 15) { return(StatusCode(400, "Сообщения можно изменять не позже 15 минут после создания")); } message.Text = newText; if (!await _messagesRepository.Update(message)) { return(StatusCode(500, "Не удалось изменить сообщение. Сообщите нам об этой ошибке")); } return(Ok()); }