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;
        }
Beispiel #3
0
 public bool RemoveEvento(Evento evento)
 {
     if (GetEventiFuturi().Contains(evento))
     {
         return(ListaEventi.Remove(evento));
     }
     return(false);
 }
Beispiel #4
0
 public void AddEvento(Evento evento)
 {
     if (evento == null || ListaEventi.Contains(evento))
     {
         throw new ArgumentException("evento==null || Evento gia' definito");
     }
     foreach (Evento singoliEventi in ListaEventi)
     {
         if (((evento.DataInizio + evento.Durata) > singoliEventi.DataInizio && evento.DataInizio < singoliEventi.DataInizio) ||
             ((evento.DataFine - evento.Durata) < singoliEventi.DataFine && evento.DataFine > singoliEventi.DataFine) ||
             (evento.DataInizio >= singoliEventi.DataInizio && evento.DataFine <= singoliEventi.DataFine))
         {
             throw new ArgumentException("L'evento coincide con un altro evento programmato");
         }
     }
     ListaEventi.Add(evento);
     ListaEventi.Sort(new EventoComparer());
 }
        /*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;
            }
        }