public bool SendMail(string emailAddress, string blobUrl, string name) { try { MailMessage mail = new MailMessage(); SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com"); mail.From = new MailAddress("*****@*****.**"); mail.To.Add(emailAddress); mail.Subject = "Din VM-Tipsrad"; mail.IsBodyHtml = true; mail.Body = GetEmailBody(blobUrl, name); SmtpServer.Port = 587; string password = ConfigurationManager.AppSettings["MailPassword"]; SmtpServer.Credentials = new System.Net.NetworkCredential("masterskapstips", password); SmtpServer.EnableSsl = true; SmtpServer.Send(mail); string logText = string.Format("Email sent to: {0}, name: {1}", emailAddress, name); Log4NetLogic.Log(Log4NetLogic.LogLevel.INFO, logText, "SendMail"); } catch (Exception e) { string logText = string.Format("Email is: {0}. Name: {1}.", emailAddress, name); Log4NetLogic.Log(Log4NetLogic.LogLevel.ERROR, logText, "SendMail", e); return(false); } return(true); }
public string SavePDF(PdfDocument document, string name) { //string accountKey = "NADhxvTU40qlYify/eTZR+li4xkIaIUsbx8Kgz+SKUEoXmiVomKVIVvCTQjCSd+xyVNLy5x44e8nu44kl6FO7w=="; try { CloudStorageAccount account = GetStorageAccount(); CloudBlobClient client = account.CreateCloudBlobClient(); CloudBlobContainer sampleContainer = client.GetContainerReference("tips"); sampleContainer.CreateIfNotExists(); name = NameWithoutSpace(name); string fileName = string.Format("{0}_{1}.pdf", name, Guid.NewGuid()); CloudBlockBlob blob = sampleContainer.GetBlockBlobReference(fileName); using (MemoryStream myStream = new MemoryStream()) { document.Save(myStream, false); blob.UploadFromStream(myStream); } return(blob.SnapshotQualifiedStorageUri.PrimaryUri.ToString()); } catch (Exception e) { Log4NetLogic.Log(Log4NetLogic.LogLevel.ERROR, "An error in:", "SavePDF", e); return("Något gick fel när PDF skulle sparas."); } }
public static bool SaveUpdatedPaymentStatus(List <int> idsWhoHasPayed) { try { using (var db = new FotbollsTipsModel()) { foreach (var item in idsWhoHasPayed) { var tipsData = (from hits in db.TipsDatas where hits.Id == item select hits).FirstOrDefault(); tipsData.HasPayed = true; } db.SaveChanges(); } return(true); } catch (Exception e) { Log4NetLogic.Log(Log4NetLogic.LogLevel.ERROR, "An error in", "SaveUpdatedPaymentStatus", e); return(false); } }
public static bool UpdateRandomValue(string name, string value) { try { using (var db = new FotbollsTipsModel()) { var result = (from hits in db.TipsRandomValues where hits.Name == name select hits).FirstOrDefault(); result.Value = value; result.Modified = DateTime.Now; db.SaveChanges(); return(true); } } catch (Exception e) { Log4NetLogic.Log(Log4NetLogic.LogLevel.ERROR, "An error in", "UpdateRandomValue", e); return(false); } }
public static List <TipsData> GetDataForPresentation() { try { // Get raw data List <TipsData> rawData = GetTipsRawData(); // Calculate points List <TipsData> calculatedPoints = CalculatePoints(rawData); // Sort list by points List <TipsData> sortedList = calculatedPoints.OrderByDescending(o => o.Poäng).ToList(); // Manipulate text string List <TipsData> returnList = ManipulateTextStrings(sortedList); return(returnList); } catch (Exception e) { Log4NetLogic.Log(Log4NetLogic.LogLevel.ERROR, "An error in", "GetDataForPresentation", e); return(null); } }
private static void SaveTipsDataToLogFile(TipsData t) { var logText = string.Format("Namn: {0}, Telefon: {1}, mail: {2}. ", t.Namn, t.PhoneNumber, t.Email); // - - - - - DataLogic_SaveTipsDataToLogFile.txt - Code area starts - - - - - - - logText += string.Format("Frankrike_Sydkorea: {0},", t.Frankrike_Sydkorea); logText += string.Format("Tyskland_Kina: {0},", t.Tyskland_Kina); logText += string.Format("Spanien_Sydafrika: {0},", t.Spanien_Sydafrika); logText += string.Format("Norge_Nigeria: {0},", t.Norge_Nigeria); logText += string.Format("Australien_Italien: {0},", t.Australien_Italien); logText += string.Format("Brasilien_Jamaica: {0},", t.Brasilien_Jamaica); logText += string.Format("England_Skottland: {0},", t.England_Skottland); logText += string.Format("Argentina_Japan: {0},", t.Argentina_Japan); logText += string.Format("Kanada_Kamerun: {0},", t.Kanada_Kamerun); logText += string.Format("Nya Zeeland_Nederländerna: {0},", t.NyaZeeland_Nederländerna); logText += string.Format("Chile_Sverige: {0},", t.Chile_Sverige); logText += string.Format("Usa_Thailand: {0},", t.Usa_Thailand); logText += string.Format("Nigeria_Sydkorea: {0},", t.Nigeria_Sydkorea); logText += string.Format("Tyskland_Spanien: {0},", t.Tyskland_Spanien); logText += string.Format("Frankrike_Norge: {0},", t.Frankrike_Norge); logText += string.Format("Australien_Brasilien: {0},", t.Australien_Brasilien); logText += string.Format("Sydafrika_Kina: {0},", t.Sydafrika_Kina); logText += string.Format("Japan_Skottland: {0},", t.Japan_Skottland); logText += string.Format("Jamaica_Italien: {0},", t.Jamaica_Italien); logText += string.Format("England_Argentina: {0},", t.England_Argentina); logText += string.Format("Nederländerna_Kamerun: {0},", t.Nederländerna_Kamerun); logText += string.Format("Kanada_Nya Zeeland: {0},", t.Kanada_NyaZeeland); logText += string.Format("Sverige_Thailand: {0},", t.Sverige_Thailand); logText += string.Format("Usa_Chile: {0},", t.Usa_Chile); logText += string.Format("Kina_Spanien: {0},", t.Kina_Spanien); logText += string.Format("Sydafrika_Tyskland: {0},", t.Sydafrika_Tyskland); logText += string.Format("Nigeria_Frankrike: {0},", t.Nigeria_Frankrike); logText += string.Format("Sydkorea_Norge: {0},", t.Sydkorea_Norge); logText += string.Format("Italien_Brasilien: {0},", t.Italien_Brasilien); logText += string.Format("Jamaica_Australien: {0},", t.Jamaica_Australien); logText += string.Format("Japan_England: {0},", t.Japan_England); logText += string.Format("Skottland_Argentina: {0},", t.Skottland_Argentina); logText += string.Format("Nederländerna_Kanada: {0},", t.Nederländerna_Kanada); logText += string.Format("Kamerun_Nya Zeeland: {0},", t.Kamerun_NyaZeeland); logText += string.Format("Sverige_Usa: {0},", t.Sverige_Usa); logText += string.Format("Thailand_Chile: {0},", t.Thailand_Chile); // - - - - - DataLogic_SaveTipsDataToLogFile.txt - Code area ends - - - - - - - Log4NetLogic.Log(Log4NetLogic.LogLevel.INFO, logText, "SaveTipsDataToLogFile"); }
public static string GetRandomValue(string name) { try { using (var db = new FotbollsTipsModel()) { var result = (from hits in db.TipsRandomValues where hits.Name == name select hits).FirstOrDefault(); return(result.Value); } } catch (Exception e) { Log4NetLogic.Log(Log4NetLogic.LogLevel.ERROR, "An error in", "GetRandomValue", e); throw; } }
public static SavedTipsDataResult SaveNewTipsData(TipsData tipsData) { try { SaveTipsDataToLogFile(tipsData); } catch (Exception) { // Do nothing, since log to textfile does not work } try { using (var db = new FotbollsTipsModel()) { db.TipsDatas.Add(tipsData); db.SaveChanges(); return(new SavedTipsDataResult() { IdOfTipsdata = tipsData.Id, SuccessedSave = true }); } } catch (Exception e) { Log4NetLogic.Log(Log4NetLogic.LogLevel.ERROR, "An error in", "SaveNewTipsData", e); return(new SavedTipsDataResult() { IdOfTipsdata = 0, SuccessedSave = false }); } }
public static ParticipateResult ParticipateInTips(FormCollection col) { try { TipsData newTipsData = new TipsData() { EntryDate = DateTime.Now, Poäng = 0, HasPayed = false, Namn = col["myname"], PhoneNumber = col["myphonenumber"], Email = col["myemail"], Finallag1 = col["finalteam1"], Finallag2 = col["finalteam2"], Vinnare = col["winner"], // - - - - - BusinessLogic_ParticipateInTips.txt - Code area starts - - - - - - - Frankrike_Sydkorea = GetGameResult(col, "frasyd"), Tyskland_Kina = GetGameResult(col, "tyskin"), Spanien_Sydafrika = GetGameResult(col, "spasyd"), Norge_Nigeria = GetGameResult(col, "nornig"), Australien_Italien = GetGameResult(col, "ausita"), Brasilien_Jamaica = GetGameResult(col, "brajam"), England_Skottland = GetGameResult(col, "engsko"), Argentina_Japan = GetGameResult(col, "argjap"), Kanada_Kamerun = GetGameResult(col, "kankam"), NyaZeeland_Nederländerna = GetGameResult(col, "nyaned"), Chile_Sverige = GetGameResult(col, "chisve"), Usa_Thailand = GetGameResult(col, "usatha"), Nigeria_Sydkorea = GetGameResult(col, "nigsyd"), Tyskland_Spanien = GetGameResult(col, "tysspa"), Frankrike_Norge = GetGameResult(col, "franor"), Australien_Brasilien = GetGameResult(col, "ausbra"), Sydafrika_Kina = GetGameResult(col, "sydkin"), Japan_Skottland = GetGameResult(col, "japsko"), Jamaica_Italien = GetGameResult(col, "jamita"), England_Argentina = GetGameResult(col, "engarg"), Nederländerna_Kamerun = GetGameResult(col, "nedkam"), Kanada_NyaZeeland = GetGameResult(col, "kannya"), Sverige_Thailand = GetGameResult(col, "svetha"), Usa_Chile = GetGameResult(col, "usachi"), Kina_Spanien = GetGameResult(col, "kinspa"), Sydafrika_Tyskland = GetGameResult(col, "sydtys"), Nigeria_Frankrike = GetGameResult(col, "nigfra"), Sydkorea_Norge = GetGameResult(col, "sydnor"), Italien_Brasilien = GetGameResult(col, "itabra"), Jamaica_Australien = GetGameResult(col, "jamaus"), Japan_England = GetGameResult(col, "japeng"), Skottland_Argentina = GetGameResult(col, "skoarg"), Nederländerna_Kanada = GetGameResult(col, "nedkan"), Kamerun_NyaZeeland = GetGameResult(col, "kamnya"), Sverige_Usa = GetGameResult(col, "sveusa"), Thailand_Chile = GetGameResult(col, "thachi"), // - - - - - BusinessLogic_ ParticipateInTips.txt - Code area ends - - - - - - - }; // Save to database var saveResultOfTipsData = DataLogic.SaveNewTipsData(newTipsData); bool emailSent = false; var storageWorker = new StorageLogic(); if (saveResultOfTipsData.SuccessedSave) { // Create PDF var pdfWorder = new PdfLogic(); PdfDocument pdfDocument = pdfWorder.SaveTipsDatas(newTipsData); #region During development //// During development - Store locally on computer //string filePath = GetFileNameAndPath("", false); //pdfDocument.Save(filePath); //Process.Start(filePath); //return true; #endregion if (pdfDocument != null) { // Store in blob storage string imagePath = storageWorker.SavePDF(pdfDocument, newTipsData.Namn); // Save file path to PDF TipsPathToPDF pathToPdf = new TipsPathToPDF() { PathToPDF = imagePath, TipsData_SoftFK = saveResultOfTipsData.IdOfTipsdata }; var imagePathSaved = DataLogic.SaveNewTipsDataImagePath(pathToPdf); //// Send email //string getEmail = col["getemail"]; ////MNTODO Ta bort if vid deploy //if (getEmail.ToLower() == "ja") //{ var mailWorker = new MailLogic(); emailSent = mailWorker.SendMail(newTipsData.Email, pathToPdf.PathToPDF, col["myname"]); //} } } //var sendSms = GetRandomValue("SendSms"); //if (sendSms == "1") //{ // string message = string.Format("'{0}' har lämnat en tipsrad. Mail skickat: {1}. Mailadress: {2}.", col["myname"], emailSent, col["myemail"]); // storageWorker.SendSms(message); //} //return new ParticipateResult(true, emailSent, newTipsData.Email); return(new ParticipateResult(saveResultOfTipsData.SuccessedSave, emailSent, newTipsData.Email)); } catch (Exception e) { Log4NetLogic.Log(Log4NetLogic.LogLevel.ERROR, "An error in: ", "ParticipateInTips", e); return(new ParticipateResult(false, false, "")); } }