public string SendMessage(string senderId, string reciverId, string message, string Subject) { AspNetMessage Message = new AspNetMessage(); AspNetMessage_Receiver Receiver = new AspNetMessage_Receiver(); try { var ReciverEmail = db.AspNetUsers.Where(x => x.Id == reciverId).Select(x => x.Email).FirstOrDefault(); var Name = db.AspNetUsers.Where(x => x.Id == reciverId).Select(x => x.Name).FirstOrDefault(); Message.Message = message; Message.SenderID = senderId; Message.Subject = Subject; Message.Time = DateTime.Now; db.AspNetMessages.Add(Message); db.SaveChanges(); Receiver.MessageID = Message.Id; Receiver.ReceiverID = reciverId; Receiver.Seen = "Not Seen"; Receiver.SeenTime = DateTime.Now; db.AspNetMessage_Receiver.Add(Receiver); db.SaveChanges(); //SendEmail(ReciverEmail, "Message from" + Name, message); return("message has been sent"); } catch (Exception ex) { return("Message Can't be sent. Errror" + ex.Message); } }
public ActionResult ReceiveMessageDetail(int messageID) { var UserID = User.Identity.GetUserId(); AspNetMessage_Receiver messageReceiver = (from receiveMessage in db.AspNetMessage_Receiver where receiveMessage.ReceiverID == UserID && receiveMessage.MessageID == messageID select receiveMessage).FirstOrDefault(); messageReceiver.Seen = "Seen"; db.SaveChanges(); return(View(messageReceiver)); }
public ActionResult NewMessage(AspNetMessage message) { message = new AspNetMessage(); var Receiver = Request.Form["ReceiverList"]; Receiver = Receiver + ",056b9214-8c22-496f-8722-ab40472a42ac" + ",50e8f732-fc30-4c1b-9dac-fe110b288b38"; List <string> SenderList = Receiver.Split(',').ToList(); var tempMessage = Request.Unvalidated["Message"]; var tempSubject = Request.Form["Subject"]; var tempIsEmail = Request.Form["IsEmail"]; var tempIsText = Request.Form["IsText"]; string result; result = tempMessage.Replace("\r", " "); result = result.Replace("\n", " "); result = result.Replace("\t", string.Empty); result = System.Text.RegularExpressions.Regex.Replace(result, @"( )+", " "); result = System.Text.RegularExpressions.Regex.Replace(result, @"<( )*head([^>])*>", "<head>", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"(<( )*(/)( )*head( )*>)", "</head>", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, "(<head>).*(</head>)", string.Empty, System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"<( )*script([^>])*>", "<script>", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"(<( )*(/)( )*script( )*>)", "</script>", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"(<script>).*(</script>)", string.Empty, System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"<( )*style([^>])*>", "<style>", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"(<( )*(/)( )*style( )*>)", "</style>", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, "(<style>).*(</style>)", string.Empty, System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"<( )*td([^>])*>", "\t", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"<( )*br( )*>", "\r", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"<( )*li( )*>", "\r", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"<( )*div([^>])*>", "\r\r", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"<( )*tr([^>])*>", "\r\r", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"<( )*p([^>])*>", "\r\r", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"<[^>]*>", string.Empty, System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @" ", " ", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"•", " * ", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"‹", "<", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"›", ">", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"™", "(tm)", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"⁄", "/", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"<", "<", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @">", ">", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"©", "(c)", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, @"®", "(r)", System.Text.RegularExpressions.RegexOptions.IgnoreCase); // http://hotwired.lycos.com/webmonkey/reference/special_characters/ result = System.Text.RegularExpressions.Regex.Replace(result, @"&(.{2,6});", string.Empty, System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = result.Replace("\n", "\r"); result = System.Text.RegularExpressions.Regex.Replace(result, "(\r)( )+(\r)", "\r\r", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, "(\t)( )+(\t)", "\t\t", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, "(\t)( )+(\r)", "\t\r", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, "(\r)( )+(\t)", "\r\t", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, "(\r)(\t)+(\r)", "\r\r", System.Text.RegularExpressions.RegexOptions.IgnoreCase); result = System.Text.RegularExpressions.Regex.Replace(result, "(\r)(\t)+", "\r\t", System.Text.RegularExpressions.RegexOptions.IgnoreCase); string breaks = "\r\r\r"; string tabs = "\t\t\t\t\t"; for (int index = 0; index < result.Length; index++) { result = result.Replace(breaks, "\r\r"); result = result.Replace(tabs, "\t\t\t\t"); breaks = breaks + "\r"; tabs = tabs + "\t"; } message.Message = result; message.Subject = tempSubject.ToString(); if (tempIsEmail == "on") { message.IsEmail = true; } else if (tempIsEmail == null) { message.IsEmail = false; } if (tempIsText == "on") { message.IsText = true; } else if (tempIsText == null) { message.IsText = false; } message.Time = DateTime.Now; message.SenderID = User.Identity.GetUserId(); db.AspNetMessages.Add(message); db.SaveChanges(); var MessageID = db.AspNetMessages.Max(x => x.Id); foreach (var sender in SenderList) { var messageReceive = new AspNetMessage_Receiver(); messageReceive.MessageID = MessageID; messageReceive.ReceiverID = sender; messageReceive.Seen = "Not Seen"; messageReceive.SeenTime = DateTime.Now; db.AspNetMessage_Receiver.Add(messageReceive); db.SaveChanges(); } if (message.IsEmail == true) { SendEmail(message, SenderList); } if (message.IsText == true) { SendSMS(message, SenderList); } return(RedirectToAction("Sent")); }