public UrediSlozenost(Slozenost ss)
 {
     InitializeComponent();
     BindingContext = model = new UrediSlozenostViewModel {
         Slozenost = ss
     };
     s = ss;
 }
        private async void Button_Clicked(object sender, EventArgs e)
        {
            if (ReceptSastojakList.Count() <= 1)
            {
                await DisplayAlert("Greška", "Potrebno je unijeti minimalno 2 sastojka", "OK");
            }
            else if (!Regex.IsMatch(this.Naziv.Text, @"^[a-zA-Z ]+$") && this.Naziv.Text.Length < 4)
            {
                await DisplayAlert("Greška", "Naziv se sastoji samo od slova", "OK");
            }
            else if (!Regex.IsMatch(this.Tekst.Text, @"^[a-zA-Z ]+$") && this.Tekst.Text.Length < 10)
            {
                await DisplayAlert("Greška", "Tekst se sastoji samo od slova", "OK");
            }
            else if (this.GrupaJelaPicker.SelectedItem == null)
            {
                await DisplayAlert("Greška", "Trebate odabrati grupu jela", "OK");
            }
            else if (this.KategorijaPicker.SelectedItem == null)
            {
                await DisplayAlert("Greška", "Trebate odabrati kategoriju jela", "OK");
            }
            else if (this.SlozenostPicker.SelectedItem == null)
            {
                await DisplayAlert("Greška", "Trebate odabrati slozenost jela", "OK");
            }
            else if (!Regex.IsMatch(this.BrojLjudi.Text, @"^[0-9]+$"))
            {
                await DisplayAlert("Greška", "Broj ljudi se označava brojem", "OK");
            }

            else if (!Regex.IsMatch(this.VrijemePripreme.Text, @"^[0-9]+$"))
            {
                await DisplayAlert("Greška", "Vrijeme pripreme se piše u minutama", "OK");
            }
            else if (!Regex.IsMatch(this.VrijemeKuhanja.Text, @"^[0-9]+$"))
            {
                await DisplayAlert("Greška", "Vrijeme kuhanja se piše u minutama", "OK");
            }
            else
            {
                try
                {
                    Korisnik        korisnik = new Korisnik();
                    var             username = APIService.Username;
                    List <Korisnik> lista    = await _apiKorisnik.Get <List <Korisnik> >(null);

                    foreach (var k in lista)
                    {
                        if (k.KorisnickoIme == username)
                        {
                            korisnik = k;
                            break;
                        }
                    }
                    model.Naziv = this.Naziv.Text;
                    model.Tekst = this.Tekst.Text;
                    GrupaJela grupajela = this.GrupaJelaPicker.SelectedItem as GrupaJela;
                    model.GrupaJelaId = grupajela.GrupaJelaId;
                    Kategorija kategorija = this.KategorijaPicker.SelectedItem as Kategorija;
                    model.KategorijaId = kategorija.KategorijaId;
                    Slozenost slozenost = this.SlozenostPicker.SelectedItem as Slozenost;
                    model.SlozenostId        = slozenost.SlozenostId;
                    model.DatumVrijemeObjave = DateTime.Now;
                    model.VrijemeKuhanja     = Convert.ToInt32(this.VrijemeKuhanja.Text);
                    model.VrijemePripreme    = Convert.ToInt32(this.VrijemePripreme.Text);

                    model.BrojLjudi = Convert.ToInt32(this.BrojLjudi.Text);
                    await model.DodajRecept();

                    ReceptSastojakList.ForEach(x => x.ReceptId = model.recept.ReceptId);
                    foreach (var i in ReceptSastojakList)
                    {
                        ReceptSastojakUpsertRequest requestSastojak = new ReceptSastojakUpsertRequest()
                        {
                            SastojakId       = i.SastojakId,
                            MjernaJedinicaId = i.MjernaJedinicaId,
                            MjernaKolicinaId = i.MjernaKolicinaId,
                            ReceptId         = i.ReceptId
                        };
                        await _apiReceptSastojak.Insert <ReceptSastojak>(requestSastojak);
                    }
                    await Application.Current.MainPage.DisplayAlert("Poruka", "Uspješno ste pohranili recept", "OK");

                    await Navigation.PushAsync(new PrikazRecepataPage());
                }
                catch (Exception err)
                {
                    throw new Exception(err.Message);
                }
            }
        }
示例#3
0
        private async void Button_Clicked(object sender, EventArgs e)
        {
            if (!Regex.IsMatch(this.Naziv.Text, @"^[a-zA-Z ]+$") && this.Naziv.Text.Length < 4)
            {
                await DisplayAlert("Greška", "Naziv se sastoji samo od slova", "OK");
            }
            else if (!Regex.IsMatch(this.Tekst.Text, @"^[a-zA-Z ]+$") && this.Tekst.Text.Length < 10)
            {
                await DisplayAlert("Greška", "Tekst se sastoji samo od slova", "OK");
            }
            else if (this.grupajela.SelectedItem == null)
            {
                await DisplayAlert("Greška", "Trebate odabrati grupu jela", "OK");
            }
            else if (this.kategorija.SelectedItem == null)
            {
                await DisplayAlert("Greška", "Trebate odabrati kategoriju jela", "OK");
            }
            else if (this.slozenost.SelectedItem == null)
            {
                await DisplayAlert("Greška", "Trebate odabrati slozenost jela", "OK");
            }
            else if (!Regex.IsMatch(this.BrojLjudi.Text, @"^[0-9]+$"))
            {
                await DisplayAlert("Greška", "Broj ljudi se označava brojem", "OK");
            }

            else if (!Regex.IsMatch(this.VrijemePripreme.Text, @"^[0-9]+$"))
            {
                await DisplayAlert("Greška", "Vrijeme pripreme se piše u minutama", "OK");
            }
            else if (!Regex.IsMatch(this.VrijemeKuhanja.Text, @"^[0-9]+$"))
            {
                await DisplayAlert("Greška", "Vrijeme kuhanja se piše u minutama", "OK");
            }
            else
            {
                try
                {
                    Korisnik        korisnik = new Korisnik();
                    var             username = APIService.Username;
                    List <Korisnik> lista    = await Korisnik.Get <List <Korisnik> >(null);

                    foreach (var k in lista)
                    {
                        if (k.KorisnickoIme == username)
                        {
                            korisnik = k;
                            break;
                        }
                    }

                    ReceptUpsertRequest req = new ReceptUpsertRequest();

                    req.Naziv       = this.Naziv.Text;
                    req.Tekst       = this.Tekst.Text;
                    req.DatumObjave = this.DatumObjave.Date;
                    GrupaJela grupajela = this.grupajela.SelectedItem as GrupaJela;
                    req.GrupaJelaId = grupajela.GrupaJelaId;
                    Kategorija kategorija = this.kategorija.SelectedItem as Kategorija;
                    req.KategorijaId = kategorija.KategorijaId;
                    Slozenost slozenost = this.slozenost.SelectedItem as Slozenost;
                    req.SlozenostId     = slozenost.SlozenostId;
                    req.KorisnikId      = korisnik.KorisnikId;
                    req.Slika           = model.Slika;
                    req.Odobren         = true;
                    req.VrijemeKuhanja  = Convert.ToInt32(this.VrijemeKuhanja.Text);
                    req.VrijemePripreme = Convert.ToInt32(this.VrijemePripreme.Text);
                    req.BrojLjudi       = Convert.ToInt32(this.BrojLjudi.Text);
                    await Recept.Update <dynamic>(model.recept.ReceptId, req);

                    await Application.Current.MainPage.DisplayAlert("Poruka", "Uspješno uneseni podaci", "OK");

                    await Navigation.PushAsync(new PrikazRecepataPage());
                }
                catch (Exception err)
                {
                    throw new Exception(err.Message);
                }
            }
        }