Пример #1
0
        public IActionResult Index(UserViewModel model)
        {
            if (ModelState.IsValid)
            {
                model.Password = ToPasswordRepository.PasswordCryptographyCombine(model.Password);

                User foundUser = userService.Get(x => x.UserName.Equals(model.UserName) && x.Password.Equals(model.Password));
                if (foundUser != null)
                {
                    foundUser.UpdateDate   = DateTime.UtcNow;
                    foundUser.UpdateUserid = foundUser.id;
                    userService.Update(foundUser);
                    userService.Save();
                    SessionUser session = new SessionUser();
                    foundUser.UserToSession(ref session);
                    userSessionService.Set(session, "LoginUser");
                    return(RedirectToAction("Index", "Home", new { area = "" }));
                }
                else
                {
                    ViewBag.AlertMassage = "Girdiginiz bilgiler ile eslesen bir kayit bulunamadi.";
                }
            }
            else
            {
                ViewBag.AlertMassage = "Lutfen bilgileri dogru giriniz.";
            }
            return(View(model));
        }
Пример #2
0
        public IActionResult Login(LoginViewModel model)
        {
            if (!string.IsNullOrWhiteSpace(model.Password) && _userService.GetMany(user => user.Email.Equals(model.Email) && user.Role != 2).Count > 0)
            {
                model.Password = ToPasswordRepository.PasswordCryptographyCombine(model.Password);
                User res = _userService.GetMany(x => x.Email == model.Email && x.Role != 2).First();
                if (res.Password != model.Password)
                {
                    TempData["message"]  = "Hata";
                    TempData["message2"] = "Girdiğiniz parolalar eşleşmiyor.";
                    goto Finish;
                }

                if (res.IsActive == true)
                {
                    if (res.Role != 2)
                    {
                        res.UpdateDate   = DateTime.UtcNow;
                        res.UpdateUserid = res.id;
                        _userSessionService.Set(res, "LoginAdmin");
                        TempData["message"]  = "Başarılı";
                        TempData["message2"] = "Giriş başarılı.";
                        _userService.Update(res);
                        _userService.Save();

                        return(RedirectToAction("Index", "Home", new { area = "Admin" }));
                    }
                    else
                    {
                        TempData["message"]  = "Hata";
                        TempData["message2"] = "Yetersiz Yetki";
                    }
                }
                else
                {
                    TempData["message"]  = "Hata";
                    TempData["message2"] = "Lütfen hesabınızın onaylanmasını bekleyin.";
                    goto Finish;
                }
            }
            else
            {
                TempData["message"]  = "Hata";
                TempData["message2"] = "Kullanıcı adı veya şifre hatalı.";
                goto Finish;
            }



Finish:

            return(View());
        }
Пример #3
0
        public IActionResult Register(RegisterViewModel model)
        {
            TempData["errorMessage"] = "";
            if (ModelState.IsValid)
            {
                if (model.Password != model.PasswordConfirmation)
                {
                    TempData["errorMessage"] += "Şifreler birbiriyle uyuşmamaktadır.\n";
                }
                if (_userService.GetMany(user => user.Email.Equals(model.Email) && user.Role != 2).Count > 0)
                {
                    TempData["errorMassage"] += "Bu mail adresi daha önceden kayıtlıdır.";
                }
                else
                {
                    model.Password = ToPasswordRepository.PasswordCryptographyCombine(model.Password);

                    User user = new User()
                    {
                        Firstname = model.FirstName,
                        Lastname  = model.LastName,
                        Password  = model.Password,
                        Email     = model.Email,
                        TagName   = model.UserName,
                        Role      = 2,
                    };

                    try
                    {
                        _userService.Add(user);
                        _userService.Save();
                    }
                    catch
                    {
                        TempData["errorMassage"] += "Veri tabanına eklerken hata ile karşılaşıldı.";
                    }
                }
            }
            else
            {
                TempData["errorMassage"] = "Tüm değerleri doğru biçimde giriniz";
            }
            return(RedirectToAction("Login", "Home", new { area = "Admin" }));
        }
        public async Task <IActionResult> SignUp(AppUserAddFormDto appUserAddDto)
        {
            if (ModelState.IsValid)
            {
                AppUser appUser = await appUserService.FindByUserName(appUserAddDto.UserName);

                if (appUser != null)
                {
                    logger.LogInformation($"{appUser.UserName} Kullanici adi zaten alınmış");
                    ModelState.AddModelError("", $"{appUser.UserName} kullanıcı adı zaten alınmış");
                    return(View(appUserAddDto));
                }

                appUserAddDto.Password = ToPasswordRepository.PasswordCryptographyCombine(appUserAddDto.Password);
                appUser = mapper.Map <AppUser>(appUserAddDto);
                await userService.AddAsync(appUser);

                logger.LogInformation($"{appUser.UserName} Kullanici olusturuldu");

                AppRole memberRole = await appRoleService.FindByName(RoleInfo.Member);

                await userRoleService.AddAsync(new UserRole()
                {
                    AppRoleId = memberRole.Id,
                    AppUserId = appUser.Id
                });

                logger.LogInformation($"{appUser.UserName} Kullanicisina varsayilan rol bilgisi eklendi");
                return(RedirectToAction("SignIn"));
            }
            else
            {
                logger.LogInformation("AppUserAddDto Not Valid");
                ModelState.AddModelError("", "Lütfen gereken tüm alanları doldurunuz.");
                return(View(appUserAddDto));
            }
        }
Пример #5
0
 public bool CheckPassword(AppUserLoginDto appUserLoginDto, AppUser appUser)
 {
     return(appUser?.Password == ToPasswordRepository.PasswordCryptographyCombine(appUserLoginDto?.Password));
 }