[ValidateAntiForgeryToken] //Güvenlik testleri için public async Task <ActionResult> Login(LoginViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var userManager = MemberShipTools.NewUserManager(); var user = await userManager.FindAsync(model.Username, model.Password); if (user == null) { ModelState.AddModelError(string.Empty, "Böyle bir kullanıcı bulunamadı"); return(View(model)); } //Kullanıcı varsa sigin ile oturum açılır var authManager = HttpContext.GetOwinContext().Authentication; //Authentication işlemini düzenlemek için kullanılır var userIdentity = await userManager.CreateIdentityAsync(user, DefaultAuthenticationTypes.ApplicationCookie); //kimlik oluşturulur authManager.SignIn(new AuthenticationProperties { IsPersistent = model.RememberMe //rememberme seçili ise kalıcı bir giriş oluşturulur }, userIdentity); return(RedirectToAction("Index", "Home")); }
// GET: Admin public ActionResult Index() { var roles = MemberShipTools.NewRoleManager().Roles.ToList(); var userManager = MemberShipTools.NewUserManager(); var users = userManager.Users.ToList().Select(x => new UsersViewModel { Email = x.Email, Name = x.Name, RegisterDate = x.RegistryDate, Salary = x.Salary, SurName = x.Surname, UserId = x.Id, UserName = x.UserName, RoleId = x.Roles.FirstOrDefault().RoleId, RoleName = roles.FirstOrDefault(y => y.Id == userManager.FindById(x.Id).Roles.FirstOrDefault().RoleId).Name }).ToList(); //List<SelectListItem> rolist = new List<SelectListItem>(); //roles.ForEach(x => new SelectListItem() //{ // Text=x.Name, // Value=x.Id //}); //ViewBag.roles = rolist; return(View(users)); }
public async Task <ActionResult> Login(LoginViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var userManager = MemberShipTools.NewUserManager(); var user = await userManager.FindAsync(model.KullaniciAd, model.Sifre); if (user == null) { ModelState.AddModelError(string.Empty, "Böyle bir kullanıcı bulunamadı"); return(View(model)); } var authManager = HttpContext.GetOwinContext().Authentication; var userIdentity = await userManager.CreateIdentityAsync(user, DefaultAuthenticationTypes.ApplicationCookie); authManager.SignIn(new AuthenticationProperties { IsPersistent = true }, userIdentity); return(RedirectToAction("Index", "Home")); }
public async Task <ActionResult> Login(LoginViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var userManager = MemberShipTools.NewUserManager(); var user = await userManager.FindAsync(model.UserName, model.Password); if (user == null) { ModelState.AddModelError(string.Empty, "Böyle bir kullanıcı bulunamadı!"); return(View(model)); } else { //kullanıcıyı bulduysa giris yap cıkıs yap (sign in, sign out islemleri için hazır metodların bulunduğu AuthenticationManager nesnesine ihtiyac vardır. var authManager = HttpContext.GetOwinContext().Authentication; var userIdentity = await userManager.CreateIdentityAsync(user, DefaultAuthenticationTypes.ApplicationCookie); authManager.SignIn(new AuthenticationProperties() { IsPersistent = model.RememberMe }, userIdentity); return(RedirectToAction("Index", "Home")); } }
// GET: Admin public ActionResult Index() { var roles = MemberShipTools.NewRoleManager().Roles.ToList(); var userManager = MemberShipTools.NewUserManager(); var users = userManager.Users.Select(x => new UsersViewModel { UserId = x.Id, Email = x.Email, Name = x.Name, Surname = x.Surname, UserName = x.UserName, Salary = x.Salary, RegisterDate = x.RegisterDate, RoleId = x.Roles.FirstOrDefault().RoleId, RoleName = roles.FirstOrDefault(y => y.Id == x.Roles.FirstOrDefault().RoleId).Name }).ToList(); List <SelectListItem> RoleList = new List <SelectListItem>(); roles.ForEach(x => new SelectListItem() { Text = x.Name, Value = x.Id }); ViewBag.roles = RoleList; return(View(users)); }
public async Task <ActionResult> Register(RegisterViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var userManager = MemberShipTools.NewUserManager(); var checkUser = userManager.FindByName(model.TCNo); if (checkUser != null) { ModelState.AddModelError(string.Empty, "Bu TC No sistemde kayıtlı"); return(View(model)); } checkUser = userManager.FindByEmail(model.Email); if (checkUser != null) { ModelState.AddModelError(string.Empty, "Bu mail adresi sistemde kayıtlı"); return(View(model)); } var user = new Kullanici() { Ad = model.Ad, Soyad = model.Soyad, Email = model.Email, UserName = model.TCNo, }; var response = userManager.Create(user, model.Sifre); if (response.Succeeded) { if (userManager.Users.ToList().Count() == 1) { userManager.AddToRole(user.Id, "Admin"); } else { userManager.AddToRole(user.Id, "Passive"); } return(RedirectToAction("Login", "Hesap")); } else { ModelState.AddModelError(string.Empty, "Kayıt işleminde bir hata oluiştu"); return(View(model)); } }
public ActionResult Profile() { var userManager = MemberShipTools.NewUserManager(); var id = HttpContext.User.Identity.GetUserId(); var user = userManager.FindById(id); ProfileViewModel model = new ProfileViewModel() { Email = user.Email, Name = user.Name, Surname = user.Surname, }; return(View(model)); }
public ActionResult Profil() { var userManager = MemberShipTools.NewUserManager(); var user = userManager.FindById(HttpContext.GetOwinContext().Authentication.User.Identity.GetUserId()); var model = new ProfilePasswordViewModel() { ProfileModel = new ProfilViewModel { Id = user.Id, Email = user.Email, Name = user.Name, Surname = user.Surname, UserName = user.UserName } }; return(View(model)); }
public ActionResult EditUser(string id) { if (id == null) { RedirectToAction("Index"); } var roles = MemberShipTools.NewRoleManager().Roles.ToList(); List <SelectListItem> rolList = new List <SelectListItem>(); roles.ForEach(x => new SelectListItem() { Text = x.Name, Value = x.Id }); ViewBag.roles = rolList; var userManager = MemberShipTools.NewUserManager(); var user = userManager.FindById(id); if (user == null) { return(RedirectToAction("Index")); } var model = new UsersViewModel() { UserName = user.UserName, Email = user.Email, Name = user.Name, Surname = user.Surname, RegisterDate = user.RegisterDate, RoleId = user.Roles.ToList().FirstOrDefault().RoleId, RoleName = roles.FirstOrDefault(y => y.Id == userManager.FindById(user.Id).Roles.FirstOrDefault().RoleId).Name, Salary = user.Salary, UserId = user.Id }; return(View(model)); }
// GET: Admin public ActionResult Index() { var roles = MemberShipTools.NewRoleManager().Roles.ToList(); var userManager = MemberShipTools.NewUserManager(); var users = userManager.Users.ToList().Select(x => new UsersViewModel { userId = x.Id, Name = x.Name, Surname = x.Surname, Email = x.Email, Username = x.UserName, RegisterDate = x.RegiterDate, Salary = x.Salary, RoleId = x.Roles.FirstOrDefault().RoleId, RoleName = roles.FirstOrDefault(y => y.Id == userManager.FindById(x.Id).Roles.FirstOrDefault().RoleId).Name }).ToList(); return(View(users)); }
public async Task <ActionResult> Register(RegisterViewModel model) { //eğer view tarafında form kurallı bir bicimde doldurulmadıysa direk modeli viewe geri döner. aşağıdaki islemleri yapmaz. if (!ModelState.IsValid) { return(View(model)); } //Kullanıcı kayıt islemleri yapılacak. //var userStore = new UserStore<ApplicationUser>(new BlogContext()) var userManager = MemberShipTools.NewUserManager(); var checkuser = userManager.FindByName(model.UserName); if (checkuser != null) { ModelState.AddModelError(string.Empty, "Bu kullanıcı zaten kayıtlıdır!"); return(View(model)); } var user = new ApplicationUser { Name = model.Name, Surname = model.Surname, UserName = model.UserName, Email = model.Email, }; var sonuc = await userManager.CreateAsync(user, model.Password); if (sonuc.Succeeded) { //eğer basarılı ise kullanıcı kaydedilmistir. Kullanıcıya role atayabiliriz. await userManager.AddToRoleAsync(user.Id, "User"); return(RedirectToAction("Index", "Home")); } else { ModelState.AddModelError(string.Empty, "Kullanıcı kayıt isleminde hata oluştu"); return(View(model)); } }
public ActionResult Register(RegisterViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var userManager = MemberShipTools.NewUserManager(); var checkUser = userManager.FindByName(model.Name); if (checkUser != null) { ModelState.AddModelError(string.Empty, "Bu kullanıcı zaten kayıtlı!"); return(View(model)); } var user = new ApplicationUser() { Name = model.Name, Surname = model.Surname, Email = model.Email, UserName = model.Username, Birthday = model.DogumTarihi }; var sonuc = userManager.Create(user, model.Password); if (sonuc.Succeeded) { userManager.AddToRole(user.Id, "Admin"); userManager.AddToRole(user.Id, "User"); return(RedirectToAction("Index", "Home")); } else { ModelState.AddModelError(string.Empty, "Kullanıcı kayıt işleminde hata oluştu!"); return(View(model)); } }
public async Task <ActionResult> Uyelik(RegisterViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var userManager = MemberShipTools.NewUserManager(); var checkUser = userManager.FindByName(model.KullaniciAd); if (checkUser != null) { ModelState.AddModelError(string.Empty, "Bu kullanıcı zaten kayıtlı!"); return(View(model)); } checkUser = userManager.FindByEmail(model.Email); if (checkUser != null) { ModelState.AddModelError(string.Empty, "Bu eposta adresi kullanılmakta"); return(View(model)); } // register işlemi yapılır var activationCode = Guid.NewGuid().ToString(); AppUser user = new AppUser() { Ad = model.Ad, Soyad = model.Soyad, Email = model.Email, UserName = model.KullaniciAd, ActivationCode = activationCode }; var response = userManager.Create(user, model.Sifre); if (response.Succeeded) { string siteUrl = Request.Url.Scheme + Uri.SchemeDelimiter + Request.Url.Host + (Request.Url.IsDefaultPort ? "" : ":" + Request.Url.Port); if (userManager.Users.Count() == 1) { userManager.AddToRole(user.Id, "Admin"); await SiteSettings.SendMail(new MailViewModel { Kime = user.Email, Konu = "Hoşgeldin Sahip", Mesaj = "Sitemizi yöneteceğin için çok mutluyuz ^^" }); } else { userManager.AddToRole(user.Id, "Passive"); await SiteSettings.SendMail(new MailViewModel { Kime = user.Email, Konu = "Personel Yönetimi - Aktivasyon", Mesaj = $"Merhaba {user.Ad} {user.Soyad} <br/>Hesabınızı aktifleştirmek için <a href='{siteUrl}/Hesap/Activation?code={activationCode}'>Aktivasyon Kodu : {activationCode}</a>" }); } return(RedirectToAction("Login", "Hesap")); } else { ModelState.AddModelError(string.Empty, "Kayıt İşleminde bir hata oluştu"); return(View(model)); } }
[ValidateAntiForgeryToken]//Güvenlik Testleri için Gerekli--Arkaplanda Session oluşturur ve kendi formumuzdaki sessions la eşleşiyormu diye kontrol eder. public async Task <ActionResult> Register(RegisterViewModel model) { //Kayıt olmadan önce kontrol edilir. if (!ModelState.IsValid) { return(View(model)); } var userManager = MemberShipTools.NewUserManager(); var checkUser = userManager.FindByName(model.Username); if (checkUser != null) { ModelState.AddModelError(string.Empty, "Bu Kullanıcı Zaten Kayıtlı !"); return(View(model)); } checkUser = userManager.FindByEmail(model.Email); if (checkUser != null) { ModelState.AddModelError(string.Empty, "Bu e-posta adresi kullanılmaktadır."); return(View(model)); } //Register İşlemi Yapılır. var activationCode = Guid.NewGuid().ToString();//Guid benzersiz bir id oluşturur. ApplicationUser user = new ApplicationUser() { Name = model.Name, Surname = model.Surname, Email = model.Email, UserName = model.Username, ActivationCode = activationCode }; var response = userManager.Create(user, model.Password); //Passwordu hash etme işlemini Create methodunda yapar. if (response.Succeeded) //kayıt başarılı ise { string siteUrl = Request.Url.Scheme + Uri.SchemeDelimiter + Request.Url.Host + (Request.Url.IsDefaultPort ? "" : ":" + Request.Url.Port); //scheme:Http/https SchemeDelimiter:// Url.Host www vs. IsDefaultPort:localhosttaki gibi port numarası varsa yaz yoksa boş bırak. if (userManager.Users.Count() == 1) { userManager.AddToRole(user.Id, "Admin"); await SiteSettings.SendMail(new MailViewModel { To = user.Email, Subject = "Hoşgeldin Sahip", Message = "Sitemizi yöneteceğin için çok mutluyuz. ^^" }); //await kullanırsak methodun başına async yazılır ve method void olmalı void değilse Task <geridönüştipi> yazılır. } else { userManager.AddToRole(user.Id, "Passive"); await SiteSettings.SendMail(new MailViewModel { To = user.Email, Subject = "Personel Yönetimi - Aktivasyon", /* Message = $"Merhaba{user.Name} {user.Surname} <br/> Sistemi kullanabilmeniz için <a href='http://localhost:28442/Account/Activation?code={activationCode}'>Aktivasyon Kodu</a>" */ Message = $"Merhaba{user.Name} {user.Surname} <br/> Sistemi kullanabilmeniz için <a href='{siteUrl}/Account/Activation?code={activationCode}'>Aktivasyon Kodu</a>" //$ doları koyduğumuzda girilecek c# kodlarını tanır. }); } return(RedirectToAction("Login", "Account")); } else { ModelState.AddModelError(string.Empty, "Kayıt işleminde bir hata oluştu."); return(View(model)); } }
public async Task <ActionResult> Register(RegisterViewModel model) { //kayıt olmadan önce kontrol ediliyor if (!ModelState.IsValid) { return(View(model)); } var userManager = MemberShipTools.NewUserManager(); var checkUser = userManager.FindByName(model.Username); if (checkUser != null) { ModelState.AddModelError(string.Empty, "Bu kullanıcı zaten kayıtlı"); return(View(model)); } checkUser = userManager.FindByEmail(model.Email); if (checkUser != null) { ModelState.AddModelError(string.Empty, "Bu eposta adresi kullanılmakta"); return(View(model)); } //register işlemi yapılır var activationCode = Guid.NewGuid().ToString(); AplicationUser user = new AplicationUser() { Name = model.Name, Surname = model.Surname, Email = model.Email, UserName = model.Username, ActivationCode = activationCode }; var response = userManager.Create(user, model.Password); if (response.Succeeded) { string siteUrl = Request.Url.Scheme + Uri.SchemeDelimiter + Request.Url.Host + (Request.Url.IsDefaultPort ? "" : ":" + Request.Url.Port); //evladiyelik her yerde kullanabilirsin if (userManager.Users.Count() == 1) //ilk kullanıcıyı kaydettik { userManager.AddToRole(user.Id, "Admin"); await SiteSettings.SendMail(new MailModel { To = user.Email, Subject = "Hoşgeldin Sahip", Message = "Sitemizi yöneteceğin için çok mutluyuz ^^" }); } else { userManager.AddToRole(user.Id, "Passive"); await SiteSettings.SendMail(new MailModel { To = user.Email, Subject = "Personel Yönetimi-Aktivasyon", Message = $"Merhaba{user.Name}{user.Surname}<br/>Sistemi kullanabilmeniz için <a href='{siteUrl}/Account/Activation?code={activationCode}'>Aktivasyon Kodu</a>" //dolar işareti koyunca süslü parantez gibi yazabiliriz. siteUrl yi yukarıda genel tanımladık }); } return(RedirectToAction("Login", "Account")); } else //yukarıdaki if succeed in else i { ModelState.AddModelError(string.Empty, "Kayıt işleminde bir hata oluştu"); return(View(model)); } }
[ValidateAntiForgeryToken] //Güvenlik testleri için public async Task <ActionResult> Register(RegisterViewModel model) //asenkron kullanılacaksa async yazılır { //kayıt olmadan önce kontrol ediliyor if (!ModelState.IsValid) { return(View(model)); } var userManager = MemberShipTools.NewUserManager(); var checkUser = userManager.FindByName(model.Username); if (checkUser != null) { ModelState.AddModelError(string.Empty, "Bu kullanıcı zaten kayıtlı!"); return(View(model)); } //register işlemi yapılır checkUser = userManager.FindByEmail(model.Email); if (checkUser != null) { ModelState.AddModelError(string.Empty, "Bu eposta adresi kullanılmakta"); return(View(model)); } var activationCode = Guid.NewGuid().ToString(); //aktivasyon kodu üretilir ApplicationUser user = new ApplicationUser() //kullanıcı oluşturduk { Name = model.Name, Surname = model.Surname, Email = model.Email, UserName = model.Username, ActivationCode = activationCode }; var response = userManager.Create(user, model.Password); //arka planda şifreler koyar if (response.Succeeded) { string siteUrl = Request.Url.Scheme + Uri.SchemeDelimiter + Request.Url.Host + (Request.Url.IsDefaultPort ? "" : ":" + Request.Url.Port); if (userManager.Users.Count() == 1) { userManager.AddToRole(user.Id, "Admin"); await SiteSettings.SendMail(new MailModel { To = user.Email, Subject = "Hoşgeldin Sahip", Message = "Sitemizi yöneteceğin için çok mutluyuz:)" }); } else { userManager.AddToRole(user.Id, "Passive"); await SiteSettings.SendMail(new MailModel { To = user.Email, Subject = "Personel Yönetimi-Aktivasyon", Message = $"Merhaba {user.UserName}, </br> Sisteme başarı ile kayıt oldunuz. <br/> Hesabınızı aktifleştirmek için <a href='{siteUrl}/Account/Activation?code={activationCode}'>Aktivasyon Kodu</a>",//her zaman aynı local gelmeyebilir }); } return(RedirectToAction("Login", "Account")); } else { ModelState.AddModelError(string.Empty, "Kayıt işleminde bir hata oluştu."); return(View()); } }
public async Task <ActionResult> Register(RegisterViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var userManager = MemberShipTools.NewUserManager(); var checkuser = userManager.FindByName(model.Username); if (checkuser != null) { ModelState.AddModelError(string.Empty, "Bu kullacını zaten kayıtlı"); return(View(model)); } checkuser = userManager.FindByEmail(model.Email); if (checkuser != null) { ModelState.AddModelError(string.Empty, "Bu kullacını zaten kayıtlı"); return(View(model)); } var activationcode = Guid.NewGuid().ToString(); ApplicationUser user = new ApplicationUser() { Name = model.Name, Surname = model.Surname, Email = model.Email, UserName = model.Username, ActivationCode = activationcode }; var response = userManager.Create(user, model.Password); if (response.Succeeded) { string siteUrl = Request.Url.Scheme + Uri.SchemeDelimiter + Request.Url.Host + (Request.Url.IsDefaultPort ? "" : ":" + Request.Url.Port); if (userManager.Users.Count() == 1) { userManager.AddToRole(user.Id, "Admin"); await SiteSettings.SendMail(new MailModel { To = user.Email, Subject = "Hoşgeldin Adamım", Message = "Siteyi Yönet Dayı" }); } else { userManager.AddToRole(user.Id, "Passive"); await SiteSettings.SendMail(new MailModel { Message = $"Merhaba {user.Name}{user.Surname}, </br> Sisteme başarı ile kayıt oldunuz. <br/> Hesabınızı aktifleştirmek için <a href='{siteUrl}/Account/Activation?code={activationcode}'>Aktivasyon Kodu</a>", Subject = "Personel Yönetimi - Aktivasyon", To = user.Email }); } return(RedirectToAction("Login", "Acount")); } else { ModelState.AddModelError(string.Empty, "Kayıt işleminde bir hata oluştu"); return(View()); } }
public async Task <ActionResult> Register(RegisterViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var userManager = MemberShipTools.NewUserManager(); var checkUser = userManager.FindByName(model.Username); if (checkUser != null) { ModelState.AddModelError(string.Empty, "Bu kullanıcı zaten kayıtlı!"); return(View(model)); } checkUser = userManager.FindByName(model.Email); if (checkUser != null) { ModelState.AddModelError(string.Empty, "Bu e-posta adresi kullanımda!"); return(View(model)); } var activationCod = Guid.NewGuid().ToString(); ApplicationUser user = new ApplicationUser() { Name = model.Name, Surname = model.Surname, Email = model.Email, UserName = model.Username, ActivationCode = activationCod }; var response = userManager.Create(user, model.Password); if (response.Succeeded) { string siteURL = Request.Url.Scheme + Uri.SchemeDelimiter + Request.Url.Host + (Request.Url.IsDefaultPort ? "" : ":" + Request.Url.Port); if (userManager.Users.Count() == 1) { userManager.AddToRole(user.Id, "Admin"); await SiteSettings.SendMail(new MailModel { To = user.Email, Subject = "Hoşgeldin Sahip", Message = "Sitemizi yöneteceğin için çok mutluyuz ^_^" }); } else { userManager.AddToRole(user.Id, "Passive"); await SiteSettings.SendMail(new MailModel { To = user.Email, Subject = "Hoşgeldin Sahip", Message = $"Merhaba {user.Name} {user.Surname}<br/>Sistemi Kulanabilmeniz için <a href='{siteURL}/Account/Activation?code={activationCod}'>Aktivasyon Kodu</a>" }); } return(RedirectToAction("Login", "Account")); } else { ModelState.AddModelError(string.Empty, "Kayıt işleminde bir hata oluştu"); return(View(model)); } }