public ActionResult DeleteConfirmed(string id)
        {
            Pregunta_con_opciones_de_seleccion pregunta_con_opciones_de_seleccion = db.Pregunta_con_opciones_de_seleccion.Find(id);

            db.Pregunta_con_opciones_de_seleccion.Remove(pregunta_con_opciones_de_seleccion);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
 public ActionResult Edit([Bind(Include = "Codigo,Tipo")] Pregunta_con_opciones_de_seleccion pregunta_con_opciones_de_seleccion)
 {
     if (ModelState.IsValid)
     {
         db.Entry(pregunta_con_opciones_de_seleccion).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.Codigo = new SelectList(db.Pregunta_con_opciones, "Codigo", "TituloCampoObservacion", pregunta_con_opciones_de_seleccion.Codigo);
     return(View(pregunta_con_opciones_de_seleccion));
 }
        // GET: Pregunta_con_opciones_de_seleccion/Details/5
        public ActionResult Details(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Pregunta_con_opciones_de_seleccion pregunta_con_opciones_de_seleccion = db.Pregunta_con_opciones_de_seleccion.Find(id);

            if (pregunta_con_opciones_de_seleccion == null)
            {
                return(HttpNotFound());
            }
            return(View(pregunta_con_opciones_de_seleccion));
        }
        // GET: Pregunta_con_opciones_de_seleccion/Edit/5
        public ActionResult Edit(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Pregunta_con_opciones_de_seleccion pregunta_con_opciones_de_seleccion = db.Pregunta_con_opciones_de_seleccion.Find(id);

            if (pregunta_con_opciones_de_seleccion == null)
            {
                return(HttpNotFound());
            }
            ViewBag.Codigo = new SelectList(db.Pregunta_con_opciones, "Codigo", "TituloCampoObservacion", pregunta_con_opciones_de_seleccion.Codigo);
            return(View(pregunta_con_opciones_de_seleccion));
        }
        public ActionResult Create(Pregunta_con_opciones_de_seleccion pregunta, List <Opciones_de_seleccion> Opciones)
        {
            if (ModelState.IsValid && pregunta.Codigo.Length > 0 && pregunta.Pregunta_con_opciones.Pregunta.Enunciado.Length > 0)
            {
                bool validOptions = Opciones != null;
                if (validOptions)
                {
                    validOptions = false;
                    foreach (Opciones_de_seleccion opcion in Opciones)
                    {
                        if (opcion.Texto != null && opcion.Texto.Length > 0)
                        {
                            validOptions = true;
                        }
                    }
                }

                if (!validOptions)
                {
                    ModelState.AddModelError("", "Una pregunta de selección única necesita al menos una opción");
                    return(View(pregunta));
                }
                try
                {
                    if (db.AgregarPreguntaConOpcion(pregunta.Codigo, "U", pregunta.Pregunta_con_opciones.Pregunta.Enunciado, pregunta.Pregunta_con_opciones.TituloCampoObservacion, null) == 0)
                    {
                        ModelState.AddModelError("Codigo", "Código ya en uso.");
                        return(View(pregunta));
                    }
                }
                catch (System.Data.SqlClient.SqlException)
                {
                    ModelState.AddModelError("Codigo", "Código ya en uso.");
                    return(View(pregunta));
                }

                foreach (Opciones_de_seleccion opcion in Opciones)
                {
                    db.AgregarOpcion(pregunta.Codigo, (byte)opcion.Orden, opcion.Texto);
                }

                ViewBag.Message = "Exitoso";
                return(View());
            }

            return(View());
        }
        // GET: PreguntaConOpcionesDeSeleccion/Delete/5
        public ActionResult Delete(string id)
        {
            if (!permissionManager.IsAuthorized(Permission.BORRAR_PREGUNTA))
            {
                TempData["alertmessage"] = "No tiene permisos para acceder a esta página.";
                return(RedirectToAction("../Home/Index"));
            }

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Pregunta_con_opciones_de_seleccion pregunta_con_opciones_de_seleccion = db.Pregunta_con_opciones_de_seleccion.Find(id);

            if (pregunta_con_opciones_de_seleccion == null)
            {
                return(HttpNotFound());
            }
            return(View(pregunta_con_opciones_de_seleccion));
        }
        // GET: PreguntaConOpcionesDeSeleccion/Edit/5
        public ActionResult Edit(string id)
        {
            if (!permissionManager.IsAuthorized(Permission.EDITAR_PREGUNTA))
            {
                TempData["alertmessage"] = "No tiene permisos para acceder a esta página.";
                return(RedirectToAction("../Home/Index"));
            }

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Pregunta_con_opciones_de_seleccion pregunta_con_opciones_de_seleccion = db.Pregunta_con_opciones_de_seleccion.Find(id);

            if (pregunta_con_opciones_de_seleccion == null)
            {
                return(HttpNotFound());
            }
            ViewBag.Codigo = new SelectList(db.Pregunta_con_opciones, "Codigo", "TituloCampoObservacion", pregunta_con_opciones_de_seleccion.Codigo);
            return(View(pregunta_con_opciones_de_seleccion));
        }