public static Nodo crearNodo(Grupo g) { Nodo nodo = new Nodo(); nodo.nombre = g.nombre; nodo.URL = g.URL; nodo.objetivo = g.objetivo; nodo.padreURL = g.padreURL; nodo.padreNombre = g.padreNombre; nodo.acceso = "si"; nodo.activos = g.getUsuariosHabilitadosActivos().Count; nodo.colorPromedio = g.queso.getColorPromedio(); nodo.horizontalidad = g.getHorizontalidad(); nodo.bloqueo = Math.Min(g.arbol.minSiValue, g.arbol.maxNoValue); nodo.minSiPc = g.arbol.minSiPc; nodo.maxNoPc = g.arbol.maxNoPc; List <nabu.Usuario> usus = g.usuarios; usus.Sort(new nabu.Usuario.RolComparer()); foreach (nabu.Usuario u in usus) { if (u.habilitado) { Usuario p = new Usuario(); p.nombre = u.nombre; p.funcion = u.funcion; p.email = u.email; p.born = u.born; p.isAdmin = u.isAdmin; p.isSecretaria = u.isSecretaria; p.isFacilitador = u.isFacilitador; p.isRepresentante = u.isRepresentante; p.isActive = u.isActive; p.apoyos = u.apoyos; //cantidad de apoyos por parte de otros usuarios p.readOnly = u.readOnly; p.grupoDesde = u.grupoDesde; nodo.usuarios.Add(p); } } if (g.organizacion.GetType().Name == "Plataforma") { organizaciones.Plataforma pl = (organizaciones.Plataforma)g.organizacion; foreach (plataforma.Seguimiento u in pl.seguimientos) { Seguimiento p = new Seguimiento(); p.nombre = u.nombre; p.EID = u.EID; p.born = u.born; p.objetivo = u.objetivo; p.responsable = u.responsable; p.icono = u.icono; nodo.seguimientos.Add(p); } } foreach (Hijo hijo in g.hijos) { Bosque.Nodo n = new Bosque.Nodo(); n.URL = hijo.URL; n.nombre = hijo.nombre; nodo.hijos.Add(n); } return(nodo); }