public ActionResult Login(Login request) { //(Login request) to be received from the other side (view_login and mapping follow class Login) if (ModelState.IsValid) { var model = new LoginModel().CheckLogin(request.UserName, request.Password); if (model != 0) { //create a sesion var sesion = new UserSesion(); sesion.ID = model; sesion.User = request.UserName; Session.Add(Commond.ConstandSesionString.UserSesion, Session); return(RedirectToAction("Index", "Home")); } } else { ModelState.AddModelError("", "User or Password is wrong!"); } return(View("Login")); }
public async Task <IActionResult> Login(LoginCredentials lc) { if (ModelState.IsValid) { //convirtiendo la contrase;a a md5 var passmd5 = Funciones.CreateMD5(lc.Password); //consulta para saber si el usuario existe var userlogin = _db.Usuario.Where(u => u.UserAccount == lc.UserAccount). Where(u => u.Password == passmd5).FirstOrDefault(); //condicion si el usuario existe if (userlogin != null) { //cargando la informacion del usuario en la clase estatica var rol = _db.UserRole.Where(u => u.UserId == userlogin.Id).FirstOrDefault(); LoadDataUser.Id = userlogin.Id; LoadDataUser.Nombre = userlogin.Nombre; LoadDataUser.Apellido = userlogin.Apellido; LoadDataUser.UserAccount = userlogin.UserAccount; LoadDataUser.Email = userlogin.Email; LoadDataUser.Foto = userlogin.Foto; LoadDataUser.Rol = rol.Rol; LoadDataUser.Estado = userlogin.Estado; UserLogin.Islogin = true; //asigando valor a las propiedades de inicio de sesion var usersesion = new UserSesion { MacAdress = Funciones.GetMacAdres(), UserId = userlogin.Id, IsLogin = "******" }; //comprobando si ya el usuario esta registrado en la tabla de sesiones var us = _db.UserSesions.Where(s => s.UserId == userlogin.Id).FirstOrDefault(); //si esta registrado en la tabla sesiones if (us != null) { us.MacAdress = Funciones.GetMacAdres(); us.UserId = userlogin.Id; us.IsLogin = "******"; _db.Update(us); await _db.SaveChangesAsync(); } //si no esta registrado en la tabla sesionens else { //agregalo a la tabla sesiones _db.Add(usersesion); await _db.SaveChangesAsync(); } //redireccionado al inicio return(RedirectToAction("Index", "Proyectos")); } //si el usuario no existe else { Funciones.Alerta( "Usuario o Contraseña no validos", "danger", "remove" ); //retornando el modelo return(RedirectToAction("LoginUser", new LoginCredentials { UserAccount = lc.UserAccount })); } } //si el modelo no es valido else { Funciones.Alerta( "Introduce el usuario y la contraseña", "danger", "remove" ); return(RedirectToAction("LoginUser", new LoginCredentials { UserAccount = lc.UserAccount })); } }
public async Task <IActionResult> Registrar(Usuario usuario, IFormFile img, string rol) { if (ModelState.IsValid) { var userpass = usuario.Password; if (VerificarExistenciaUsuario(usuario.UserAccount) == false && Funciones.VerificarExistenciaEmail(usuario.Email, _db) == false && Funciones.VeririficarPesodeArchivo(img, 3, "Imagen usuario") == false && Funciones.VerificarExtencion(img, "png", "jpg", "jpeg", "una Imagen", "Foto Usuario") == false && VerificarEspacio(usuario.UserAccount) == false ) { if (img != null) { usuario.Foto = Funciones.SubirArchivo(img, usuario.UserAccount, "FotosPerfil", "screen", _he); } else { usuario.Foto = "Userdefault.png"; } usuario.Password = Funciones.CreateMD5(usuario.Password); usuario.UserAccount = usuario.UserAccount.ToLower(); usuario.UserAccount = usuario.UserAccount.Replace(' ', '-'); _db.Usuario.Add(usuario); await _db.SaveChangesAsync(); var userdata = _db.Usuario.Where(u => u.UserAccount == usuario.UserAccount).FirstOrDefault(); var Rol = new UserRole { UserId = userdata.Id, Rol = rol }; _db.Add(Rol); await _db.SaveChangesAsync(); var Usersesion = new UserSesion { IsLogin = "******", UserId = userdata.Id, MacAdress = Funciones.GetMacAdres().ToString() }; _db.Add(Usersesion); await _db.SaveChangesAsync(); Funciones.Alerta( "Usuario registrado exitosamente.", "success", "check" ); if (UserLogin.Islogin == false) { return(RedirectToAction("LoginUser", new LoginCredentials { UserAccount = usuario.UserAccount })); } else { return(RedirectToAction(nameof(AdmUsuarios))); } } else { } } else { return(View(usuario)); } return(View()); }