Example #1
0
        private async void search_btn_Clicked(object sender, EventArgs e)
        {
            this.progressBar.Opacity = 1;
            this.progressBar.ProgressTo(0.80, 1500, Easing.CubicInOut);

            filtri.nomeMateria = en_materia.Text;
            //filtri.posizione = (Posizione) await positionAdapter.calcolaPosizione();
            //filtri.posizione = await positionAdapter.Indirizzo2Posizione(Preferences.Get("indirizzoCorrente", null));
            Posizione pos = new Posizione();

            //if(Preferences.Get("latitudineCorrente", null) == null && Preferences.Get("longitudineCorrente", null) == null)
            if (Preferences.Get("isUsingCurrentPos", null) == null)
            {
                await DisplayAlert("Per eseguire la ricerca è necessaria la tua posizione", "Accendi la posizione del dispositivo o inserisci un indirizzo", "Ok");
            }
            else
            {
                filtri.posizione = await positionAdapter.decidiPosizione();

                /*pos.latitudine = double.Parse(Preferences.Get("latitudineCorrente", null));
                 * pos.longitudine = double.Parse(Preferences.Get("longitudineCorrente", null));
                 * pos.indirizzo = Preferences.Get("indirizzoCorrente", null);
                 * filtri.posizione = pos;*/
                RisultatoRicercaInsegnanti[] insegnanti = await InsegnantiService.GetInsegnanti(filtri);

                if (insegnanti != null)
                {
                    foreach (RisultatoRicercaInsegnanti r in insegnanti)
                    {
                        r.distanza = this.positionAdapter.approssimaDistanza(r.distanza);

                        /*
                         * if (r.valutazioneMedia == null || r.valutazioneMedia == "")
                         * {
                         *  //qualcosa per togliere la valutazione
                         *  r.valutazioneMedia = "-";
                         * }*/
                    }

                    insegnanti_list.IsVisible   = true;
                    ListaDiMaterie.IsVisible    = false;
                    insegnanti_list.ItemsSource = insegnanti;
                    this.lb_errore.IsVisible    = false;
                }
                else
                {
                    this.ListaDiMaterie.IsVisible = false;
                    this.lb_errore.IsVisible      = true;
                    insegnanti_list.IsVisible     = false;
                    Console.WriteLine("Nessun insegnante");
                }
            }
            this.WelcomeLabel.IsVisible = false;
            await this.progressBar.ProgressTo(1, 200, Easing.CubicInOut);

            this.progressBar.Opacity = 0;
            this.progressBar.ProgressTo(0, 0, Easing.Linear);
        }
Example #2
0
        private async void preferiti_list_ItemTapped(object sender, ItemTappedEventArgs e)
        {
            if (sender is ListView lv)
            {
                lv.SelectedItem = null;
            }
            this.IsEnabled = false;
            RisultatoRicercaInsegnanti r = (RisultatoRicercaInsegnanti)e.Item;
            Insegnante i = await InsegnantiService.getInsegnante(r.id);

            if (i.id != 0)
            {
                await Navigation.PushAsync(new ProfilePage2(i, "preferiti"));
            }
            this.IsEnabled = true;
        }
Example #3
0
        private async void Menu_ItemTapped(object sender, ItemTappedEventArgs e)
        {
            if (sender is ListView lv)
            {
                lv.SelectedItem = null;
            }
            ElementoMenu em = (ElementoMenu)e.Item;

            if (em.testo == "Diventa insegnante")
            {
                /*if (Preferences.Get("isInsegnante", false) == true)
                 *  await Navigation.PushAsync(new ProfilePage2(new Insegnante())); //sarà da mettere l'insegnante corrente
                 * else
                 * {*/
                if (Preferences.Get("id", null) == null)
                {
                    //await Navigation.PushAsync(new AccountPage());
                    Navigation.InsertPageBefore(new AccountPage(), this);
                    await Navigation.PopAsync();
                }
                else
                {
                    Navigation.InsertPageBefore(new EditProfilePage(new Insegnante()), this);
                    await Navigation.PopAsync();
                }
            }

            else if (em.testo == "Profilo insegnante")
            {
                Insegnante i = await InsegnantiService.getInsegnante(int.Parse(Preferences.Get("id", (-1).ToString()))); //occhio al null

                if (i.id != 0)
                {
                    //Navigation.InsertPageBefore(new ProfilePage2(i, "menu"), this);
                    //await Navigation.PopAsync();
                    await Navigation.PushAsync(new ProfilePage2(i, "menu"));
                }
            }

            else if (em.testo == "Insegnanti salvati")
            {
                this.IsEnabled = false;
                //await Navigation.PushAsync(new ProfilePage(new Insegnante()));
                if (Preferences.Get("id", null) != null)
                {
                    RisultatoRicercaInsegnanti[] risultati = await InsegnantiService.getPreferiti(int.Parse(Preferences.Get("id", null))); //eventualmente da spostare nella PreferitiPage

                    Navigation.InsertPageBefore(new PreferitiPage(risultati), this);
                    await Navigation.PopAsync();
                }
                else
                {
                    Navigation.InsertPageBefore(new AccountPage(), this);
                    await Navigation.PopAsync();
                }
                this.IsEnabled = true;
            }

            else if (em.testo == "Accedi o crea il tuo Account")
            {
                Navigation.InsertPageBefore(new AccountPage(), this);
                await Navigation.PopAsync();
            }

            else if (em.testo == "Il tuo account")
            {
                Navigation.InsertPageBefore(new UserAccountPage(), this);
                await Navigation.PopAsync();
            }
            //Navigation.InsertPageBefore(page, this);
            //await Navigation.PopAsync();
        }
Example #4
0
        private async void bt_SalvaProfilo_Clicked(object sender, EventArgs e)
        {
            this.IsEnabled = false;
            //nome
            insegnante.nomeDaVisualizzare = this.en_nome.Text;
            //tariffa
            insegnante.tariffa = float.Parse(this.en_tariffa.Text);
            //gruppo
            if (this.cb_gruppo.IsChecked)
            {
                insegnante.gruppo = 1;
            }
            else
            {
                insegnante.gruppo = 0;
            }

            //posizione
            if (en_indirizzo.Text != null)
            {
                Posizione pos = new Posizione();
                pos = await positionAdapter.Indirizzo2Posizione(en_indirizzo.Text);

                pos.id = insegnante.posizione.id;
                insegnante.posizione = pos;
            }
            //contatti
            Contatti c = new Contatti();

            c.cellulare         = this.en_cellulare.Text;
            c.emailContatto     = this.en_email.Text;
            c.facebook          = this.en_facebook.Text;
            insegnante.contatti = c;

            //materie
            if (!Preferences.Get("isInsegnante", false))
            {
                insegnante.materie = new List <Materia>();
            }

            Entry en = (Entry)StL_materie.Children[0];

            if (en.Text != null)
            {
                foreach (var element in this.StL_materie.Children)
                {
                    Entry entry = (Entry)element;
                    if (entry.Text != null)
                    {
                        insegnante.materie.Add(new Materia(entry.Text));
                    }
                }
            }

            //descrizione
            int indice = 1;

            if (insegnante.descrizione == null)
            {
                insegnante.descrizione = new List <SezioneProfilo>();
            }
            else
            {
                indice = insegnante.descrizione.Count + 1;
            }
            foreach (var element in this.stl_descrizione.Children)
            {
                Frame          frame = (Frame)element;
                StackLayout    stack = (StackLayout)frame.Content;
                SezioneProfilo s     = new SezioneProfilo();
                //Entry entryIndice = (Entry)stack.Children[0];
                s.indice = indice;//int.Parse(entryIndice.Text);
                Entry entryTitolo = (Entry)stack.Children[0];
                s.titolo = entryTitolo.Text;
                Editor entryCorpo = (Editor)stack.Children[1];
                s.corpo        = entryCorpo.Text;
                s.idInsegnante = insegnante.id;
                this.insegnante.descrizione.Add(s);
                indice++;
            }

            //modalità
            insegnante.modalita = this.pck_modalità.SelectedIndex;

            //profiloPublico
            insegnante.profiloPubblico = 0;
            //id
            insegnante.id = int.Parse(Preferences.Get("id", (-1).ToString()));

            insegnante.recensioni = new List <Recensione>();

            if (insegnante.id != -1)
            {
                InsegnantiService.Save(insegnante);
                Preferences.Set("isInsegnante", true);
                Navigation.InsertPageBefore(new ProfilePage2(insegnante, "salva"), this);
                await Navigation.PopAsync();

                //await Navigation.PushAsync(new ProfilePage2(insegnante));
            }
            else
            {
                Console.WriteLine("Errore");
            }
            this.IsEnabled = true;
        }
Example #5
0
 private void bt_addFav_Clicked(object sender, EventArgs e) // bottone per aggiungere ai preferiti da mostrare solo se si è utenti che vedono il profilo
 {
     this.bt_addFav.Source = "bookmark1";
     this.lbl_fav.Text     = "Salvato";
     InsegnantiService.aggiungiPreferito(int.Parse(Preferences.Get("id", null)), insegnante.id);
 }
Example #6
0
        private async void bt_applica_Clicked(object sender, EventArgs e)
        {
            //PROGRESS BAR
            this.progressBar.Opacity = 1;
            this.progressBar.ProgressTo(0.80, 1500, Easing.CubicInOut);

            filtri.tariffaMassima    = float.Parse(en_tariffa.Text);
            filtri.valutazioneMinima = float.Parse(en_valutazione.Text);
            filtri.distanzaMassima   = float.Parse(en_distanzaMax.Text);
            //filtri.posizione = (Posizione)await positionAdapter.calcolaPosizione();

            /*
             * if (Preferences.Get("latitudineDefault", null) != null && cb_posizione.IsChecked)
             * {
             *  Posizione pos = new Posizione();
             *  pos.latitudine = double.Parse(Preferences.Get("latitudineDefault", null));
             *  pos.longitudine = double.Parse(Preferences.Get("longitudineDefault", null));
             *  pos.indirizzo = Preferences.Get("indirizzoDefault", null);
             *  filtri.posizione = pos;
             * }
             * else
             * {
             *  filtri.posizione = await positionAdapter.Indirizzo2Posizione(Preferences.Get("indirizzoCorrente", null));
             * }*/
            if (Preferences.Get("isUsingCurrentPos", null) == null)
            {
                await DisplayAlert("Per eseguire la ricerca è necessaria la tua posizione", "Accendi la posizione del dispositivo o inserisci un indirizzo", "Ok");
            }
            else
            {
                filtri.posizione = await positionAdapter.decidiPosizione();

                RisultatoRicercaInsegnanti[] elenco = await InsegnantiService.GetInsegnanti(filtri);

                if (elenco != null)
                {
                    foreach (RisultatoRicercaInsegnanti r in elenco)
                    {
                        r.distanza = this.positionAdapter.approssimaDistanza(r.distanza);
                    }
                    parent.makeSubjectsInvisible();
                    insegnanti_list.IsVisible   = true;
                    insegnanti_list.ItemsSource = elenco;
                    this.lb_errore.IsVisible    = false;
                }
                else
                {
                    insegnanti_list.IsVisible = false;
                    this.lb_errore.IsVisible  = true;
                    Console.WriteLine("Nessun insegnante");
                }
            }
            this.welcomeLabel.IsVisible = false;
            //PROGRESS BAR
            await this.progressBar.ProgressTo(1, 200, Easing.CubicInOut);

            this.progressBar.Opacity = 0;
            this.progressBar.ProgressTo(0, 0, Easing.Linear);


            this.listaDiMaterie.IsVisible = false;
            parent.Opacity = 1;
            await Rg.Plugins.Popup.Services.PopupNavigation.Instance.PopAsync(true);

            SearchPage searchPage = (SearchPage)this.parent;
        }