public ActionResult Register([Bind(Prefix = "item1")] AppUser item, [Bind(Prefix = "item2")] AppUserDetail item2)
        {
            if (!ModelState.IsValid)
            {
                return(View());
            }

            string mesaj = arep.CheckCredentials(item.UserName, item.Email, out bool varmi);

            if (varmi == false)
            {
                item.Role = UserRole.Member;
                arep.Add(item);
                item2.AppUser = item;
                adrep.Add(item2);

                MailSender.Send(item.Email, body: $"{"https://localhost:44377/Home/RegisterOnay/"}{item.ActivationCode}", subject: "Doğrulama Kodu");

                ViewBag.mailOnay = "Mail adresinize gelen aktivasyon linkini tıklayın.";

                return(View());
            }

            ViewBag.ZatenVar = mesaj;

            return(View());
        }
 public ActionResult Login(LoginDTO credential)
 {
     if (ModelState.IsValid)
     {
         if (_appUserRepository.CheckCredentials(credential.UserName, credential.Password))
         {
             AppUser user = _appUserRepository.FindByUserName(credential.UserName);
             if (user.Status != Status.Passive)
             {
                 if (user.Role == Role.Admin)
                 {
                     string cookie = user.UserName;
                     FormsAuthentication.SetAuthCookie(cookie, true);
                     Session["UserName"]  = user.UserName;
                     Session["ImagePath"] = user.UserImage;
                     return(Redirect("/Admin/Home/Index"));
                 }
                 else if (user.Role == Role.Author)
                 {
                     string cookie = user.UserName;
                     FormsAuthentication.SetAuthCookie(cookie, true);
                     Session["UserName"]  = user.UserName;
                     Session["ImagePath"] = user.UserImage;
                     return(Redirect("/Author/Home/Index"));
                 }
                 else
                 {
                     string cookie = user.UserName;
                     FormsAuthentication.SetAuthCookie(cookie, true);
                     Session["UserName"]  = user.UserName;
                     Session["ImagePath"] = user.UserImage;
                     return(Redirect("/Member/Home/Index"));
                 }
             }
             else
             {
                 ViewData["error"] = "Username or password are wrong..!";
                 return(View());
             }
         }
         else
         {
             ViewData["error"] = "Username or password are wrong..!";
             return(View());
         }
     }
     else
     {
         TempData["class"] = "custom-hide";
         return(View());
     }
 }
示例#3
0
 [HttpPost, ValidateAntiForgeryToken]//kullanıcıya gittiğini anlıyor tokken sayesinde güvenli bir şekiilde login oluyor. Uçtan uca şifreleme oluyor.
 public ActionResult Login(LoginDTO credential)
 {
     if (ModelState.IsValid)                                                                //model uygun mu değil mi bakıyor.
     {
         if (_appUserRepository.CheckCredentials(credential.UserName, credential.Password)) //loginDTO 'daki username ile passwordu getir
         {
             AppUser user = _appUserRepository.FinByUserName(credential.UserName);
             if (user.Status != Status.Passive)//pasif haricindekiler kabulumdur.
             {
                 if (user.Role == Role.Admin)
                 {
                     string cookie = user.UserName;                   //cookie bbizim burada proportylerimizi tutuyor.biyere yorum yazacağımızda fotoğrafımızı adımı getiriyor.
                     FormsAuthentication.SetAuthCookie(cookie, true); //user name'i cookie çökeltmiş olduk.sayfalar arasında kullanıcın bilgilerini taşıyamaya yardımcı olurlar.
                     Session["UserName"]  = user.UserName;
                     Session["ImagePath"] = user.UserImage;
                     return(Redirect("/Admin/Home/Index"));
                 }
                 else if (user.Role == Role.Author)
                 {
                     string cookie = user.UserName;
                     FormsAuthentication.SetAuthCookie(cookie, true);
                     Session["UserName"]  = user.UserName;
                     Session["ImagePath"] = user.UserImage;
                     return(Redirect("/Admin/Home/Index"));
                 }
                 else//member için bir else if koymak yerine son kalan member olduğu için member için yapacak işlemlerini
                 {
                     string cookie = user.UserName;
                     Session["UserName"]  = user.UserName;
                     Session["ImagePath"] = user.UserImage;
                     return(Redirect("/Admin/Home/Index"));
                 }
             }
             else//passive ise hata mesajı çıkaracak
             {
                 ViewData["error"] = "Username or password are wrong..!";
                 return(View());
             }
         }
         else//password ile username' hatalıysa çıkacak olan hata mesajı.
         {
             ViewData["error"] = "Username or password are wrong..!";
             return(View());
         }
     }
     else//gönderilen model hatalıysa çıkacak olan hata mesajı
     {
         TempData["class"] = "custom-hide";
         return(View());
     }
 }
示例#4
0
        public ActionResult Register([Bind(Prefix = "item1")] AppUser item, [Bind(Prefix = "item2")] AppUserDetail item2)
        {
            apRep.CheckCredentials(item.UserName, item.Email, out bool varmi);
            if (varmi == false)
            {
                apRep.Add(item);
                item2.AppUser = item;
                apdRep.Add(item2);

                MailSender.Send(item.Email, body: $"{"http://localhost:60442/Home/RegisterOnay/"}{item.ActivationCode}", subject: "Doğrulama Kodu");

                ViewBag.mailOnay = "Aktivasyon Linki Gonderildi";

                return(View());
            }

            ViewBag.ZatenVar = "Hesap Zatem Var";

            return(View());
        }