public async Task EliminaButton(DatiEvento eventoDeclinato)
        {
            REST <Object, bool> connessione = new REST <Object, bool>();

            eventoDeclinato.confermato     = false;
            eventoDeclinato.eliminato      = true;
            eventoDeclinato.organizzazione = user.organizzazione;
            eventoDeclinato.immagine       = null;
            eventoDeclinato.Immagine       = null;
            IsBusy = true;
            bool esito = await connessione.PostJson(URL.ConfermaElimina, eventoDeclinato);

            if (esito)
            {
                if (eventoDeclinato.tipo == "1")
                {
                    await App.Current.MainPage.DisplayAlert("Attenzione", "L'evento è stato declinato", "Ok");
                }
                else
                {
                    await App.Current.MainPage.DisplayAlert("Attenzione", "La nota è stata eliminata", "Ok");
                }
            }
            else
            {
                await App.Current.MainPage.DisplayAlert("Attenzione", "Connessione non riuscita, riprovare", "Ok");
            }
            ListaEventi.Clear();
            ListaNote.Clear();
            GroupDatiEvento.Clear();
            leggiDati();
            IsBusy = false;
        }
        public async Task ConfermaButton(DatiEvento eventoConfermato)
        {
            REST <Object, bool> connessione = new REST <Object, bool>();

            eventoConfermato.confermato     = true;
            eventoConfermato.eliminato      = false;
            eventoConfermato.organizzazione = user.organizzazione;
            eventoConfermato.immagine       = null;
            eventoConfermato.Immagine       = null;
            var medico = LoginData.getUser();

            IsBusy = true;
            bool esito = await connessione.PostJson(URL.ConfermaElimina, eventoConfermato);

            if (esito == true)
            {
                await App.Current.MainPage.DisplayAlert("CONFERMA", "Complimenti la partecipazione è andata a buon fine", "Ok");
            }
            else
            {
                await App.Current.MainPage.DisplayAlert("Attenzione", "Connessione non riuscita riprovare", "Ok");
            }
            ListaEventi.Clear();
            ListaNote.Clear();
            GroupDatiEvento.Clear();
            leggiDati();
            IsBusy = false;
        }
        /*Effettua la connessione per ricevere i dati dal server*/
        public async void leggiDati()
        {
            IsVoidEvent = false;
            ObservableCollection <GroupDatiEvento> groupList = new ObservableCollection <GroupDatiEvento>();
            REST <Object, DatiEvento> connessione            = new REST <Object, DatiEvento>();
            List <DatiEvento>         List = new List <DatiEvento>();
            var medico = LoginData.getUser();

            foreach (var i in medico)
            {
                if (i.attivo)
                {
                    user.username       = i.username;
                    user.token          = i.token;
                    user.organizzazione = i.organizzazione;
                    user.eliminato      = "false";
                }
            }
            if (string.IsNullOrEmpty(user.username))
            {
                user.username       = medico[0].username;
                user.password       = medico[0].password;
                user.token          = medico[0].token;
                user.organizzazione = medico[0].organizzazione;
                user.eliminato      = "false";
            }
            if (CrossConnectivity.Current.IsConnected)
            {
                List = await connessione.PostJsonList(URL.Eventi, user);

                if (List == null)
                {
                    NessunEvento = "Nessun evento disponibile \n Scorri in basso per aggiornare";
                    IsVoidEvent  = true;
                }
                else
                {
                    if (List.Count != 0)
                    {
                        foreach (var i in List)
                        {
                            CultureInfo culture = new CultureInfo(cultureName);
                            formaDateTime      = Convert.ToDateTime(i.data, culture);
                            i.data             = formaDateTime.ToString("dd/MM/yyyy", CultureInfo.InvariantCulture);
                            i.data_ordinamento = formaDateTime;
                            i.dat_fine         = i.data_fine.ToString("dd/MM/yyyy", CultureInfo.InvariantCulture);


                            string img = "";
                            try
                            {
                                if (!String.IsNullOrEmpty(i.immagine))
                                {
                                    if (i.immagine.Contains("jpeg;"))
                                    {
                                        img = i.immagine.Substring(23);
                                    }
                                    else
                                    {
                                        img = i.immagine.Substring(22);
                                    }

                                    immagine = Xamarin.Forms.ImageSource.FromStream(
                                        () => new MemoryStream(Convert.FromBase64String(img)));
                                    i.Immagine = immagine;
                                }
                            }
                            catch (Exception e)
                            {
                                i.Immagine = "";
                            }

                            if (i.confermato == true)
                            {
                                i.TestoButtonEliminato = "ELIMINA";
                            }

                            if (i.tipo == "1")
                            {
                                listaEventi.Add(i);
                            }

                            else if (i.tipo == "2")
                            {
                                listaNote.Add(i);
                            }
                        }

                        ListaEventi = ListaEventi.OrderByDescending(o => o.data_ordinamento).ToList();
                        GroupDatiEvento cGroupListEventi = new GroupDatiEvento(listaEventi);
                        cGroupListEventi.Heading = "Eventi";
                        groupList.Add(cGroupListEventi);


                        listaNote = listaNote.OrderByDescending(o => o.data_ordinamento).ToList();
                        GroupDatiEvento cGroupListNote = new GroupDatiEvento(listaNote);
                        cGroupListNote.Heading = "Note";

                        groupList.Add(cGroupListNote);
                        //ListaEventi = listaEventi;
                        GroupDatiEvento = groupList;

                        IsBusy = false;
                    }
                    else
                    {
                        DatiEvento evento = new DatiEvento();
                        evento.titolo       = "Nessun evento disponibile \n Scorri in basso per aggiornare";
                        IsVoidEvent         = true;
                        NessunEvento        = "Nessun evento disponibile \n Scorri in basso per aggiornare";
                        evento.VisibleError = "false";
                        listaEventi.Add(evento);
                        listaNote.Add(evento);
                    }

                    //ListaEventi = listaEventi;
                    GroupDatiEvento = groupList;
                    IsBusy          = false;
                }
            }
            else
            {
                DatiEvento evento = new DatiEvento();
                evento.titolo       = "Nessun evento \n Scorri in basso per aggiornare";
                evento.VisibleError = "false";
                IsVoidEvent         = true;
                NessunEvento        = "Nessun evento \n Scorri in basso per aggiornare";
                listaEventi.Add(evento);
                listaNote.Add(evento);
                //ListaEventi = listaEventi;
                GroupDatiEvento = groupList;
                IsBusy          = false;
            }
        }
예제 #4
0
        /*Effettua la connessione per ricevere i dati dal server*/
        public async void leggiDati()
        {
            IsBusy = true;
            ObservableCollection <GroupDatiEvento> groupList = new ObservableCollection <GroupDatiEvento>();
            REST <Object, DatiEvento> connessione            = new REST <Object, DatiEvento>();
            var    use  = LoginData.getUser();
            Utente user = new Utente();

            user.username       = use[0].username;
            user.password       = use[0].password;
            user.organizzazione = use[0].organizzazione;
            user.token          = use[0].token;
            user.eliminato      = "false";
            try
            {
                var list = await connessione.PostJsonList(URL.Eventi, user);

                if (list.Count != 0)
                {
                    foreach (var i in list)
                    {
                        CultureInfo culture       = new CultureInfo(cultureName);
                        var         formaDateTime = Convert.ToDateTime(i.data, culture);
                        i.data = formaDateTime.ToString().Substring(0, 10);
                        if (i.confermato == true)
                        {
                            i.TestoButtonEliminato = "ELIMINA";
                        }

                        if (i.tipo == "1")
                        {
                            listaEventi.Add(i);
                        }
                        else if (i.tipo == "2")
                        {
                            listaNote.Add(i);
                        }
                    }
                    GroupDatiEvento cGroupListEventi = new GroupDatiEvento(listaEventi);
                    cGroupListEventi.Heading = "Eventi";
                    groupList.Add(cGroupListEventi);
                    GroupDatiEvento cGroupListNote = new GroupDatiEvento(listaNote);
                    cGroupListNote.Heading = "Note";
                    groupList.Add(cGroupListNote);
                    IsBusy = false;
                }
                else
                {
                    DatiEvento x = new DatiEvento();
                    x.titolo       = "Nessun evento disponibile \n Scorri in basso per aggiornare";
                    NessunEvento   = "Nessun evento disponibile \n Scorri in basso per aggiornare";
                    x.VisibleError = "false";
                    listaEventi.Add(x);
                    listaNote.Add(x);
                    IsBusy = false;
                }
                GroupDatiEvento = groupList;
            }
            catch (Exception a)
            {
                DatiEvento x = new DatiEvento();
                x.titolo       = "Nessun evento disponibile \n Scorri in basso per aggiornare";
                x.VisibleError = "false";
                NessunEvento   = "Nessun evento disponibile \n Scorri in basso per aggiornare";
                listaEventi.Add(x);
                listaNote.Add(x);
                //ListaEventi = listaEventi;
                GroupDatiEvento = groupList;
                IsBusy          = false;
            }
        }