public PartialViewResult Listar(string index) { Usuario conectado = (Usuario)Session["usuario"]; switch (index) { case "mensajes": List<Mensaje> lista = getMensajesUsuario(conectado); return PartialView("Mensajes", lista); case "misAnuncios": List<Anuncio> list = getAnunciosSubidos(conectado); return PartialView("MisAnuncios", list); case "editarPerfil": EditUserViewModel edit = new EditUserViewModel { Nombre = conectado.Nombre, Apellido = conectado.Apellido, Correo = conectado.Correo }; return PartialView("EditarPerfil", edit); case "reservas": List<Anuncio> reservas = getReservas(conectado);//en realidad cojo Anuncios, reservados por ese usuario return PartialView("MisReservas", reservas); case "password": ChangePassViewModel model = new ChangePassViewModel(); return PartialView("ChangePasswd", model); default: break; } return PartialView(); }
public string ChangePasswd(ChangePassViewModel model) { if (ModelState.IsValid) { Usuario u = (Usuario)Session["usuario"]; string id = u.Id; string hash = control.Hashea(id, model.OldPassword); //comprobamos si la pass antigua esta ok if (control.ExisteUsuario(hash, u.Correo)) { string newHash = control.Hashea(id, model.NewPass); control.UpdateHash(id, newHash); Session["usuario"] = null; return ("<script>alert('Contraseña cambiada con éxito');" + "window.location.assign('http://localhost:17204/Inicio/Index');" + "</script>"); //le cambiamos la pass } } return ("<script>alert('Datos erróneos. Compruebe que la contraseña antigua sea la misma o la nueva coincida en ambos campos y tenga al menos 6 caracteres');" + "window.location.assign('http://localhost:17204/Perfil/PerfilUsuario?op=password');" + "</script>"); }