public void CargarControles()
        {
            ManejadorDeCelulas manejador = new ManejadorDeCelulas();

            cboCelula.DataSource = manejador.ObtenerCelulasPermitidasPorMiembroComoCelulas(SesionActual.Instance.UsuarioId);
            cboCelula.DataBind();
        }
        public void CargarControles()
        {
            ManejadorDeCelulas manejadorCelulas = new ManejadorDeCelulas();

            StoreCelulas.Cargar(manejadorCelulas.ObtenerCelulasPermitidasPorMiembroComoCelulas(SesionActual.Instance.UsuarioId));
            StoreEstadosCiviles.Cargar(EstadoCivil.Obtener());
            StoreGeneros.Cargar(Genero.Obtener());
        }
        /// <summary>
        /// Esta funcion se encarga de generar un arbol de las celulas disponibles para dicho usuario, incluidas a las cuales es lider, lider del lider y la misma que el usuario mismo asiste
        /// </summary>
        /// <param name="usuarioId"></param>
        /// <param name="mostrarCheckboxes"></param>
        /// <returns></returns>
        public Ext.Net.TreeNode GenerarArbolDeCelulas(int usuarioId, ThreeStateBool mostrarCheckboxes, bool expandido)
        {
            ManejadorDeCelulas manejadorCelulas = new ManejadorDeCelulas();

            List <Celula> celulasPermitidas = manejadorCelulas.ObtenerCelulasPermitidasPorMiembroComoCelulas(usuarioId);

            TreeData.TreeDataTableDataTable dt = new TreeData.TreeDataTableDataTable();

            //Agregamos la celula a la que el miembro asiste, aun y cuando sera de solo lectura; solamente si no existia ya en la lista de celulas permitidas (es decir, asiste y es lider a la vez)
            Miembro miembro = (from o in SesionActual.Instance.getContexto <IglesiaEntities>().Miembro where o.MiembroId == usuarioId select o).SingleOrDefault();

            if (!(celulasPermitidas.Any(o => o.CelulaId == miembro.CelulaId)))
            {
                dt.AddTreeDataTableRow(miembro.CelulaId.ToString(), string.Empty, miembro.Celula.Descripcion, atributoDeSoloLectura);
            }

            string celulaId;
            string miembroCelulaId;
            string atributoExtra;

            foreach (Celula c in celulasPermitidas)
            {
                celulaId = c.CelulaId.ToString();
                if (c.CelulaLider.Count > 0)
                {
                    CelulaLider celulaLider = c.CelulaLider.FirstOrDefault(o => o.Borrado == false && o.Miembro.Borrado == false);
                    if (celulaLider != null)
                    {
                        miembroCelulaId = celulaLider.Miembro.CelulaId.ToString();
                        miembroCelulaId = (celulaId.Equals(miembroCelulaId)) ? string.Empty : miembroCelulaId; //Evitamos un loop infinito al momento en que el miembro sea lider de la celula a la que asiste
                        atributoExtra   = (string.IsNullOrEmpty(miembroCelulaId)) ? atributoDeSoloLectura : string.Empty;
                        dt.AddTreeDataTableRow(celulaId, miembroCelulaId, c.Descripcion, atributoExtra);
                    }
                }
            }

            //Obtenemos las celulas sin "lideres"
            List <Celula> celulasSinLider = manejadorCelulas.ObtenerCelulasSinLideresComoCelulas();

            if (celulasSinLider.Count > 0)
            {
                int idNodoCelulasSinLideres = 9999999;
                dt.AddTreeDataTableRow(idNodoCelulasSinLideres.ToString(), miembro.CelulaId.ToString(), "Celulas sin Asignacion de Lider", atributoDeSoloLectura);
                foreach (Celula c in celulasSinLider)
                {
                    dt.AddTreeDataTableRow(c.CelulaId.ToString(), idNodoCelulasSinLideres.ToString(), c.Descripcion, string.Empty);
                }
            }

            Ext.Net.TreeNode navegacion = new Ext.Net.TreeNode("Celulas");
            navegacion.Expanded = expandido;
            if ((celulasPermitidas != null) && (celulasPermitidas.Count > 0))
            {
                generarNodos(navegacion, TreeBuilder.GenerateTree(miembro.CelulaId.ToString(), dt), mostrarCheckboxes, expandido); //La celula inicial es la celula a la que el usuario asiste
            }

            return(navegacion);
        }
        public void CargarControles()
        {
            ManejadorDeCelulas manejador = new ManejadorDeCelulas();

            StoreCelulas.DataSource = manejador.ObtenerCelulasPermitidasPorMiembroComoCelulas(SesionActual.Instance.UsuarioId);
            StoreCelulas.DataBind();

            DateTime now = DateTime.Now;
            DateTime primerDiaDelMesPasado = new DateTime(now.Year, now.Month, 1).AddMonths(-1);

            dtpFechaInicial.SelectedDate = primerDiaDelMesPasado;
            dtpFechaFinal.SelectedDate   = now;
        }
        public void CargarControles()
        {
            StoreCelulas.Cargar(manejadorDeCelulas.ObtenerCelulasPermitidasPorMiembroComoCelulas(SesionActual.Instance.UsuarioId));

            // Precargamos la celula principal
            Celula celulaPrincipal = manejadorDeCelulas.ObtenerCelulaQueMiembroEsLider(SesionActual.Instance.UsuarioId);

            cboCelula.Value = celulaPrincipal.CelulaId;
            DateTime fechaPreseleccionada = manejadorDeAsistencias.ObtenerFechaDeSiguienteAsistencia(celulaPrincipal.CelulaId);

            dtpFecha.Value = fechaPreseleccionada;
            mostrarAsistencias(celulaPrincipal.CelulaId, fechaPreseleccionada);
        }