Beispiel #1
0
        public async Task <IActionResult> Snimi(LicniPodaciUrediVM podaci)
        {
            try
            {
                if (podaci.Lozinka == null || podaci.PotvrdiLozinku == null)
                {
                    ViewData["error_poruka"] = "Potvrdite izmjene unosom vaše lozinke";
                    podaci.Slika             = Convert.FromBase64String(podaci.StaraSlika);
                    return(View("Uredi", podaci));
                }

                if (podaci.Lozinka != podaci.PotvrdiLozinku)
                {
                    ViewData["error_poruka"] = "Lozinke se ne podudaraju";
                    podaci.Slika             = Convert.FromBase64String(podaci.StaraSlika);

                    return(View("Uredi", podaci));
                }



                if (!Regex.IsMatch(podaci.KorisnickoIme, @"^[a-z]+$"))
                {
                    ViewData["error_poruka"] = "Korisničko ime mailm slovima!";
                    podaci.Slika             = Convert.FromBase64String(podaci.StaraSlika);

                    return(View("Uredi", podaci));
                }

                if (await provjeriKorisnickoIme(podaci.KorisnickoIme, podaci.Id.Value))
                {
                    ViewData["error_poruka"] = "Ovo korisničko ime nije dozvoljeno";
                    podaci.Slika             = Convert.FromBase64String(podaci.StaraSlika);

                    return(View("Uredi", podaci));
                }
                var update = new PutnikUpsertRequest();


                if (podaci.SlikaZaDodat == null)
                {
                    var data = Convert.FromBase64String(podaci.StaraSlika);

                    update.Slika = data;
                }
                else
                {
                    update.Slika = await FormFileExtensions.GetBytes(podaci.SlikaZaDodat);
                }

                update.Ime               = podaci.Ime;
                update.Prezime           = podaci.Prezime;
                update.KorisnickoIme     = podaci.KorisnickoIme;
                update.DatumRegistracije = podaci.DatumRegistracije;
                update.DatumRodjenja     = podaci.DatumRodjenja;
                update.Lozinka           = podaci.Lozinka;
                update.PotvrdiLozinku    = podaci.PotvrdiLozinku;
                update.Id    = podaci.Id.Value;
                update.Email = podaci.Email;


                await _putnikService.Update(update.Id, update);



                return(RedirectToAction("Prikaz"));
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Beispiel #2
0
        public async Task <IActionResult> Registracija(RegistracijaVM podaci)
        {
            if (!ModelState.IsValid)
            {
                return(View("RegistrujSe", podaci));
            }

            if (podaci.Slika != null)
            {
                ViewData["error_poruka"] = "Molimo da unesete i sliku!";

                return(View("RegistrujSe", podaci));
            }

            if (podaci.Slika != null && podaci.Slika.Length == 0)
            {
                ViewData["error_poruka"] = "Molimo da unesete i sliku!";

                return(View("RegistrujSe", podaci));
            }

            if (podaci.Lozinka != podaci.PotvrdiLozinku)
            {
                ViewData["error_poruka"] = "Lozinke se ne podudaraju";

                return(View("RegistrujSe", podaci));
            }



            try
            {
                var niz = await FormFileExtensions.GetBytes(podaci.Slika);

                //DODATI I KORISNICKO IME NA FORMU

                var newPuntik = new PutnikUpsertRequest()
                {
                    KorisnickoIme     = podaci.KorisnickoIme,
                    Ime               = podaci.Ime,
                    Prezime           = podaci.Prezime,
                    DatumRegistracije = DateTime.Now,
                    DatumRodjenja     = podaci.DatumRodjenja,
                    Email             = podaci.Email,
                    Lozinka           = podaci.Lozinka,
                    PotvrdiLozinku    = podaci.PotvrdiLozinku,
                    Slika             = niz
                };

                await _putnikService.Insert(newPuntik);

                APIService.Username = newPuntik.KorisnickoIme;
                APIService.Password = newPuntik.Lozinka;

                return(RedirectToAction("PrikaziNotifikacije", "Notifikacije"));
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }