Ejemplo n.º 1
0
        public async Task <ActionResult> EditClient(TbUsuarios usuario, HttpPostedFileBase foto)
        {
            FileStream stream;

            usuario.IDRol       = TempUsuario.IDRol;
            usuario.IDUsuario   = TempUsuario.IDUsuario;
            usuario.correo      = TempUsuario.correo;
            usuario.contrasenna = TempUsuario.contrasenna;
            //usuario.estado = TempUsuario.estado;
            if (TempUsuario.estado == false)
            {
                usuario = cUsuarios.Buscar(usuario.IDUsuario);
                cUsuarios.Desactivar(usuario.IDUsuario);
            }
            if (foto == null)
            {
                usuario.foto = TempUsuario.foto;
                await Task.Run(() => cUsuarios.Actualizar(usuario));
            }
            else
            {
                string path = Path.Combine(Server.MapPath("~/Content/images/"), foto.FileName);
                foto.SaveAs(path);
                stream = new FileStream(Path.Combine(path), FileMode.Open);
                await Task.Run(() => actualizarDatos(stream, usuario));
            }
            return(RedirectToAction("DetailClient/" + usuario.IDUsuario, "TbUsuarios"));
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> Login(LoginViewModel model, string returnUrl)
        {
            try
            {
                // Verification.
                if (ModelState.IsValid)
                {
                    var auth = new FirebaseAuthProvider(new FirebaseConfig(ApiKey));
                    var ab   = await auth.SignInWithEmailAndPasswordAsync(model.Email, model.Password);

                    string token = ab.FirebaseToken;
                    var    user  = ab.User;
                    password   = model.Password;
                    UserGlobal = model.Email;
                    if (token != "")
                    {
                        TbHistorial registro = new TbHistorial();
                        registro.detalle = "el usuario " + UserGlobal + " inició sesión";
                        registro.fecha   = DateTime.Now.ToString();
                        int rol = cUsuarios.ObtenerIdRol(model.Email);
                        if (rol == 1)
                        {
                            this.SignInUser(user.Email, token, false);
                            cUsuarios.InsertarHistorial(registro);
                            TbUsuarios.setUsuarioActual(cUsuarios.Buscar(cUsuarios.ObtenerId(UserGlobal)));
                            TbUsuarios usuario = TbUsuarios.usuarioActual;
                            usuario.contrasenna = model.Password;
                            usuario.estado      = true;
                            cUsuarios.Actualizar(usuario);
                            return(this.RedirectToIndex("Admin_Users", "TbUsuarios"));
                        }
                        else if (rol == 2)
                        {
                            this.SignInUser(user.Email, token, false);
                            cUsuarios.InsertarHistorial(registro);
                            TbUsuarios.setUsuarioActual(cUsuarios.Buscar(cUsuarios.ObtenerId(UserGlobal)));
                            TbUsuarios usuario = TbUsuarios.usuarioActual;
                            usuario.contrasenna = model.Password;
                            usuario.estado      = true;
                            cUsuarios.Actualizar(usuario);
                            return(this.RedirectToIndex("Profile", "Usuario"));
                        }
                    }
                    else
                    {
                        ModelState.AddModelError(model.Password, "Invalid username or password.");
                    }
                }
            }
            catch (FirebaseAuthException fae)
            {
                ModelState.AddModelError(string.Empty, "Usuario o contraseña incorrectas");
            }
            return(this.View(model));
        }