public static List <Suscripcion> GetAll(Castellano.Membresia.Aplicacion aplicacion, Castellano.Membresia.Usuario usuario) { return (( from query in Query.GetSuscripciones(aplicacion, usuario) select query ).ToList <Suscripcion>()); }
public ActionResult Aplicaciones(Castellano.Web.UI.Areas.Administracion.Models.Aplicacion model) { if (!this.ModelState.IsValid) { return(this.View(model)); } Castellano.Membresia.Aplicacion aplicacion = Castellano.Membresia.Aplicacion.Get(model.Id); using (Castellano.Membresia.Context context = new Castellano.Membresia.Context()) { foreach (Castellano.Membresia.Perfil perfil in Castellano.Membresia.Perfil.GetAll()) { new Castellano.Membresia.AplicacionPerfil { AplicacionId = model.Id, PerfilId = perfil.Id }.Delete(context); } context.SubmitChanges(); } using (Castellano.Membresia.Context context = new Castellano.Membresia.Context()) { new Castellano.Membresia.Aplicacion { Id = model.Id, MenuId = aplicacion == null ? default(Guid) : aplicacion.MenuId, MenuItemId = aplicacion == null ? default(Guid) : aplicacion.MenuItemId, Nombre = model.Nombre.Trim(), Clave = model.Clave.Trim(), Orden = model.Orden }.Save(context); foreach (Guid perfilId in model.SelectedPerfil) { new Castellano.Membresia.AplicacionPerfil { AplicacionId = model.Id, PerfilId = perfilId }.Save(context); } context.SubmitChanges(); } return(this.Json("200 ok", JsonRequestBehavior.DenyGet)); }
public JsonResult GetAplicacion(Guid id) { Castellano.Membresia.Aplicacion aplicacion = Castellano.Membresia.Aplicacion.Get(id); List <Castellano.Membresia.AplicacionPerfil> aplicacionPerfiles = Castellano.Membresia.AplicacionPerfil.GetAll(aplicacion); return(this.Json(new Castellano.Web.UI.Areas.Administracion.Models.Aplicacion { Id = aplicacion.Id, Nombre = aplicacion.Nombre, Clave = aplicacion.Clave, Orden = aplicacion.Orden, SelectedPerfil = aplicacionPerfiles.Any() ? aplicacionPerfiles.Select <Castellano.Membresia.AplicacionPerfil, Guid>(x => x.PerfilId).ToList <Guid>() : null }, JsonRequestBehavior.AllowGet)); }
public static MvcHtmlString MenuOrderable(this HtmlHelper helper, Castellano.Membresia.Aplicacion aplicacion) { if (!aplicacion.MenuItemId.HasValue) { throw new Exception("La aplicación no tiene la relación con el ítem de menú root"); } TagBuilder t = new TagBuilder("div"); t.Attributes.Add("id", "menu"); t.AddCssClass("dd"); t.InnerHtml += "<ol class='dd-list'>"; foreach (Castellano.Membresia.MenuItem menuItem in Castellano.Membresia.MenuItem.GetAll(Castellano.Membresia.Menu.MenuPrincipal, aplicacion, aplicacion.Inicio)) { t.InnerHtml += "<li class='dd-item' data-id='" + menuItem.Id.ToString() + "'>"; t.InnerHtml += string.Format("<div class='dd-handle'>{0}</div>", menuItem.Nombre); t.InnerHtml += string.Format("<div>{0}{1}{2}</div>", Castellano.Helpers.ActionLinkExtension.ActionLinkCrudEmbedded(menuItem.Id, menuItem.MenuItemId, TypeButton.Add), Castellano.Helpers.ActionLinkExtension.ActionLinkCrudEmbedded(menuItem.Id, menuItem.MenuItemId, TypeButton.Edit), Castellano.Helpers.ActionLinkExtension.ActionLinkCrudEmbedded(menuItem.Id, menuItem.MenuItemId, TypeButton.Delete)); string html = MenuExtension.MenuOrderable(menuItem); if (string.IsNullOrEmpty(html)) { t.InnerHtml += "</li>"; } else { t.InnerHtml += "<ol class='dd-list'>"; t.InnerHtml += html; t.InnerHtml += "</ol></li>"; } } t.InnerHtml += "</ol>"; return(new MvcHtmlString(t.ToString(TagRenderMode.Normal))); }
public JsonResult DeleteAplicacion(Guid id) { Castellano.Membresia.Aplicacion aplicacion = Castellano.Membresia.Aplicacion.Get(id); using (Castellano.Membresia.Context context = new Castellano.Membresia.Context()) { new Castellano.Membresia.Aplicacion { Id = aplicacion.Id, MenuId = aplicacion.MenuId, MenuItemId = aplicacion.MenuItemId, Nombre = aplicacion.Nombre, Clave = aplicacion.Clave, Orden = aplicacion.Orden }.Delete(context); context.SubmitChanges(); } return(this.Json("200 ok", JsonRequestBehavior.AllowGet)); }
public JsonResult GetRolAccion(Guid rolId, Guid aplicacionId) { Castellano.Membresia.Rol rol = Castellano.Membresia.Rol.Get(rolId); Castellano.Membresia.Aplicacion aplicacion = Castellano.Membresia.Aplicacion.Get(aplicacionId); List <Castellano.Membresia.Accion> acciones = Castellano.Membresia.Accion.GetAll(); Castellano.Web.UI.Areas.Administracion.Models.RolAccion.RolAcciones rolAcciones = new Castellano.Web.UI.Areas.Administracion.Models.RolAccion.RolAcciones(); foreach (Castellano.Membresia.MenuItem menuItem in Castellano.Membresia.MenuItem.GetAll(Castellano.Membresia.Menu.MenuPrincipal, aplicacion)) { Castellano.Web.UI.Areas.Administracion.Models.RolAccion model = new Castellano.Web.UI.Areas.Administracion.Models.RolAccion { RolId = rol.Id, AplicacionId = aplicacion.Id, MenuId = menuItem.MenuId, MenuItemId = menuItem.Id, MenuItem = menuItem.Nombre }; foreach (Castellano.Membresia.Accion accion in acciones) { model.Accion += string.Format("<label class='checkbox-inline'><input type='checkbox' checked='' name='Accion' class='icheck'>{0}</label>", accion.Nombre); model.Acciones.Add(new SelectListItem { Text = accion.Nombre, Value = accion.Codigo.ToString() }); } rolAcciones.data.Add(model); } return(this.Json(rolAcciones, JsonRequestBehavior.AllowGet)); }
public JsonResult GetItemsMenu(Guid aplicacionId) { Castellano.Membresia.Aplicacion aplicacion = Castellano.Membresia.Aplicacion.Get(aplicacionId); return(this.Json(Castellano.Helpers.MenuExtension.MenuOrderable(null, aplicacion).ToString(), JsonRequestBehavior.AllowGet)); }
public static void OrderMenu(string data) { List <MenuAuxiliar> menusauxiliares = new List <MenuAuxiliar>(); JArray jsonArray = JsonConvert.DeserializeObject(data) as JArray; Guid menuItemId = (Guid)(jsonArray.First["id"]); Castellano.Membresia.Aplicacion aplicacion = Castellano.Membresia.Aplicacion.GetAplicacion(menuItemId); //Se rompe la relación recursiva del padre con el hijo using (Castellano.Membresia.Context context = new Castellano.Membresia.Context()) { foreach (Castellano.Membresia.MenuItem menuItem in Castellano.Membresia.MenuItem.GetAll(Castellano.Membresia.Menu.MenuPrincipal, aplicacion).Where <Castellano.Membresia.MenuItem>(x => !x.Equals(aplicacion.Inicio))) { new Castellano.Membresia.MenuItem { AplicacionId = menuItem.AplicacionId, MenuId = menuItem.MenuId, Id = menuItem.Id, MenuItemId = default(Guid), Nombre = menuItem.Nombre, Informacion = menuItem.Informacion, Icono = menuItem.Icono, Url = menuItem.Url, Visible = menuItem.Visible, MuestraMenus = menuItem.MuestraMenus, Orden = menuItem.Orden }.Save(context); } context.SubmitChanges(); } //Se obtiene el orden y los nuevos padres e hijos desde el Json generado por el control foreach (JObject j in jsonArray) { menusauxiliares.Add(new MenuAuxiliar { Padre = aplicacion.Inicio.Id, Hijo = (Guid)j["id"] }); JArray array = j["children"] as JArray; if (array != null) { MenuItem.OrderMenu(array, (Guid)j["id"], menusauxiliares); } } int order = (aplicacion.Orden * 1000) + 1; using (Castellano.Membresia.Context context = new Castellano.Membresia.Context()) { foreach (MenuAuxiliar menuAuxiliar in menusauxiliares) { Castellano.Membresia.MenuItem menuItem = Castellano.Membresia.Query.GetMenuItemes().SingleOrDefault <Castellano.Membresia.MenuItem>(x => x.Id.Equals(menuAuxiliar.Hijo)); new Castellano.Membresia.MenuItem { AplicacionId = menuItem.AplicacionId, MenuId = menuItem.MenuId, Id = menuItem.Id, MenuItemId = menuAuxiliar.Padre, Nombre = menuItem.Nombre, Informacion = menuItem.Informacion, Icono = menuItem.Icono, Url = menuItem.Url, Visible = menuItem.Visible, MuestraMenus = menuItem.MuestraMenus, Orden = order }.Save(context); order++; } context.SubmitChanges(); } }