async void onAddBtnClicked(object sender, EventArgs e)
        {
            Rubrica newRubrica = new Rubrica();
            var     nextPage   = new RubricaCreateUpdatePage(true);

            nextPage.BindingContext = newRubrica;

            await Navigation.PushAsync(nextPage);
        }
        async public void OnEdit(object sender, EventArgs e)
        {
            var     menuItem = ((MenuItem)sender);
            Rubrica rubrica  = menuItem.CommandParameter as Rubrica;

            var nextPage = new RubricaCreateUpdatePage(false);

            nextPage.BindingContext = rubrica;
            await Navigation.PushAsync(nextPage);
        }
        async public void OnDelete(object sender, EventArgs e)
        {
            var     menuItem = ((MenuItem)sender);
            Rubrica rubrica  = menuItem.CommandParameter as Rubrica;

            await firebase
            .Child(Utils.FireBase_Entity.RUBRICAS)
            .Child(rubrica.Uid)
            .DeleteAsync();

            await FirebaseDB.getRubricas(rubricasCollection);
        }
Beispiel #4
0
        async private void populateCalificacionCollection(string rubricaUid, string evaluacionUid)
        {
            IList <Estudiante> estudiantes = await FirebaseDB.getEstudiantesForAsignatura(asignaturaUid);

            Rubrica rubrica = await FirebaseDB.getRubricaForId(rubricaUid);

            List <Categoria> categorias = await FirebaseDB.getCategoriasForRubrica(rubricaUid);

            foreach (var estudiante in estudiantes)
            {
                System.Diagnostics.Debug.WriteLine(estudiante.Name);
                CalificacionEvaluacion calificacionEvaluacion = new CalificacionEvaluacion(estudiante);
                var calificacionItem = await firebase
                                       .Child(Utils.FireBase_Entity.ASIGNATURAS)
                                       .Child(asignaturaUid)
                                       .Child(Utils.FireBase_Entity.EVALUACIONES)
                                       .Child(evaluacionUid)
                                       .Child(Utils.FireBase_Entity.CALIFICACION)
                                       .PostAsync(calificacionEvaluacion);

                foreach (var categoria in categorias)
                {
                    CalificacionCategoria calificacionCategoria = new CalificacionCategoria(categoria);
                    var categoriaItem = await firebase
                                        .Child(Utils.FireBase_Entity.ASIGNATURAS)
                                        .Child(asignaturaUid)
                                        .Child(Utils.FireBase_Entity.EVALUACIONES)
                                        .Child(evaluacionUid)
                                        .Child(Utils.FireBase_Entity.CALIFICACION)
                                        .Child(calificacionItem.Key)
                                        .Child(Utils.FireBase_Entity.CATEGORIAS)
                                        .PostAsync(calificacionCategoria);

                    List <Elemento> elementos = await FirebaseDB.getElementosForCategoria(rubricaUid, categoria.Uid);

                    foreach (var elemento in elementos)
                    {
                        CalificacionElemento calificacionElemento = new CalificacionElemento(0, elemento);
                        var elementoItem = await firebase
                                           .Child(Utils.FireBase_Entity.ASIGNATURAS)
                                           .Child(asignaturaUid)
                                           .Child(Utils.FireBase_Entity.EVALUACIONES)
                                           .Child(evaluacionUid)
                                           .Child(Utils.FireBase_Entity.CALIFICACION)
                                           .Child(calificacionItem.Key)
                                           .Child(Utils.FireBase_Entity.CATEGORIAS)
                                           .Child(categoriaItem.Key)
                                           .Child(Utils.FireBase_Entity.ELEMENTOS)
                                           .PostAsync(calificacionElemento);
                    }
                }
            }
        }
        async void onSelection(object sender, SelectedItemChangedEventArgs e)
        {
            if (e.SelectedItem == null)
            {
                return;                 //ItemSelected is called on deselection, which results in SelectedItem being set to null
            }

            Rubrica rubrica = e.SelectedItem as Rubrica;

            await Navigation.PushAsync(new CategoriasDentroRubricasPage(rubrica.Uid));

            ((ListView)sender).SelectedItem = null;             // unselect item
        }
Beispiel #6
0
        public static async Task <Rubrica> getRubricaForId(string rubricaUid)
        {
            var list = (await FIREBASE
                        .Child(Utils.FireBase_Entity.RUBRICAS)
                        .OnceAsync <Rubrica>());

            foreach (var item in list)
            {
                Rubrica rubrica = item.Object as Rubrica;
                if (item.Key == rubricaUid)
                {
                    return(rubrica);
                }
            }
            return(null);
        }
Beispiel #7
0
        public async Task <int> getFireRubricas()
        {
            List <string> rubricasStrings = new List <string>();
            var           list            = (await firebase
                                             .Child(Utils.FireBase_Entity.RUBRICAS)
                                             .OnceAsync <Rubrica>());

            foreach (var item in list)
            {
                Rubrica rubrica = item.Object as Rubrica;
                rubrica.Uid = item.Key;
                rubricas.Add(rubrica);
                rubricasStrings.Add(rubrica.Name);
            }
            picker.ItemsSource = rubricasStrings;

            return(0);
        }
Beispiel #8
0
        public static async Task <IList <Rubrica> > getRubricas(IList <Rubrica> rubricasCollection = null)
        {
            if (rubricasCollection == null)
            {
                rubricasCollection = new ObservableCollection <Rubrica> {
                }
            }
            ;

            var list = (await FIREBASE
                        .Child(Utils.FireBase_Entity.RUBRICAS)
                        .OnceAsync <Rubrica>());

            rubricasCollection.Clear();

            foreach (var item in list)
            {
                Rubrica rubrica = item.Object as Rubrica;
                rubrica.Uid = item.Key;
                rubricasCollection.Add(rubrica);
            }
            return(rubricasCollection);
        }