Example #1
0
        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());
        }
Example #2
0
        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"));
        }