public async Task <IActionResult> Codificador([Bind("UserId,NombreCodificador,Email")] CodificadorViewModel codVM) { var identity = (ClaimsIdentity)HttpContext.User.Identity; string userId = identity.GetSpecificClaim(ClaimTypes.Sid); var userfasecod = _context.UserFaseCodificador.FirstOrDefault(u => u.UserId == userId); var codificador = _context.Codificador.FirstOrDefault(c => c.CodificadorId == userfasecod.CodificadorId); codificador.NombreCodificador = codVM.NombreCodificador; codificador.Email = codVM.Email; if (ModelState.IsValid) { _context.Update(codificador); _context.Entry(codificador).State = EntityState.Modified; _context.Entry(codificador).Property(o => o.NombreCodificador).IsModified = true; _context.Entry(codificador).Property(o => o.Email).IsModified = true; await _context.SaveChangesAsync(); TempData["Message"] = "Información actualizada correctamente."; return(RedirectToAction("Codificador", "Account")); } // If we got this far, something failed, redisplay form return(View(codVM)); }
public async Task <IActionResult> Edit(string nombreCodificador, string email, string token, [Bind("UserId,CodificadorId,FaseId")] UserFaseCodificador userFaseCodificador) { if (userFaseCodificador.UserId == null) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(userFaseCodificador); var usuario = new User() { UserId = userFaseCodificador.UserId, Token = token, TokenExpiration = DateTime.Now.AddDays(2) }; _context.Attach(usuario); _context.Entry(usuario).Property(x => x.Token).IsModified = true; _context.Entry(usuario).Property(x => x.TokenExpiration).IsModified = true; var codificador = new Codificador() { CodificadorId = userFaseCodificador.CodificadorId, NombreCodificador = nombreCodificador, Email = email }; _context.Attach(codificador); _context.Entry(codificador).Property(x => x.NombreCodificador).IsModified = true; _context.Entry(codificador).Property(x => x.Email).IsModified = true; await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!UserFaseCodificadorExists(userFaseCodificador.UserId) || !UserExists(userFaseCodificador.UserId) || !CodificadorExists(userFaseCodificador.CodificadorId)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["FaseId"] = new SelectList(_context.Fase, "FaseId", "NombreFase", userFaseCodificador.FaseId); return(View(new Models.UserFaseCodViewModel(userFaseCodificador))); }
public async Task <IActionResult> Edit([Bind("CodificadorId,FaseId,MaterialId,FileName,TieneDuplicado,NivelId,NivelComentario,CursoId,EjeId,ObjetivoId,ObjetivoComentario,HabilidadId,HabilidadComentario,TipoTareaId,TipoTareaComentario,CorreccionProfesor,ErrorEjecucion,TrabajaDinero,ErrorDiseno,Observaciones,Filtro,Perfil")] CodificacionViewModel codificacion) { if (codificacion == null) { return(NotFound()); } setFaseActual(); if (ModelState.IsValid && (codificacion.FaseId == _fase || codificacion.Perfil == 1)) { try { codificacion.UpdateEstado(); Codificacion cd = codificacion.getCodificacion(); cd.LastUpdated = DateTime.Now; _context.Update(cd); _context.Entry(cd).State = EntityState.Modified; _context.Entry(cd).Property(o => o.RowIndex).IsModified = false; await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!CodificacionExists(codificacion.CodificadorId, codificacion.FaseId, codificacion.MaterialId)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Edit), new { @materialId = codificacion.MaterialId, @fase = codificacion.FaseId, @filter = codificacion.Filtro })); } await FillCombos(codificacion); return(View(codificacion)); }