Ejemplo n.º 1
0
 public ActionResult ReadMessage(int Id)
 {
     try
     {
         if (Session["Account"] == null)
         {
             return(RedirectToAction("SingupAndSignin", "Account"));
         }
         else
         {
             var messageBusiness = new MessageBusiness();
             var message         = messageBusiness.GetByMessage(Id);
             var userBusiness    = new UserBusiness();
             var senderUser      = userBusiness.GetUserInfo(message.SendUser);
             var ReceiverUser    = userBusiness.GetUserInfo(message.ReceiverUser);
             messageBusiness.ChangeStatus(Id);
             var ReadMessageVM = new ReadMessageViewModel()
             {
                 Message      = message,
                 SenderName   = senderUser.UserName,
                 ReceiverName = ReceiverUser.UserName
             };
             return(View(ReadMessageVM));
         }
     }
     catch
     {
         return(RedirectToAction("SingupAndSignin", "Account"));
     }
 }
Ejemplo n.º 2
0
        public async Task <IActionResult> ReadMessage(int id)
        {
            var message = await _clientMessageRepository.GetAsync(id);

            var vm = new ReadMessageViewModel()
            {
                Message = message.Message,
                Name    = message.Name,
                Email   = message.Email
            };


            return(View("_ReadMessage", vm));
        }
Ejemplo n.º 3
0
        public ActionResult ReplyMessage(int Id)
        {
            var messageBusiness = new MessageBusiness();
            var message         = messageBusiness.GetByMessage(Id);
            var userBusiness    = new UserBusiness();
            var sendUser        = userBusiness.GetUserInfo(message.SendUser);
            var ReadMessageVM   = new ReadMessageViewModel()
            {
                SenderName = sendUser.UserName,
                Message    = message
            };

            return(View(ReadMessageVM));
        }
        // GET: Messages/Details/5
        public ActionResult Details(int id)
        {
            MessageViewModel message = Facade.GetMessage(User.Identity.GetUserId(), id);

            if (message == null)
            {
                return(HttpNotFound());
            }

            //Prepare view model
            ReadMessageViewModel model = new ReadMessageViewModel();

            model.Text   = message.Text;
            model.FromId = message.SenderID;
            model.From   = message.SenderUserName;
            model.Date   = message.SendDate;
            return(View(model));
        }
Ejemplo n.º 5
0
        public async Task <IActionResult> ReadMessage(string messageId)
        {
            if (string.IsNullOrEmpty(messageId))
            {
                return(RedirectToAction("index", "home"));
            }
            else
            {
                var user = await _MemberManager.GetUserAsync(User);

                if (user != null)
                {
                    var message = _DbContext.Messages
                                  .Where(MSG =>
                                         MSG.Id == _dataProtector.Unprotect(messageId) &&
                                         MSG.ToUserId == user.Id
                                         )
                                  .FirstOrDefault();

                    if (message != null)
                    {
                        //not done
                        var repliedMsgString = "";
                        if (message.RepliedToMsgId != null)
                        {
                            var repliedMessage = _DbContext.Messages
                                                 .Where(MSG => MSG.Id == message.RepliedToMsgId)
                                                 .FirstOrDefault();

                            repliedMsgString = repliedMessage.MessageBody;
                        }

                        message.IsRead = true;

                        await _DbContext.SaveChangesAsync();

                        user.UnreadMessages = _DbContext.Messages
                                              .Count(MSG =>
                                                     MSG.ToUserId == user.Id &&
                                                     MSG.IsRead == false
                                                     );

                        await _DbContext.SaveChangesAsync();

                        var readMessageViewModel = new ReadMessageViewModel()
                        {
                            MessageId    = _dataProtector.Protect(message.Id),
                            RepliedTo    = repliedMsgString.Length < 31 ? repliedMsgString: "[" + repliedMsgString.Substring(0, 30) + "...]",
                            DateTimeSent = message.DateTimeSent,
                            FromUser     = message.FromUser,
                            Subject      = message.Subject,
                            Body         = message.MessageBody
                        };


                        return(View(readMessageViewModel));
                    }
                }
            }

            return(RedirectToAction("index", "home"));
        }
Ejemplo n.º 6
0
 public ReadMessagePage(ReadMessageViewModel vm)
 {
     InitializeComponent();
     ViewModel      = vm;
     BindingContext = ViewModel;
 }