public ActionResult Create(MessageViewModel messageViewModel)
        {
            var currentUser = _uow.UserManager.FindByNameAsync(HttpContext.User?.Identity?.Name).Result;

            messageViewModel.FromUserEmail = currentUser.Email;
            MessageBL messageBL = new MessageBL(_uow, _mapper);
            Post      post      = null;

            if (_userTo.Id == 0)
            {
                var message = _uow.MessageRepository.GetByID(_message.MessageId);
                messageViewModel.ToUserEmail     = message.FromUserEmail;
                messageViewModel.MessageSentDate = DateTime.Now;
                messageViewModel.PostLink        = message.PostLink;
                var postId = int.Parse(message.PostLink.Substring(message.PostLink.LastIndexOf("/") + 1));
                post = _uow.PostRepository.GetByID(postId);
                if (messageBL.SendMessage(messageViewModel, post))
                {
                    return(RedirectToAction("Delete", new { id = message.MessageId }));
                }
            }
            else
            {
                if (_message.MessageId == -1)
                {
                    messageViewModel.ToUserEmail = "*****@*****.**";
                }
                else
                {
                    messageViewModel.ToUserEmail = _uow.UserRepository.GetByID(_userTo.Id).Email;
                }

                messageViewModel.MessageSentDate = DateTime.Now;
                post = _uow.PostRepository.GetByID(_post.PostId);
                messageViewModel.PostLink = $"https://localhost:44372/Post/PostView/{post.PostId}";

                if (messageBL.SendMessage(messageViewModel, post))
                {
                    return(RedirectToAction("AccountPage", "Account"));
                }
            }

            return(RedirectToAction("Create"));
        }
        public void SendMessage(Message message)
        {
            _message.To   = message.To;
            _message.From = message.From;
            _message.Body = message.Body;
            var messageBL = new MessageBL(_uow.messageRepository);

            messageBL.SendMessage(new SecureChat.BLL.Models.Message
            {
                MessageID = _message.MessageID,
                From      = _message.From,
                To        = _message.To,
                Body      = _message.Body,
                SendDate  = _message.SendDate,
                Status    = _message.Status,
                IsDeleted = _message.IsDeleted
            });
        }