public ActionResult VerteilerSender(VerteilerFormModel vfm) { string mailEventSent = null; //string mailTo = null; if (vfm != null) { //suche aktuelles event Event aktuell = (from ev in db.Events where vfm.id == ev.id select ev).FirstOrDefault(); //Instanz erzeugen für Speicherung und Sammlung der Daten Eventinvitation ei = new Eventinvitation(); if (aktuell != null) { //Umkopieren der Daten //Event ID speichern ei.event_id = aktuell.id; //E-Mail des Empfängers speichern ei.email = vfm.Email; // Zeitstempel speichern ei.created = DateTime.Now; //Entitätsmenge speichern db.Eventinvitations.Add(ei); try { db.SaveChanges(); //Senden an E-Mail Empfänger durch E-Mail und Id mailEventSent = Helper.SendEventToEmail(vfm.Email, vfm.id, vfm.EventTitle); } catch (Exception) { ViewBag.errorDoppelteEmail = "An " + vfm.Email + " wurde diese E-Mail bereits verschickt!"; return(View(aktuell)); } } //Rückgabenachricht aus Methode SendEventToEmail an TempData übergeben TempData["ConfirmMessage"] = mailEventSent; return(View(aktuell)); } TempData["ErrorMessage"] = "Fehler mit der Datenbankverbindung"; return(View()); }
public ActionResult OpenInvite(Event ev, string ja, string nein) { if (ev != null) { //int eventid = ev.id; //int eventid = id; //Instanz von Eventinvitation erzeugen Eventinvitation evi = new Eventinvitation(); //instanz erzeugen und variable ivs zeigt darauf Invitationstatu ivs = new Invitationstatu(); ////bei Annehmen eventinvitation_id mit true speichern in den Invitationstatus if (ja != null) { evi.created = DateTime.Now; evi.email = User.Identity.Name; evi.event_id = ev.id; db.Eventinvitations.Add(evi); try { db.SaveChanges(); //id aus Eventinvitation holen //var idEventInvit = (from ei in db.Eventinvitations // where ei.event_id == eventid // select ei.id).FirstOrDefault(); ivs.created = DateTime.Now; ivs.eventinvitations_id = evi.id;//id von evi übernehmen //ivs.eventinvitations_id = idEventInvit; ivs.confirm = true; db.Invitationstatus.Add(ivs); db.SaveChanges(); TempData["ConfirmMessage"] = "Annahme wurde bestätigt"; return(RedirectToAction("EventDefaultUser")); } catch { //ViewBag.schonvorhanden = "Dieses Event wurde schon Angenommen/Abgelehnt"; TempData["ConfirmMessage"] = "Dieses Event wurde schon Angenommen/Abgelehnt"; return(RedirectToAction("OpenInvite")); } } //bei Ablehen eventinvitation_id mit false speichern in den Invitationstatus else if (nein != null) { evi.created = DateTime.Now; evi.email = User.Identity.Name; evi.event_id = ev.id; db.Eventinvitations.Add(evi); try { db.SaveChanges(); //id aus Eventinvitation holen //var idEventInvit = (from ei in db.Eventinvitations // where ei.event_id == eventid // select ei.id).FirstOrDefault(); //sammel für speichern in Invitation ivs.created = DateTime.Now; ivs.eventinvitations_id = evi.id;//id von evi übernehmen ivs.confirm = false; db.Invitationstatus.Add(ivs); db.SaveChanges(); TempData["ConfirmMessage"] = "Du hast abgelehnt"; return(RedirectToAction("EventDefaultUser")); } catch (Exception) { //ViewBag.schonvorhanden="Dieses Event wurde schon Angenommen/Abgelehnt"; TempData["ConfirmMessage"] = "Dieses Event wurde schon Angenommen/Abgelehnt"; return(RedirectToAction("OpenInvite")); } } } TempData["ErrorMessage"] = "Verbindungsproblem mit der Datenbank"; return(RedirectToAction("OpenInvite")); }