Пример #1
0
        public Model.Trener Insert(TreneriInsertRequest request)
        {
            var entity = _mapper.Map <Database.Trener>(request);

            if (request.Password != request.PasswordConfirmation)
            {
                throw new UserException("Passwordi se ne slazu");
            }
            entity.LozinkaSalt = GenerateSalt();
            entity.LozinkaHash = GenerateHash(entity.LozinkaSalt, request.Password);
            _context.Trener.Add(entity);
            _context.SaveChanges();
            return(_mapper.Map <Model.Trener>(entity));
        }
Пример #2
0
        private async void btnSacuvaj_click(object sender, RoutedEventArgs e)
        {
            List <Model.Trener> listaTrenera = await _service.Get <List <Model.Trener> >();

            bool postojiUsername = false;

            foreach (Model.Trener t in listaTrenera)
            {
                if (textBoxUsername.Text != "" && textBoxUsername.Text == t.KorisnickoIme)
                {
                    postojiUsername = true;
                }
            }
            if (dtmRodjenja.SelectedDate == null || cmbGradovi.SelectedValue == null || cmbSpol.SelectedValue == null || textBoxIme.Text == "" || textBoxPrezime.Text == "" || textBoxMail.Text == "" || textBoxAdresa.Text == "" || textBoxTelefon.Text == "" || textBoxUsername.Text == "" || passwordBoxPassword.Password == "" || passwordBoxPassPotvrda.Password == "" || textBoxOpis.Text == "")
            {
                errormessage.Text = "Sva polja su obavezna";
            }
            else if (textBoxTelefon.Text.Length > 12 || textBoxTelefon.Text.Length < 9)
            {
                errormessage.Text = "Polje Telefon mora biti u rasponu od 9 do 12";
            }
            else if (textBoxUsername.Text.Length > 10)
            {
                errormessage.Text = "Polje Username ne smije biti duze od 10 karaktera";
            }
            else if (passwordBoxPassword.Password != passwordBoxPassPotvrda.Password)
            {
                errormessage.Text = "Passwordi se ne slažu";
                passwordBoxPassPotvrda.Focus();
            }
            else if (postojiUsername)
            {
                errormessage.Text = "Trener sa datim korisnickim imenom vec postoji";
            }
            else if (!(IsValidEmail(textBoxMail.Text)))
            {
                errormessage.Text = "Email nije u validnom formatu";
            }
            else
            {
                TreneriInsertRequest request = new TreneriInsertRequest()
                {
                    Ime                  = textBoxIme.Text,
                    Prezime              = textBoxPrezime.Text,
                    GradId               = (int)cmbGradovi.SelectedValue,
                    KorisnickoIme        = textBoxUsername.Text,
                    Password             = passwordBoxPassword.Password,
                    PasswordConfirmation = passwordBoxPassPotvrda.Password,
                    Telefon              = textBoxTelefon.Text,
                    Mail                 = textBoxMail.Text,
                    Uloga                = "Trener",
                    Opis                 = textBoxOpis.Text,
                    DatumZaposlenja      = DateTime.Parse(dtmRodjenja.ToString()),
                    Adresa               = textBoxAdresa.Text,
                    Slika                = _imageBytes,
                    Spol                 = cmbSpol.SelectedValue.ToString()
                };
                await _service.Insert <Model.Trener>(request);

                Application.Current.MainWindow = new MainWindow();
                Application.Current.MainWindow.Show();
                Close();
            }
        }
Пример #3
0
        async Task Register()
        {
            List <Model.Polaznik> listaPolaznika = await _service.Get <List <Model.Polaznik> >();

            List <Model.Trener> listaTrenera = await _treneriService.Get <List <Model.Trener> >();

            bool pronasaoPolaznika = false;
            bool pronasaoTrenera   = false;

            IsBusy = true;
            //APIService.Username = Username;
            //APIService.Password = Password;
            if (Ime == "" || Prezime == "" || Username == "" || Password == "" || PasswordPotvrda == "" || Mail == "" || Telefon == "")
            {
                await Application.Current.MainPage.DisplayAlert("Upozorenje", "Molimo unesite sva polja", "OK");
            }
            else if (Password != PasswordPotvrda)
            {
                await Application.Current.MainPage.DisplayAlert("Greska", "Passwordi se ne slazu", "OK");
            }
            else if (Uloga != null && Uloga != "Trener" && Uloga != "Polaznik")
            {
                await Application.Current.MainPage.DisplayAlert("Greska", "Neispravan unos za polje 'Uloga'", "Pokusajte ponovo");
            }
            else if (!(IsValidEmail(Mail)))
            {
                await Application.Current.MainPage.DisplayAlert("Greška", "Email adresa nije validna", "OK");
            }
            else if (Uloga == "Polaznik")
            {
                foreach (Model.Polaznik p in listaPolaznika)
                {
                    if (p.KorisnickoIme == Username)
                    {
                        pronasaoPolaznika = true;
                    }
                }
                if (pronasaoPolaznika)
                {
                    await Application.Current.MainPage.DisplayAlert("Greška", "Username je već u upotrebi", "OK");
                }
                else
                {
                    PolazniciInsertRequest request = new PolazniciInsertRequest()
                    {
                        Ime             = Ime,
                        Prezime         = Prezime,
                        KorisnickoIme   = Username,
                        Password        = Password,
                        PasswordPotvrda = PasswordPotvrda,
                        Mail            = Mail,
                        Telefon         = Telefon,
                        Uloga           = "Polaznik",
                        //GradId = 1,
                        //DatumRodjenja = DateTime.Now
                    };
                    try
                    {
                        await _service.Insert <Model.Polaznik>(request);

                        Application.Current.MainPage = new NewLoginPage();
                    }
                    catch (Exception ex)
                    {
                        await Application.Current.MainPage.DisplayAlert("Greška", ex.Message, "OK");
                    }
                }
            }
            else if (Uloga == "Trener")
            {
                foreach (Model.Trener t in listaTrenera)
                {
                    if (t.KorisnickoIme == Username)
                    {
                        pronasaoTrenera = true;
                    }
                }
                if (pronasaoTrenera)
                {
                    await Application.Current.MainPage.DisplayAlert("Greška", "Username je već u upotrebi", "OK");
                }
                else
                {
                    TreneriInsertRequest trenerRequest = new TreneriInsertRequest()
                    {
                        Ime                  = Ime,
                        Prezime              = Prezime,
                        KorisnickoIme        = Username,
                        Password             = Password,
                        PasswordConfirmation = PasswordPotvrda,
                        Mail                 = Mail,
                        Telefon              = Telefon,
                        Uloga                = "Trener"
                    };
                    try
                    {
                        await _treneriService.Insert <Model.Trener>(trenerRequest);

                        Application.Current.MainPage = new NewLoginPage();
                    }
                    catch (Exception ex)
                    {
                        await Application.Current.MainPage.DisplayAlert("Greška", ex.Message, "OK");
                    }
                }
            }
        }
Пример #4
0
 public ActionResult <Model.Trener> Insert(TreneriInsertRequest request)
 {
     return(_service.Insert(request));
 }