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 void SendEmail(AspNetMessage message, List <string> SenderList) { List <string> EmailList = new List <string>(); foreach (var sender in SenderList) { EmailList.Add(db.AspNetUsers.Where(x => x.Id == sender).Select(x => x.Email).FirstOrDefault()); } foreach (var toEmail in EmailList) { try { string senderEmail = System.Configuration.ConfigurationManager.AppSettings["SenderEmail"].ToString(); string senderPassword = System.Configuration.ConfigurationManager.AppSettings["SenderPassword"].ToString(); SmtpClient client = new SmtpClient(); // SmtpClient client = new SmtpClient("smtpout.secureserver.net", 25); client.Port = 25; // You can use Port 25 if 587 is blocked (mine is!) client.Host = "smtp.gmail.com"; client.EnableSsl = false; client.Timeout = 100000; client.DeliveryMethod = SmtpDeliveryMethod.Network; client.UseDefaultCredentials = false; client.Credentials = new NetworkCredential(senderEmail, senderPassword); MailMessage mailMessage = new MailMessage(senderEmail, toEmail, message.Subject, message.Message); mailMessage.IsBodyHtml = true; mailMessage.BodyEncoding = UTF8Encoding.UTF8; client.Send(mailMessage); } catch (Exception ex) { } } }
public ActionResult ApproveDiary(int HomeWorkId) { var stid = db.AspNetStudent_HomeWork.Where(p => p.HomeworkID == HomeWorkId).FirstOrDefault().StudentID; var clasid = db.AspNetStudents.Where(p => p.StudentID == stid).FirstOrDefault().ClassID; var gh = db.AspNetStudents.Where(p => p.ClassID == clasid).ToList(); List <string> ParentList = new List <string>(); foreach (var g in gh) { var parent = db.AspNetParent_Child.Where(p => p.ChildID == g.StudentID).FirstOrDefault(); if (parent != null) { ParentList.Add(parent.ParentID); } else { var mee = "This student id don't have parent " + g.StudentID + " NGS Portal"; Utility ob = new Utility(); ob.messagetosupport(mee); } } Utility obtj = new Utility(); AspNetMessage oob = new AspNetMessage(); oob.Message = "Dear Parents, Please check the assigned homework to your child on portal. IPC Aziz Avenue Campus"; obtj.SendSMS(oob, ParentList); //var obje = db.AspNetHomeworks.Where(x => x.Id == HomeWorkId).FirstOrDefault(); //obje.PrincipalApproved_status = false; //db.Entry(obje).State = EntityState.Modified; //db.SaveChanges(); //var ty = db.AspNetHomeworks.Where(x => x.Id == HomeWorkId).FirstOrDefault().PrincipalApproved_status; var obj = db.AspNetHomeworks.Where(x => x.Id == HomeWorkId).FirstOrDefault(); obj.PrincipalApproved_status = "Approved"; db.Entry(obj).State = EntityState.Modified; db.SaveChanges(); var tyu = db.AspNetHomeworks.Where(x => x.Id == HomeWorkId).FirstOrDefault().PrincipalApproved_status; var result1 = new { status = "success", Value = tyu }; return(Json(result1, JsonRequestBehavior.AllowGet)); }
public ActionResult NewMessage() { List <string> numbers = new List <string>(); numbers.Add("923224839049"); numbers.Add("923401562576"); //Utility ttuy = new Utility(); //ttuy.datatt(); AspNetMessage tyu = new AspNetMessage(); SendSMS(tyu, numbers); ViewBag.ReceiverList = new SelectList(db.AspNetUsers.Where(x => x.AspNetRoles.Select(y => y.Name).Contains("Admin")).ToList(), "Id", "UserName"); //ViewBag. = new SelectList(db.AspNetUsers, "Id", "Email"); ViewBag.SenderID = new SelectList(db.AspNetUsers, "Id", "Email"); ViewBag.UsersLists = new SelectList(db.AspNetUsers, "Id", "Email"); ViewBag.ClassID = new SelectList(db.AspNetClasses, "Id", "ClassName"); return(View()); }
public ActionResult SentMessageDetail(int messageID) { var UserID = User.Identity.GetUserId(); AspNetMessage messageSent = (from messages in db.AspNetMessages where messages.SenderID == UserID && messages.Id == messageID select messages).FirstOrDefault(); List <string> ReceiverList = new List <string>(); List <string> usernames = db.AspNetMessage_Receiver.Where(x => x.MessageID == messageSent.Id).Select(x => x.AspNetUser.UserName).ToList(); string user = ""; foreach (var username in usernames) { user = user + username + ","; } ViewBag.ReceiverList = user; return(View(messageSent)); }
public ActionResult SendEmailViaAdmin_Dashboard() { AspNetMessage obj = new AspNetMessage(); obj.IsEmail = true; obj.IsText = false; obj.Subject = Request.Form["subject"]; obj.Message = Request.Form["message"]; obj.Time = DateTime.Now; obj.SenderID = User.Identity.GetUserId(); string toEmail = Request.Form["emailto"]; try { string senderEmail = System.Configuration.ConfigurationManager.AppSettings["SenderEmail"].ToString(); string senderPassword = System.Configuration.ConfigurationManager.AppSettings["SenderPassword"].ToString(); SmtpClient client = new SmtpClient("smtpout.secureserver.net", 25); client.EnableSsl = false; client.Timeout = 100000; client.DeliveryMethod = SmtpDeliveryMethod.Network; client.UseDefaultCredentials = false; client.Credentials = new NetworkCredential(senderEmail, senderPassword); MailMessage mailMessage = new MailMessage(senderEmail, toEmail, obj.Subject, obj.Message); mailMessage.IsBodyHtml = true; mailMessage.BodyEncoding = UTF8Encoding.UTF8; client.Send(mailMessage); } catch (Exception ex) { } return(RedirectToAction("Dashboard", "Admin_Dashboard")); }
public ActionResult Create([Bind(Include = "Id,Title,Description,Date,Time,Status")] AspNetParentTeacherMeeting aspNetParentTeacherMeeting, AspNetAnnouncement aspNetAnnouncement) { if (ModelState.IsValid) { var transactionObj = db.Database.BeginTransaction(); try { var Session = db.AspNetSessions.Where(x => x.Status == "Active").FirstOrDefault().Id; aspNetParentTeacherMeeting.SessionID = Session; db.AspNetParentTeacherMeetings.Add(aspNetParentTeacherMeeting); db.SaveChanges(); int MeetingID = db.AspNetParentTeacherMeetings.Max(x => x.Id); List <int> SubjectIDs = db.AspNetSubjects.Where(x => x.AspNetClass.SessionID == Session).Select(x => x.Id).ToList(); var parentSubject = (from parentchild in db.AspNetParent_Child join studentsubject in db.AspNetStudent_Subject on parentchild.ChildID equals studentsubject.StudentID where SubjectIDs.Contains(studentsubject.SubjectID) select new { parentchild.ParentID, studentsubject.SubjectID }).ToList(); foreach (var parentsubject in parentSubject) { AspNetPTMAttendance PTMAttendace = new AspNetPTMAttendance(); PTMAttendace.ParentID = parentsubject.ParentID; PTMAttendace.SubjectID = parentsubject.SubjectID; PTMAttendace.Status = "Absent"; PTMAttendace.Rating = -1; PTMAttendace.MeetingID = MeetingID; db.AspNetPTMAttendances.Add(PTMAttendace); db.SaveChanges(); int PTMAttendaceID = db.AspNetPTMAttendances.Max(x => x.Id); List <int> ParentQuestionIDs = db.AspNetFeedBackForms.Where(x => x.AspNetPTMFormRole.RoleName == "Parent" && x.SessionID == Session).Select(x => x.Id).ToList(); foreach (var questionID in ParentQuestionIDs) { AspNetPTM_ParentFeedback PTM_ParentFeedback = new AspNetPTM_ParentFeedback(); PTM_ParentFeedback.PTMID = PTMAttendaceID; PTM_ParentFeedback.HeadingID = questionID; db.AspNetPTM_ParentFeedback.Add(PTM_ParentFeedback); db.SaveChanges(); } List <int> TeacherQuestionIDs = db.AspNetFeedBackForms.Where(x => x.AspNetPTMFormRole.RoleName == "Teacher" && x.SessionID == Session).Select(x => x.Id).ToList(); foreach (var questionID in TeacherQuestionIDs) { AspNetPTM_TeacherFeedback PTM_TeacherFeedback = new AspNetPTM_TeacherFeedback(); PTM_TeacherFeedback.PTMID = PTMAttendaceID; PTM_TeacherFeedback.HeadingID = questionID; db.AspNetPTM_TeacherFeedback.Add(PTM_TeacherFeedback); db.SaveChanges(); /////////////////////////////////////////////////////////////////////////////////////////// } } var NotificationObj = new AspNetNotification(); NotificationObj.Description = aspNetParentTeacherMeeting.Description; NotificationObj.Subject = aspNetParentTeacherMeeting.Title; NotificationObj.SenderID = User.Identity.GetUserId(); NotificationObj.Time = DateTime.Now; NotificationObj.SessionID = Session; db.AspNetNotifications.Add(NotificationObj); db.SaveChanges(); var NotificationID = db.AspNetNotifications.Max(x => x.Id); var receiverId = (from teacher in db.AspNetUsers.Where(x => x.Status != "False" && x.AspNetUsers_Session.Any(y => y.SessionID == Session)) where teacher.AspNetRoles.Select(y => y.Name).Contains("Teacher") || teacher.AspNetRoles.Select(y => y.Name).Contains("Student") || teacher.AspNetRoles.Select(y => y.Name).Contains("Parent") select new { teacher.Id }).ToList(); List <string> obled = new List <string>(); foreach (var sender in receiverId) { var notificationRecieve = new AspNetNotification_User(); notificationRecieve.NotificationID = NotificationID; notificationRecieve.UserID = sender.Id; notificationRecieve.Seen = false; db.AspNetNotification_User.Add(notificationRecieve); db.SaveChanges(); obled.Add(sender.Id); } //Message start //var classe = db.AspNetClasses.Where(p => p.Id == aspNetHomework.ClassId).FirstOrDefault(); Utility obj = new Utility(); obj.SMSToOffitialsp("Dear Principal, Parent Teacher Meeting is scheduled on" + aspNetParentTeacherMeeting.Date + " at " + aspNetParentTeacherMeeting.Time + "., Title : " + aspNetParentTeacherMeeting.Title + " IPC NGS Preschool, Aziz Avenue, Lahore."); obj.SMSToOffitialsa("Dear Admin, Parent Teacher Meeting is scheduled on " + aspNetParentTeacherMeeting.Date + " at " + aspNetParentTeacherMeeting.Time + "., Title : " + aspNetParentTeacherMeeting.Title + " IPC NGS Preschool, Aziz Avenue, Lahore."); AspNetMessage oob = new AspNetMessage(); oob.Message = "Dear Parent, The Parent Teacher Meeting is scheduled on " + aspNetParentTeacherMeeting.Date + " at " + aspNetParentTeacherMeeting.Time + ". Your regularity and punctuality will be appreciated. IPC NGS Preschool, Aziz Avenue, Lahore."; //oob.Message = "Parent Teacher Meeting is arranged, Title : " + aspNetParentTeacherMeeting.Title + "For discription login to Portal please"; obj.SendSMS(oob, obled); //Message end var PTMNOTIFICATIOn = new AspNetNotificationController(); PTMNOTIFICATIOn.PTMNotification(); db.SaveChanges(); transactionObj.Commit(); } catch (Exception ex) { transactionObj.Dispose(); } return(RedirectToAction("Index")); } return(View(aspNetParentTeacherMeeting)); }
public ActionResult Create(AspNetProject aspNetProject) { HttpPostedFileBase file = Request.Files["attachment"]; if (ModelState.IsValid) { if (file.ContentLength > 0) { var fileName = Path.GetFileName(file.FileName); var path = Path.Combine(Server.MapPath("~/Content/Projects"), fileName); file.SaveAs(path); aspNetProject.FileName = fileName; } else { aspNetProject.FileName = "-/-"; } if (db.AspNetProjects.Where(x => x.FileName == aspNetProject.FileName).Count() > 0) { TempData["Error"] = "Document already exists kindly change document name"; return(RedirectToAction("Create")); } else { db.AspNetProjects.Add(aspNetProject); db.SaveChanges(); } int ProjectID = db.AspNetProjects.Max(x => x.Id); List <string> StudentIDs = db.AspNetStudent_Subject.Where(s => s.SubjectID == aspNetProject.SubjectID).Select(s => s.StudentID).ToList(); foreach (var item in StudentIDs) { AspNetStudent_Project student_project = new AspNetStudent_Project(); student_project.StudentID = item; student_project.ProjectID = ProjectID; student_project.SubmissionStatus = false; student_project.SubmittedFileName = "-/-"; db.AspNetStudent_Project.Add(student_project); db.SaveChanges(); } /////////////////////////////////////////////////NOTIFICATION///////////////////////////////////// var NotificationObj = new AspNetNotification(); NotificationObj.Description = aspNetProject.Description; NotificationObj.Subject = aspNetProject.Title; NotificationObj.SenderID = User.Identity.GetUserId(); NotificationObj.Time = DateTime.Now; NotificationObj.Url = "/AspNetProject/Details/" + aspNetProject.Id; db.AspNetNotifications.Add(NotificationObj); db.SaveChanges(); var NotificationID = db.AspNetNotifications.Max(x => x.Id); var students = db.AspNetStudent_Project.Where(sp => sp.ProjectID == aspNetProject.Id).Select(x => x.StudentID).ToList(); var users = new List <String>(); foreach (var item in students) { var parentID = db.AspNetParent_Child.Where(x => x.ChildID == item).Select(x => x.ParentID).FirstOrDefault(); users.Add(parentID); } var allusers = users.Union(students); foreach (var receiver in allusers) { var notificationRecieve = new AspNetNotification_User(); notificationRecieve.NotificationID = NotificationID; notificationRecieve.UserID = Convert.ToString(receiver); notificationRecieve.Seen = false; db.AspNetNotification_User.Add(notificationRecieve); db.SaveChanges(); } /////////////////////////////////////Email///////////////////////////////////////// var subject = db.AspNetSubjects.Where(x => x.Id == aspNetProject.SubjectID).Select(x => x.SubjectName).FirstOrDefault(); var StudentEmail = db.AspNetStudent_Project.Where(sp => sp.ProjectID == aspNetProject.Id).Select(x => x.StudentID).ToList(); var StudentRoll = db.AspNetStudent_Project.Where(sp => sp.ProjectID == aspNetProject.Id).Select(x => x.AspNetUser.UserName).ToList(); string[] studentRollList = new string[StudentRoll.Count]; int c = 0; foreach (var item in StudentRoll) { studentRollList[c] = item; c++; } var StudentName = db.AspNetStudent_Project.Where(sp => sp.ProjectID == aspNetProject.Id).Select(x => x.AspNetUser.Name).ToList(); string[] studentNamelist = new string[StudentName.Count]; int i = 0; foreach (var item in StudentName) { studentNamelist[i] = item; i++; } var Users = new List <String>(); foreach (var item in StudentEmail) { Users.Add(db.AspNetParent_Child.Where(x => x.ChildID == item).Select(x => x.ParentID).FirstOrDefault()); } //Message start //var classe = db.AspNetClasses.Where(p => p.Id == aspNetHomework.ClassId).FirstOrDefault(); Utility obj = new Utility(); obj.SMSToOffitialsp("Dear Principal, Project has been assigned. IPC NGS Preschool, Aziz Avenue, Lahore."); obj.SMSToOffitialsa("Dear Admin, Project has been assigned. IPC NGS Preschool, Aziz Avenue, Lahore."); AspNetMessage oob = new AspNetMessage(); oob.Message = "Dear Parents, The thematic project has been assigned to your child on portal. IPC NGS Preschool, Aziz Avenue, Lahore.";// Title : " + aspNetProject.Title + ", For discription login to Portal please - obj.SendSMS(oob, Users); //Message end List <string> EmailList = new List <string>(); foreach (var sender in Users) { EmailList.Add(db.AspNetUsers.Where(x => x.Id == sender).Select(x => x.Email).FirstOrDefault()); } var j = 0; foreach (var toEmail in EmailList) { try { NotificationObj.Subject = studentNamelist[j] + "(" + studentRollList[j] + ") " + " Subject:" + subject + " Title:" + aspNetProject.Title; j++; string senderEmail = System.Configuration.ConfigurationManager.AppSettings["SenderEmail"].ToString(); string senderPassword = System.Configuration.ConfigurationManager.AppSettings["SenderPassword"].ToString(); SmtpClient client = new SmtpClient("smtpout.secureserver.net", 25); client.EnableSsl = false; client.Timeout = 100000; client.DeliveryMethod = SmtpDeliveryMethod.Network; client.UseDefaultCredentials = false; client.Credentials = new NetworkCredential(senderEmail, senderPassword); MailMessage mailMessage = new MailMessage(senderEmail, toEmail, NotificationObj.Subject, NotificationObj.Description); mailMessage.CC.Add(new MailAddress(senderEmail)); mailMessage.IsBodyHtml = true; mailMessage.BodyEncoding = UTF8Encoding.UTF8; client.Send(mailMessage); } catch (Exception ex) { } } return(RedirectToAction("Index")); } ViewBag.ClassID = new SelectList(db.AspNetClasses.Where(x => x.SessionID == SessionID), "Id", "ClassName"); ViewBag.SubjectID = new SelectList(db.AspNetSubjects.Where(x => x.AspNetClass.SessionID == SessionID), "Id", "SubjectName", aspNetProject.SubjectID); TempData["Create"] = "Project has been created"; return(View(aspNetProject)); }
public void SendSMS(AspNetMessage message, List <string> SenderList) { List <string> SMSList = new List <string>(); //SMSList = SenderList; foreach (var sender in SenderList) { SMSList.Add(db.AspNetUsers.Where(x => x.Id == sender).Select(x => x.PhoneNumber).FirstOrDefault()); } //var responseType = "xml"; //var id = "92300xxxxxxx"; //var pass = "******"; //var lang = "English"; //var mask = "Outreach"; //message.Message = "Please tel at this number 03329687357 that you receive that message"; //var Message = Server.UrlEncode(message.Message); //var address = "http://www.outreach.pk/api/sendsms.php/sendsms/url"; foreach (var number in SMSList) { //var url = address + "?id=" + id + "&pass="******"&msg=" + Message + "&to=" + number + "&mask=" + mask + "&lang=" + lang + "&type=" + responseType; //var url1 = "http://outreach.pk/api/sendsms.php/sendsms/url?id=ipcngsch&pass=ipc_ngs123&mask=Outreach&to=923329687357,923007583659&lang=English&msg=This%20is%20test%20message%20by%201st%204connect&type=xml"; //HttpClient client = new HttpClient(); //client.BaseAddress = new Uri(url1); ////set xmlhttp = CreateObject("MSXML2.ServerXMLHTTP") ////xmlhttp.open "POST", url, false ////xmlhttp.send "" ////msg = xmlhttp.responseText ////response.write(msg) ////set xmlhttp = nothing //HttpResponseMessage response = client.GetAsync("api/Values").Result; var url = "http://www.outreach.pk/api/sendsms.php/sendsms/url"; String result = ""; var newnum = ""; if (number != null) { var num = number.Substring(1); newnum = "92" + num; } String messageer = HttpUtility.UrlEncode(message.Message); String strPost = "id=ipcngsch&pass=ipc_ngs123&msg=" + messageer + "&to=" + newnum + "&mask=IPC-NGS&type=xml&lang=English"; StreamWriter myWriter = null; HttpWebRequest objRequest = (HttpWebRequest)WebRequest.Create(url); objRequest.Method = "POST"; objRequest.ContentLength = Encoding.UTF8.GetByteCount(strPost); objRequest.ContentType = "application/x-www-form-urlencoded"; try { myWriter = new StreamWriter(objRequest.GetRequestStream()); myWriter.Write(strPost); } catch (Exception e) { } finally { myWriter.Close(); } HttpWebResponse objResponse = (HttpWebResponse)objRequest.GetResponse(); using (StreamReader sr = new StreamReader(objResponse.GetResponseStream())) { result = sr.ReadToEnd(); // Close and clean up the StreamReader sr.Close(); } var messge = result; } }
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")); }