public ActionResult Validate(int id)
        {
            using (MeetsEntities con = new MeetsEntities())
            {
                RegistrierFormModel rfm = new RegistrierFormModel();
                //email anhand der Id ermitteln
                rfm.Email = (from m in con.Members
                             where m.id == id
                             select m.email).FirstOrDefault();
                //id durch Email ermitteln
                rfm.IDMember = (from m in con.Members
                                where m.email == rfm.Email
                                select m.id).FirstOrDefault();

                Membervalidation mfm = new Membervalidation();
                mfm.created   = DateTime.Now;
                mfm.member_id = rfm.IDMember;

                int valid = (from m in con.Membervalidations
                             where m.member_id == mfm.member_id
                             select m.id).FirstOrDefault();

                if (valid > 0)
                {
                    ViewBag.valErr = "Deine E-Mail ist schon validiert.";
                    return(View());
                }
                else
                {
                    con.Membervalidations.Add(mfm);
                    con.SaveChanges();
                    return(View());
                }
            }
        }
        public ActionResult ValidateNew(int id)
        {
            using (MeetsEntities con = new MeetsEntities())
            {
                RegistrierFormModel rfm = new RegistrierFormModel();
                rfm.Email = (from m in con.Members
                             where m.id == id
                             select m.email).FirstOrDefault();

                //id durch Email ermitteln
                rfm.IDMember = (from m in con.Members
                                where m.email == rfm.Email
                                select m.id).FirstOrDefault();
                return(View(rfm));
            }
        }
Ejemplo n.º 3
0
        public ActionResult RegistrierungSpeichern(RegistrierFormModel rfm)
        {
            //Überprüfung des Alters der Benutzer muß 18 Jahre alt sein
            DateTime years18 = DateTime.Now.AddYears(-18);

            if (years18 < rfm.Geburtsdatum)
            {
                //Fehlermeldung an View wenn Benutzer nicht 18
                ViewBag.ErrorMesage = "Leider nicht volljährig";
                return(View("Registrieren"));
            }
            try
            {
                //Daten in Datenbank der Tabelle Members hizufügen über Store Prozedure
                using (MeetsEntities cont = new MeetsEntities())
                {
                    cont.sp_RegisterUser(rfm.Email, Helper.GetHash(rfm.Passwort), rfm.Geburtsdatum);
                }
                //Mail an neuen Benutzer
                using (MeetsEntities con = new MeetsEntities())
                {
                    //Hohle Id aus Datenbank Tabelle Member über Angemeldete E-Mail
                    rfm.IDMember = (from m in con.Members
                                    where rfm.Email == m.email
                                    select m.id).FirstOrDefault();
                }
                string antwort = null;
                //Mailversand an neuen Benutzer mit Übergabe Mailadresse und vorher ermittelte ID aus Datenbank des neuen Benutzers
                antwort = Helper.SendMailRegTo(rfm.Email, rfm.IDMember);
                //Rückmeldung von Mailversand Methode
                ViewBag.Mailversand = antwort;
                //Toaster Meldung registriert aber noch nicht validiert
                TempData["ConfirmMessage"] = "Du wurdest Registriert musst aber noch deine E-Mail bestätigen.";
                return(RedirectToAction("Login", "Login"));
            }
            catch (Exception)
            {
                //Fehlermeldung an View
                ViewBag.ErrorDatabase = "Email schon vergeben.";
                return(View("Registrieren"));
            }
        }