// GET: PossibleAnswers/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } PossibleAnswer pos_ans = db.PossibleAnswers.Find(id); if (pos_ans == null) { return(HttpNotFound()); } if (pos_ans.Question.Test.Status == "Open") { TempData["msg"] = "Nie można edytowac możliwej odpowiedzi do pytania w teście, który jest otwarty do wypełniania!"; TempData["option"] = "warning"; return(RedirectToAction("Details", "Tests", new { id = pos_ans.Question.Test.Id_testu })); } EditPossibleAnswerViewModels answer = new EditPossibleAnswerViewModels(); answer.PosAnsID = pos_ans.Id_posans; answer.Content = pos_ans.Content; answer.isCorrect = pos_ans.isCorrect; answer.TestID = pos_ans.Question.Test.Id_testu; var temp = pos_ans.Question.PossibleAnswers.Where(p => p.isCorrect == "True") .Count(); if (pos_ans.isCorrect == "False" && temp != 0) { ViewBag.Options = new List <SelectListItem> { new SelectListItem { Text = "Incorrect", Value = "False" } }; } else { ViewBag.Options = new List <SelectListItem> { new SelectListItem { Text = "Incorrect", Value = "False" }, new SelectListItem { Text = "Correct", Value = "True", Selected = true } }; } return(PartialView("_Edit", answer)); }
public ActionResult Edit(EditPossibleAnswerViewModels answer) { if (ModelState.IsValid) { PossibleAnswer pos_ans = db.PossibleAnswers.Find(answer.PosAnsID); pos_ans.Content = answer.Content; pos_ans.isCorrect = answer.isCorrect; db.Entry(pos_ans).State = EntityState.Modified; db.SaveChanges(); TempData["msg"] = "Edytowano możliwą odpowiedź do pytania w teście poprawnie!"; TempData["option"] = "success"; return(RedirectToAction("Details", "Tests", new { id = answer.TestID })); } return(PartialView("_Edit", answer)); }