public ActionResult EditSendGrid(DbTables.SendGridAPI model) { try { var SendGrid = new DbTables.SendGridAPI(); var SendGridAPI = _context.SendGridAPI.ToList(); if (SendGridAPI.Any()) { SendGrid = SendGridAPI.First(); SendGrid.PassWord = model.PassWord; SendGrid.UserName = model.UserName; } else { SendGrid.PassWord = model.PassWord; SendGrid.UserName = model.UserName; _context.SendGridAPI.Add(SendGrid); } _context.SaveChanges(); ViewBag.Success = "Sendgrid API variabler ble sukessfult oppdatert"; return(PartialView("_SendGridPartial", _context.SendGridAPI.First())); } catch (EntityException ex) { ViewBag.Error = "Error:" + ex.Message; return(PartialView("_SendGridPartial", _context.SendGridAPI.First())); } }
/// <summary> /// sends password resetting email /// </summary> /// <param name="user">user that needs password reset</param> /// <param name="callbackUrl">url where he can reset password</param> /// <returns>returns true or false based on success of sending the email</returns> public bool SendEmail(ApplicationUser user, string callbackUrl) { try { var mailMsg = new MailMessage(); // To mailMsg.To.Add(new MailAddress(user.Email, user.Fname + " " + user.Lname)); // From mailMsg.From = new MailAddress("*****@*****.**", "Butterfly Friends"); // Subject and multipart/alternative Body mailMsg.Subject = "Passord resetting"; //Request accepted var text = "Ditt passord kan resettes her: " + callbackUrl + "\nDersom du ikke ba om dette så ignorer denne mailen.\n\nMvh, \nButterfly Friends"; var html = @"<p>Ditt passord kan resettes <a href=" + callbackUrl + ">her</a>.<br>Om du ikke ba om dette så ignorer denne mailen.<br><br>Mvh,<br>Butterfly Friends</p>"; mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(text, null, MediaTypeNames.Text.Plain)); mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(html, null, MediaTypeNames.Text.Html)); // Init SmtpClient and send var smtpClient = new SmtpClient("smtp.sendgrid.net", Convert.ToInt32(587)); var SendGridAPIList = _context.SendGridAPI.ToList(); var SendGridAPI = new DbTables.SendGridAPI(); if (SendGridAPIList.Any()) { SendGridAPI = SendGridAPIList.First(); if (!SendGridAPI.Enabeled) { return(false); } } else { return(false); } var credentials = new NetworkCredential(SendGridAPI.UserName, SendGridAPI.PassWord); smtpClient.Credentials = credentials; smtpClient.Send(mailMsg); //send email } catch (Exception) { return(false); } return(true); //email successfully sent }
/// <summary> /// Sends an email with reciept information /// </summary> /// <param name="message">Message in reciept</param> /// <param name="messageHTML">Message without html</param> /// <param name="subject">Subject of email</param> /// <param name="recieverEmail">Recipient email</param> /// <param name="recieverName">Name of recipient</param> /// <returns>Returns true or false based on wether email was sent or not</returns> public bool SendEmail(string message, string messageHTML, string subject, string recieverEmail, string recieverName) { try { var mailMsg = new MailMessage(); // To mailMsg.To.Add(new MailAddress(recieverEmail, recieverName)); // From mailMsg.From = new MailAddress("*****@*****.**", "Butterfly Friends"); // Subject and multipart/alternative Body mailMsg.Subject = subject; if (message != "") { var text = message; var html = messageHTML; mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(text, null, MediaTypeNames.Text.Plain)); mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(html, null, MediaTypeNames.Text.Html)); } // Init SmtpClient and send var smtpClient = new SmtpClient("smtp.sendgrid.net", Convert.ToInt32(587)); var SendGridAPIList = _context.SendGridAPI.ToList(); var SendGridAPI = new DbTables.SendGridAPI(); if (SendGridAPIList.Any()) { SendGridAPI = SendGridAPIList.First(); } else { return(false); } if (!SendGridAPI.Enabeled) { return(false); } var credentials = new NetworkCredential(SendGridAPI.UserName, SendGridAPI.PassWord); smtpClient.Credentials = credentials; smtpClient.Send(mailMsg); } catch (Exception) { return(false); } return(true); }
// GET: Admin/Various /// <summary> /// Index view of various, check if various database elements are actually added and then add these to the model if /// they exist /// </summary> /// <returns>Various index view</returns> public ActionResult Index() { var carouselObj = new DbTables.Carousel(); var GoogleCap = new DbTables.GoogleCaptchaAPI(); var GoogleCapList = _context.GoogleCaptchaAPI.ToList(); if (GoogleCapList.Any()) { GoogleCap = GoogleCapList.First(); } var SendG = new DbTables.SendGridAPI(); var SendgridList = _context.SendGridAPI.ToList(); if (SendgridList.Any()) { SendG = SendgridList.First(); } var Stripe = new DbTables.StripeAPI(); var StripeList = _context.StripeAPI.ToList(); if (StripeList.Any()) { Stripe = StripeList.First(); } var Facebook = new DbTables.Facebook(); var FacebookList = _context.Facebook.ToList(); if (FacebookList.Any()) { Facebook = FacebookList.First(); } var Twitter = new DbTables.Twitter(); var TwitterList = _context.Twitter.ToList(); if (TwitterList.Any()) { Twitter = TwitterList.First(); } var Disqus = new DbTables.Disqus(); var DisqusList = _context.Disqus.ToList(); if (DisqusList.Any()) { Disqus = DisqusList.First(); } var About = new DbTables.Info(); var AboutList = _context.About.ToList(); if (AboutList.Any()) { About = AboutList.First(); } var carousel = _context.Carousel.ToList(); if (carousel.Any()) { carouselObj = carousel.First(); } var Terms = new DbTables.TermsOfUse(); var TermsList = _context.TermsOfUse.ToList(); if (TermsList.Any()) { Terms = TermsList.First(); } var Background = new DbTables.BackgroundImage(); var BackgroundList = _context.BackgroundImage.ToList(); if (BackgroundList.Any()) { Background = BackgroundList.First(); } var model = new VariousModel { GoogleCaptchaAPI = GoogleCap, SendGridAPI = SendG, Terms = Terms, Carousel = carouselObj, About = About, StripeAPI = Stripe, Twitter = Twitter, Facebook = Facebook, Background = Background, Disqus = Disqus }; return(View(model)); }
/// <summary> /// Sends email /// </summary> /// <returns>error or success message</returns> public ActionResult SendEmail() { var emailHTML = Request.Unvalidated.Form["html"]; //email text var emailSubject = Request.Form["subject"]; var recipients = Request.Form["recipients"].Split(','); var allsponsors = Request.Form["allsponsors"]; var allemployees = Request.Form["allemployees"]; if (!string.IsNullOrEmpty(emailHTML) && !string.IsNullOrEmpty(emailSubject)) { if ((recipients[0] == "") && (recipients.Length == 1) && (allsponsors == null) && (allemployees == null)) { return(Json(new { error = true, message = "Error: Ingen mottakere", success = false })); } //no recievers sent in try { var mailMsg = new MailMessage(); //mailmessage object if (Request.Files.Count > 0) { // Get all files from Request object var files = Request.Files; for (var i = 0; i < files.Count; i++) { var file = files[i]; mailMsg.Attachments.Add(new Attachment(file.InputStream, Path.GetFileName(file.FileName), file.ContentType)); } } // To if ((allsponsors != null) && (allemployees != null)) //add everyone in the database { var results = _context.Users.ToList(); foreach (var result in results) { mailMsg.To.Add(new MailAddress(result.Email, result.Fname + " " + result.Lname)); } } else if (allsponsors != null) //add all sponsors { var sponsors = (from s in _context.Users where s.Employee == null select s).ToList(); foreach (var sponsor in sponsors) { mailMsg.To.Add(new MailAddress(sponsor.Email, sponsor.Fname + " " + sponsor.Lname)); } } else if (allemployees != null) //add all employees { var employees = (from s in _context.Users where s.Employee != null select s).ToList(); foreach (var employee in employees) { mailMsg.To.Add(new MailAddress(employee.Email, employee.Fname + " " + employee.Lname)); } } if (!((recipients[0] == "") && (recipients.Length == 1))) //there's recipients in recipient list { foreach (var recipient in recipients) { mailMsg.To.Add(new MailAddress(recipient)); } } // From mailMsg.From = new MailAddress("*****@*****.**", "Butterfly Friends"); mailMsg.Subject = "Email"; var html = emailHTML; mailMsg.Body = html; mailMsg.IsBodyHtml = true; // Init SmtpClient and send var smtpClient = new SmtpClient("smtp.sendgrid.net", Convert.ToInt32(587)); var SendGridAPIList = _context.SendGridAPI.ToList(); var SendGridAPI = new DbTables.SendGridAPI(); if (SendGridAPIList.Any()) { SendGridAPI = SendGridAPIList.First(); } else { return(Json(new { error = true, message = "SendGrid er ikke konfigurert", success = false })); } if (!SendGridAPI.Enabeled) //sendgrid is disabeled { return(Json(new { error = true, message = "SendGrid er slått av", success = false })); } var credentials = new NetworkCredential(SendGridAPI.UserName, SendGridAPI.PassWord); smtpClient.Credentials = credentials; smtpClient.Send(mailMsg); return(Json(new { error = false, message = "Emailen ble sendt", success = true })); } catch (Exception ex) { return(Json(new { error = true, message = "Error: " + ex.Message, success = false })); } } return(Json(new { error = true, message = "Kan ikke sende en tom email", success = false })); }
/// <summary> /// send email /// </summary> /// <param name="request"></param> /// <param name="callbackUrl"></param> /// <param name="message"></param> /// <returns></returns> public bool SendEmail(DbTables.MembershipRequest request, string callbackUrl, string message) { try { var mailMsg = new MailMessage(); // To mailMsg.To.Add(new MailAddress(request.Email, request.Fname + " " + request.Lname)); // From mailMsg.From = new MailAddress("*****@*****.**", "Butterfly Friends"); // Subject and multipart/alternative Body if (callbackUrl == null) //no callbackurl, request is declined { mailMsg.Subject = "Medlemskap avist"; if (message != "") { var text = "Vi beklager å måtte melde at din forespørsel om medlamskap har blitt avist. \n\n" + message + "\n\nMvh, \nButterfly Friends"; var html = @"<p>Vi beklager å måtte melde at din forespørsel om medlamskap har blitt avist.<br><br>" + message + "<br><br>Mvh,<br>Butterfly Friends</p>"; mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(text, null, MediaTypeNames.Text.Plain)); mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(html, null, MediaTypeNames.Text.Html)); } else { var text = "Vi beklager å måtte melde at din forespørsel om medlamskap har blitt avist. \n\nMvh, \nButterfly Friends"; var html = @"<p>Vi beklager å måtte melde at din forespørsel om medlamskap har blitt avist.<br><br>Mvh,<br>Butterfly Friends</p>"; mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(text, null, MediaTypeNames.Text.Plain)); mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(html, null, MediaTypeNames.Text.Html)); } } else { mailMsg.Subject = "Medlemskap akseptert"; //Request accepted if (message != "") { var text = "Ditt medlemskap har blitt akseptert og vi er veldig glad for å ha deg med på laget! \n\nDitt passord kan settes her: " + callbackUrl + "\nDette kan også byttes på dine profilsider.\n\n" + message + "\n\nMvh, \nButterfly Friends"; var html = @"<p>Ditt medlemskap har blitt akseptert og vi er veldig glad for å ha deg med på laget!<br><br>Ditt passord kan settes <a href=" + callbackUrl + ">her</a>.<br>Dette kan ogsp byttes på dine profilsider.<br><br>" + message + "<br><br>Mvh,<br>Butterfly Friends</p>"; mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(text, null, //add both html and normal bodies to email MediaTypeNames.Text.Plain)); mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(html, null, MediaTypeNames.Text.Html)); } else { var text = "Ditt medlemskap har blitt akseptert og vi er veldig glad for å ha deg med på laget! \n\nDitt passord kan settes her: " + callbackUrl + "\nDette kan også byttes på dine profilsider.\n\nMvh, \nButterfly Friends"; var html = @"<p>Ditt medlemskap har blitt akseptert og vi er veldig glad for å ha deg med på laget!<br><br>Ditt kan passord settes <a href=" + callbackUrl + ">her</a>.<br>Dette kan også byttes på dine profilsider.<br><br>Mvh,<br>Butterfly Friends</p>"; mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(text, null, MediaTypeNames.Text.Plain)); mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(html, null, MediaTypeNames.Text.Html)); } } // Init SmtpClient and send var smtpClient = new SmtpClient("smtp.sendgrid.net", Convert.ToInt32(587)); var SendGridAPIList = _context.SendGridAPI.ToList(); var SendGridAPI = new DbTables.SendGridAPI(); if (SendGridAPIList.Any()) { SendGridAPI = SendGridAPIList.First(); if (!SendGridAPI.Enabeled) { return(true); } } else { return(false); } var credentials = new NetworkCredential(SendGridAPI.UserName, SendGridAPI.PassWord); smtpClient.Credentials = credentials; smtpClient.Send(mailMsg); //send email } catch (Exception) { return(false); } return(true); //email successfully sent }