public JsonResult GetFillTheBox(int id) { FillTheBox fillTheBox = db.FillTheBoxs.Find(id); var enunciado = fillTheBox.Enunciado.Replace("#", "|#|").Split('|').ToList(); var respuestas = fillTheBox.Respuestas.Split('#').ToList(); if (!string.IsNullOrWhiteSpace(fillTheBox.RespuestasIncorrectas)) { respuestas.AddRange(fillTheBox.RespuestasIncorrectas.Split('#').ToList()); } respuestas.Shuffle(); PreguntaFillTheBox pregunta = new PreguntaFillTheBox() { Titulo = fillTheBox.Titulo, Audio = fillTheBox.FicheroAudio, Imagen = fillTheBox.UrlImagen, Enunciado = enunciado.ToArray(), Respuestas = respuestas.ToArray() }; return(Json(pregunta, JsonRequestBehavior.AllowGet)); }
// GET: Admin/FillTheBoxs/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } FillTheBox FillTheBox = db.FillTheBoxs.Find(id); if (FillTheBox == null) { return(HttpNotFound()); } var imgfullPath = Request.MapPath("~/media/upload/imagen_fillthebox/" + FillTheBox.UrlImagen); if (System.IO.File.Exists(imgfullPath)) { System.IO.File.Delete(imgfullPath); } string fullPath = Request.MapPath("~/media/upload/audio_fillthebox/" + FillTheBox.FicheroAudio); if (System.IO.File.Exists(fullPath)) { System.IO.File.Delete(fullPath); } db.FillTheBoxs.Remove(FillTheBox); db.SaveChanges(); return(RedirectToAction("Create", "FillTheBoxs", new { id = FillTheBox.BloqueId })); }
// GET: Admin/FillTheBoxs/Edit/5 public ActionResult Edit(int id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } FillTheBox FillTheBox = db.FillTheBoxs.Find(id); if (FillTheBox == null) { return(HttpNotFound()); } FillTheBoxEditViewModel viewModel = new FillTheBoxEditViewModel(); viewModel.Inicializar(FillTheBox.BloqueId); viewModel.FillTheBox = FillTheBox; return(View(viewModel)); }
public JsonResult Contestar(int id, string[] respuestas) { FillTheBox fillTheBox = db.FillTheBoxs.Find(id); bool[] correctas = new bool[respuestas.Length]; bool correcto = true; string enunciadoOriginal = fillTheBox.Enunciado; enunciadoOriginal = enunciadoOriginal.Replace("#", "|#|"); var enunciado = enunciadoOriginal.Split('|').ToArray(); var respuestaReal = fillTheBox.Respuestas.Split('#').ToArray(); int contadorTotal = 0; int contadorrespuesta = 0; for (int i = 0; i < enunciado.Length; i++) { if (enunciado[i] != "") { if (enunciado[i] == respuestas[contadorTotal]) { correctas[contadorTotal] = true; } else if (enunciado[i] == "#") { if (contadorrespuesta < respuestas.Length) { if (respuestaReal[contadorrespuesta] == respuestas[contadorTotal]) { correctas[contadorTotal] = true; } else { correcto = false; correctas[contadorTotal] = false; } } contadorrespuesta++; } else { correcto = false; correctas[contadorTotal] = false; } contadorTotal++; } } ResultadoFillTheBox resultado = new ResultadoFillTheBox(); resultado.correctas = correctas; resultado.Correcto = correcto; if (correcto) { AuthRepository authRepository = new AuthRepository(); ApplicationUser user = authRepository.FindByName(User.Identity.Name); user.PuntosActual = user.PuntosActual + 1; user.PuntosTotal = user.PuntosTotal + 1; var userResult = authRepository.Update(user); } resultado.Explicacion = fillTheBox.Explicacion; return(Json(resultado, JsonRequestBehavior.AllowGet)); }