public ActionResult Create(FormCollection formData)
        {
            try
            {
                // TODO: Add insert logic here

                if (ModelState.IsValid)
                {
                    aspnet_Acciones newAccion = new aspnet_Acciones();

                    //Asignamos los valores al abojeto
                    newAccion.OrigenID       = Convert.ToInt32(formData["OrigenID"].ToString());
                    newAccion.DepartamentoID = Convert.ToInt32(formData["DepartamentoID"].ToString());
                    newAccion.Delegaciones   = formData["arrDelegaciones"].Replace("false,", "").Replace(",false", "");
                    newAccion.Responsables   = formData["arrResponsables"].Replace("false,", "").Replace(",false", "");
                    if (formData["FechaInicio"].ToString().Length > 0)
                    {
                        newAccion.FechaInicio = Convert.ToDateTime(formData["FechaInicio"].ToString());
                    }
                    if (formData["FechaFinPrev"].ToString().Length > 0)
                    {
                        newAccion.FechaFinPrev = Convert.ToDateTime(formData["FechaFinPrev"].ToString());
                    }
                    if (formData["FechaFinReal"].ToString().Length > 0)
                    {
                        newAccion.FechaFinReal = Convert.ToDateTime(formData["FechaFinReal"].ToString());
                    }
                    if (formData["FechaSeguimiento"].ToString().Length > 0)
                    {
                        newAccion.FechaSeguimiento = Convert.ToDateTime(formData["FechaSeguimiento"].ToString());
                    }
                    newAccion.Accion    = formData["Accion"].ToString();
                    newAccion.Objetivo  = formData["Objetivo"].ToString();
                    newAccion.Resultado = formData["Resultado"].ToString();

                    db.AddToaspnet_Acciones(newAccion);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
                else
                {
                    return(View(formData));
                }
            }
            catch
            {
                return(View(formData));
            }
        }
 public ActionResult Delete(aspnet_Acciones deleted)
 {
     try
     {
         // TODO: Add delete logic here
         db.aspnet_Acciones.Attach(deleted);
         db.ObjectStateManager.ChangeObjectState(deleted, System.Data.EntityState.Deleted);
         db.aspnet_Acciones.DeleteObject(deleted);
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     catch
     {
         return(View(deleted));
     }
 }
        public ActionResult Edit(aspnet_Acciones modified, FormCollection formData)
        {
            try
            {
                // TODO: Add update logic here

                modified.Delegaciones = formData["arrDelegaciones"].Replace("false,", "").Replace(",false", "").Replace("false", "");
                modified.Responsables = formData["arrResponsables"].Replace("false,", "").Replace(",false", "").Replace("false", "");

                db.aspnet_Acciones.Attach(modified);
                db.ObjectStateManager.ChangeObjectState(modified, System.Data.EntityState.Modified);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
        //
        // GET: /Acciones/Edit/5

        public ActionResult Edit(int id)
        {
            aspnet_Acciones modified = db.aspnet_Acciones.FirstOrDefault(a => a.AccionesID == id);
            var             dptos    = db.aspnet_Departamentos.Select(d => new { d.DepartamentoID, d.Descripcion });
            SelectList      list     = new SelectList(dptos.AsEnumerable(), "DepartamentoID", "Descripcion", modified.DepartamentoID);

            ViewData["DepartamentoID"] = list;

            var origenes = db.aspnet_Origenes.Select(o => new { o.OrigenID, o.Descripcion });

            list = new SelectList(origenes.AsEnumerable(), "OrigenID", "Descripcion", modified.OrigenID);
            ViewData["OrigenID"] = list;

            var           delegaciones    = db.aspnet_Delegaciones.Select(d => new { d.DelegacionID, d.Descripcion });
            CheckBoxModel chkDelegaciones = new CheckBoxModel(delegaciones.AsEnumerable().OrderBy(d => d.Descripcion).ToDictionary(d => d.DelegacionID.ToString(), d => d.Descripcion), new List <string>());

            ViewData["chkDelegaciones"] = chkDelegaciones;

            IEnumerable <aspnet_Users> usuarios;

            if (User.IsInRole("Administrador"))
            {
                usuarios = from u in db.aspnet_Users select u;
            }
            else
            {
                usuarios = from u in db.aspnet_Users
                           from r in u.aspnet_Roles.DefaultIfEmpty()
                           where r.RoleName != "Administrador" || r.RoleName == null
                           select u;
            }
            CheckBoxModel chkResponsables = new CheckBoxModel(usuarios.AsEnumerable().Where(u => (ProfileBase.Create(u.UserName))["AplicacionesGM"].ToString().Split(',').Contains("1")).Distinct().OrderBy(u => u.UserName).ToDictionary(u => u.UserId.ToString(), u => u.UserName), new List <string>());

            ViewData["chkResponsables"] = chkResponsables;


            return(View(modified));
        }