public async Task <IActionResult> OnPostAsync() { System.Collections.Generic.IEnumerable <User> dbUser = await userRepository.GetUsers(); if (dbUser.AsEnumerable().Any(x => x.Username.ToLower() == User.Username.ToLower())) { HasError = true; ViewData["Error"] = "Σφάλμα! Υπάρχει ήδη χρήστης με αυτό το Όνομα Χρήστη που επιλέξατε."; return(Page()); } if (dbUser.AsEnumerable().Any(x => x.Email.ToLower() == User.Email.ToLower())) { HasError = true; ViewData["Error"] = "Σφάλμα! Υπάρχει ήδη χρήστης με αυτό το Ηλ. Ταχυδρομείο που επιλέξατε."; return(Page()); } User.Password = CrypterAlgorithm.ComputeSha256Hash(User.Password); if (await userRepository.InsertUser(User)) { return(RedirectToPage(Url.Content("~/Home/Index"))); } return(Page()); }
public async Task <IActionResult> OnPostAsync() { System.Collections.Generic.IEnumerable <User> dbUsers = await userRepository.GetUsers(); if (dbUsers.Any(x => x.Username.ToLower() == User.Username.ToLower().Trim())) { HasError = true; ViewData["Error"] = "Υπάρχει ήδη χρήστης με Όνομα Χρήστη (Username) που δώσατε."; return(Page()); } if (dbUsers.Any(x => x.Email.ToLower() == User.Email.ToLower().Trim())) { HasError = true; ViewData["Error"] = "Υπάρχει ήδη χρήστης με την Ηλεκτρονική Διεύθυνση που δώσατε."; return(Page()); } User.Username = User.Username.Trim(); User.Email = User.Email.Trim(); User.Password = CrypterAlgorithm.ComputeSha256Hash(User.Password); if (await userRepository.InsertUser(User)) { HasError = false; TempData["SuccessMessage"] = "Ο Χρήστης προστέθηκε με επιτυχία."; return(RedirectToPage(Url.Content("~/Admin/UserList"))); } HasError = true; ViewData["Error"] = "Δεν μπορέσαμε να κάνουμε την εγγραφή προσπαθήστε ξανά"; return(Page()); }
public async Task <IActionResult> OnPostAsync() { User dbUser = (await userRepository.GetUsers()).FirstOrDefault(x => x.Username.ToLower() == User.Username.ToLower()); if (dbUser is null) { HasError = true; ViewData["Error"] = "Ο χρήστης δεν υπάρχει."; return(Page()); } if (!CrypterAlgorithm.VerifyHash(SHA256.Create(), User.Password, dbUser.Password)) { HasError = true; ViewData["Error"] = "Δεν ταιριάζει ο κωδικός χρήστης."; return(Page()); } HttpContext.Session.SetString("USERNAME", dbUser.Username); HttpContext.Session.SetInt32("ISLOGIN", 1); HttpContext.Session.SetString("ISADMIN", dbUser.IsAdmin ? "1" : "0"); HttpContext.Session.SetInt32("USERID", dbUser.Id); return(RedirectToPage(Url.Content("~/Home/Index"))); }
public async Task <IActionResult> OnPostAsync() { System.Collections.Generic.IEnumerable <User> dbUsers = await userRepository.GetUsers(); if (dbUsers.Any(x => x.Username.ToLower() == SUser.Username.ToLower().Trim() && x.Id != SUser.Id)) { HasError = true; ViewData["Error"] = "Υπάρχει ήδη χρήστης με Όνομα Χρήστη (Username) που δώσατε."; return(Page()); } if (dbUsers.Any(x => x.Email.ToLower() == SUser.Email.ToLower().Trim() && x.Id != SUser.Id)) { HasError = true; ViewData["Error"] = "Υπάρχει ήδη χρήστης με την Ηλεκτρονική Διεύθυνση που δώσατε."; return(Page()); } if (string.IsNullOrEmpty(SUser.Password)) { SUser.Password = dbUsers.FirstOrDefault(x => x.Id == SUser.Id).Password; } else { SUser.Password = CrypterAlgorithm.ComputeSha256Hash(SUser.Password); } User dbUser = await userRepository.GetUser(SUser.Id); dbUser.Username = SUser.Username; dbUser.Password = SUser.Password; dbUser.Email = SUser.Email; dbUser.FamilyName = SUser.FamilyName; dbUser.IsAdmin = SUser.IsAdmin; if (await userRepository.UpdateUser(dbUser)) { HasError = false; TempData["SuccessMessage"] = "Ο Χρήστης προστέθηκε με επιτυχία."; return(RedirectToPage(Url.Content("~/Admin/UserList"))); } HasError = true; ViewData["Error"] = "Δεν μπορέσαμε να κάνουμε την εγγραφή προσπαθήστε ξανά"; return(Page()); }