Esempio n. 1
0
        public async Task <ActionResult> Create(KorisnikViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = new ApplicationUser
                {
                    UserName       = model.Email,
                    Email          = model.Email,
                    FirstName      = model.FirstName,
                    IsActive       = true,
                    IsRegistered   = DateTime.Now,
                    EmailConfirmed = true
                };
                var result = await UserManager.CreateAsync(user, model.Password);

                if (result.Succeeded)
                {
                    return(RedirectToAction("Index", "Account"));
                }
                AddErrors(result);
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
Esempio n. 2
0
        public ActionResult Login(LoginViewModel lvm)
        {
            if (ModelState.IsValid)
            {
                KorisnikViewModel kvm = this.ks.GetUsersByEmailAndPassword(lvm.Email, lvm.Password);
                if (kvm != null)
                {
                    Session["CurrentUserId"]       = kvm.UserId;
                    Session["CurrentUserName"]     = kvm.Name;
                    Session["CurrentUserEmail"]    = kvm.Email;
                    Session["CurrentUserPassword"] = kvm.Password;
                    Session["CurrentUserIsAdmin"]  = kvm.IsAdmin;

                    if (kvm.IsAdmin)
                    {
                        return(RedirectToRoute(new { area = "admin", controller = "AdminHome", action = "Index" }));
                    }
                    else
                    {
                        return(RedirectToAction("Index", "Home"));
                    }
                }
                else
                {
                    ModelState.AddModelError("x", "Invalid Email/Password");
                }
            }
            else
            {
                ModelState.AddModelError("x", "Invalid data");
                return(View(lvm));
            }
            return(View(lvm));
        }
Esempio n. 3
0
        public async Task <ActionResult> Delete(KorisnikViewModel model)
        {
            try
            {
                if (model == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }
                if (ModelState.IsValid)
                {
                    var user = await UserManager.FindByIdAsync(model.Id);

                    var result = await UserManager.DeleteAsync(user);

                    if (result.Succeeded)
                    {
                        var db          = new ApplicationDbContext();
                        var rezervacije = db.Rezervacije.Where(u => u.korisnickoIme.Equals(user.Email));
                        db.Rezervacije.RemoveRange(rezervacije);
                        await db.SaveChangesAsync();

                        return(RedirectToAction("Index"));
                    }
                    AddErrors(result);
                }
            }
            catch { }
            return(View(model));
        }
Esempio n. 4
0
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            string   ime           = Ime.Text;
            string   prezime       = Prezime.Text;
            DateTime datum         = cal.Date.Value.Date;
            string   JMB           = JMBroj.Text;
            string   imekorisnicko = Korisnicko.Text;
            string   lozinkaprva   = Lozinka1.Password.ToString();
            string   lozinkadruga  = Lozinka2.Password.ToString();

            if (!Validiraj(ime, prezime, datum, JMB, imekorisnicko, lozinkaprva, lozinkadruga))
            {
                PrijavaGreski.Content += "Molimo ispravite greske!";
            }
            else
            {
                KorisnikViewModel  kvm = new KorisnikViewModel();
                KorisniciPojedinci kp  = kvm.registracija(ime, prezime, datum, JMB, imekorisnicko, lozinkaprva, lozinkadruga);
                b.KorisniciPojedinci.Add(kp);
                var dialog = new MessageDialog("Uspješno ste registrovani!");
                dialog.ShowAsync();
                Page pocetna = new OdabirPaketaForma();
                this.Content = pocetna;
            }
        }
Esempio n. 5
0
        public JsonResult Create(KorisnikViewModel korisnikViewModel)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(Json(new { Result = "ERROR", Message = "Form is not valid! Please correct it and try again." }));
                }
                using (var context = new ProdavnicaContext())
                {
                    Korisnik korisnik = new Korisnik
                    {
                        Prezime       = korisnikViewModel.Prezime,
                        Ime           = korisnikViewModel.Ime,
                        Pol           = korisnikViewModel.Pol,
                        Adresa        = korisnikViewModel.Adresa,
                        DatumRodjenja = korisnikViewModel.DatumRodjenja,
                        KorisnikID    = korisnikViewModel.KorisnikID,
                        Username      = korisnikViewModel.Username,
                        Password      = Encryptor.MD5Hash(korisnikViewModel.Password)
                    };
                    context.Korisniks.Add(korisnik);
                    context.SaveChanges();

                    return(Json(new { Result = "OK", Record = korisnik }));
                }
            }
            catch (Exception ex)
            {
                return(Json(new { Result = "ERROR", Message = ex.Message }));
            }
        }
Esempio n. 6
0
        public JsonResult Update(KorisnikViewModel korisnikViewModel)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(Json(new { Result = "ERROR", Message = "Form is not valid! Please correct it and try again." }));
                }
                using (var context = new BlogContext())
                {
                    Korisnik korisnik = context.Korisniks.Find(korisnikViewModel.KorisnikId);

                    korisnik.Ime           = korisnikViewModel.Ime;
                    korisnik.Prezime       = korisnikViewModel.Prezime;
                    korisnik.Email         = korisnikViewModel.Email;
                    korisnik.KorisnickoIme = korisnikViewModel.KorisnickoIme;
                    korisnik.UlogaId       = korisnikViewModel.UlogaId;
                    korisnik.Aktivan       = korisnikViewModel.Aktivan;
                    korisnik.Lozinka       = korisnikViewModel.Lozinka;
                    context.SaveChanges();
                }
                return(Json(new { Result = "OK" }));
            }
            catch (Exception ex)
            {
                return(Json(new { Result = "ERROR", Message = ex.Message }));
            }
        }
Esempio n. 7
0
        public async Task <ActionResult> Register(KorisnikViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = new ApplicationUser {
                    UserName = model.RegViewMod.Email, Email = model.RegViewMod.Email
                };
                var result = await UserManager.CreateAsync(user, model.RegViewMod.Password);

                if (result.Succeeded)
                {
                    await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false);

                    // For more information on how to enable account confirmation and password reset please visit https://go.microsoft.com/fwlink/?LinkID=320771
                    // Send an email with this link
                    // string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id);
                    // var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme);
                    // await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>");

                    return(RedirectToAction("Index", "Home"));
                }
                AddErrors(result);
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
Esempio n. 8
0
        public JsonResult Create(KorisnikViewModel korisnikViewModel)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(Json(new { Result = "ERROR", Message = "Form is not valid! Please correct it and try again." }));
                }
                using (var context = new BlogContext())
                {
                    Korisnik korisnik = new Korisnik()
                    {
                        Ime           = korisnikViewModel.Ime,
                        Prezime       = korisnikViewModel.Prezime,
                        Email         = korisnikViewModel.Email,
                        KorisnickoIme = korisnikViewModel.KorisnickoIme,
                        Lozinka       = korisnikViewModel.Lozinka,
                        UlogaId       = korisnikViewModel.UlogaId,
                        Aktivan       = korisnikViewModel.Aktivan
                    };

                    context.Korisniks.Add(korisnik);
                    context.SaveChanges();

                    return(Json(new { Result = "OK", Record = korisnikViewModel }));
                }
            }
            catch (Exception ex)
            {
                return(Json(new { Result = "ERROR", Message = ex.Message }));
            }
        }
Esempio n. 9
0
        public JsonResult Edit(KorisnikViewModel korisnikViewModel)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(Json(new { Result = "ERROR", Message = "Form is not valid! Please correct it and try again." }));
                }

                using (var context = new ProdavnicaContext())
                {
                    Korisnik korisnik = context.Korisniks.Find(korisnikViewModel.KorisnikID);
                    korisnik.Ime           = korisnikViewModel.Ime;
                    korisnik.Prezime       = korisnikViewModel.Prezime;
                    korisnik.Adresa        = korisnikViewModel.Adresa;
                    korisnik.Pol           = korisnikViewModel.Pol;
                    korisnik.DatumRodjenja = korisnikViewModel.DatumRodjenja;
                    korisnik.Username      = korisnikViewModel.Username;
                    korisnik.Password      = korisnikViewModel.Password;
                    context.SaveChanges();
                }

                return(Json(new { Result = "OK" }));
            }
            catch (Exception ex)
            {
                return(Json(new { Result = "ERROR", Message = ex.Message }));
            }
        }
Esempio n. 10
0
        public async Task <HttpResponseMessage> UpdateKorisnik(KorisnikViewModel updateK)
        {
            try
            {
                KorisnikViewModel toBeUpdated = Mapper.Map <KorisnikViewModel>(await KorisnikService.Get(updateK.KorisnikId));

                if (toBeUpdated == null)
                {
                    return(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Nije pronađen trazeni korisnik."));
                }
                if (updateK.Ime_korisnika == null || updateK.Korisnicko_ime == null || updateK.KorisnikId == null || updateK.Password == null || updateK.Potvrda == null || updateK.Prezime_korisnika == null || updateK.Role == null)
                {
                    return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Greska u unosu!"));
                }
                else
                {
                    toBeUpdated.Ime_korisnika     = updateK.Ime_korisnika;
                    toBeUpdated.Prezime_korisnika = updateK.Prezime_korisnika;
                    toBeUpdated.Korisnicko_ime    = updateK.Korisnicko_ime;
                    toBeUpdated.KorisnikId        = updateK.KorisnikId;
                    toBeUpdated.Password          = updateK.Password;
                    toBeUpdated.Potvrda           = updateK.Potvrda;
                    toBeUpdated.Role = updateK.Role;
                }
                var response = await KorisnikService.Update(Mapper.Map <IKorisnikDomainModel>(toBeUpdated));

                return(Request.CreateResponse(HttpStatusCode.OK, response));
            } catch (Exception e)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e));
            }
        }
Esempio n. 11
0
        public async Task <ActionResult> Edit(KorisnikViewModel model)
        {
            try
            {
                if (model == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }
                if (ModelState.IsValid)
                {
                    var user = await UserManager.FindByIdAsync(model.Id);

                    if (user != null)
                    {
                        user.Email     = model.Email;
                        user.UserName  = model.Email;
                        user.FirstName = model.FirstName;
                        if (!user.PasswordHash.Equals(model.Password))
                        {
                            user.PasswordHash = UserManager.PasswordHasher.HashPassword(model.Password);
                        }

                        var result = await UserManager.UpdateAsync(user);

                        if (result.Succeeded)
                        {
                            return(RedirectToAction("Index"));
                        }
                        AddErrors(result);
                    }
                }
            }
            catch { }
            return(View(model));
        }
        //
        // GET: /Manage/Index
        public async Task <ActionResult> Index(ManageMessageId?message)
        {
            ViewBag.StatusMessage =
                message == ManageMessageId.ChangePasswordSuccess ? "Your password has been changed."
                : message == ManageMessageId.SetPasswordSuccess ? "Your password has been set."
                : message == ManageMessageId.SetTwoFactorSuccess ? "Your two-factor authentication provider has been set."
                : message == ManageMessageId.Error ? "An error has occurred."
                : message == ManageMessageId.AddPhoneSuccess ? "Your phone number was added."
                : message == ManageMessageId.RemovePhoneSuccess ? "Your phone number was removed."
                : "";

            var userId = User.Identity.GetUserId();
            var model  = new IndexViewModel
            {
                HasPassword       = HasPassword(),
                PhoneNumber       = await UserManager.GetPhoneNumberAsync(userId),
                TwoFactor         = await UserManager.GetTwoFactorEnabledAsync(userId),
                Logins            = await UserManager.GetLoginsAsync(userId),
                BrowserRemembered = await AuthenticationManager.TwoFactorBrowserRememberedAsync(userId)
            };

            KorisnikViewModel kvm = new KorisnikViewModel();

            kvm.RegViewMod       = new RegisterViewModel();
            kvm.RegViewMod.Email = "";

            return(View(kvm));
            //return View(model);
        }
Esempio n. 13
0
        public ActionResult DeleteConfirmed(KorisnikViewModel korisnik)
        {
            var user = db.Users.SingleOrDefault(k => k.UserName == korisnik.Username);

            db.Users.Remove(user);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Esempio n. 14
0
        //ModelView poziv
        public ActionResult GetKorisnikViewModel()
        {
            KorisnikViewModel korisnikViewModel = new KorisnikViewModel();

            korisnikViewModel.korisnikInfo = GetKorModel(id_kor, ime, prezime, spol, mail, datum);
            korisnikViewModel.RegViewMod   = GetRegViewModel(email, pass, conpass);
            korisnikViewModel.IndViewMod   = GetIndViewModel(haspass);
            return(View(korisnikViewModel));
        }
Esempio n. 15
0
 public ActionResult Create(KorisnikViewModel vm)
 {
     try
     {
         return(RedirectToAction("Index"));
     }
     catch
     {
         return(View());
     }
 }
Esempio n. 16
0
        public ActionResult ChangeProfile()
        {
            int uid = Convert.ToInt32(Session["CurrentUserId"]);
            KorisnikViewModel            kvm   = this.ks.GetUsersByUserId(uid);
            EditKorisnikDetailsViewModel ekdvm = new EditKorisnikDetailsViewModel()
            {
                Name = kvm.Name, Email = kvm.Email, Mobile = kvm.Mobile, UserId = kvm.UserId
            };

            return(View(ekdvm));
        }
Esempio n. 17
0
        public ActionResult ChangePassword()
        {
            int uid = Convert.ToInt32(Session["CurrentUserId"]);
            KorisnikViewModel             kvm   = this.ks.GetUsersByUserId(uid);
            EditKorisnikPasswordViewModel ekpvm = new EditKorisnikPasswordViewModel()
            {
                Email = kvm.Email, Password = "", ConfirmPassword = "", UserId = kvm.UserId
            };

            return(View(ekpvm));
        }
Esempio n. 18
0
 public KorisnikViewModel GetUsersByEmailAndPassword(string Email, string Password)
 {
     Korisnik k = kr.GetUsersByEmailAndPassword(Email, SHA256HashGenerator.GenerateHash(Password)).FirstOrDefault();
     KorisnikViewModel kvm = null;
     if (k != null)
     {
         var config = new MapperConfiguration(cfg => { cfg.CreateMap<Korisnik, KorisnikViewModel>(); cfg.IgnoreUnmapped(); });
         IMapper mapper = config.CreateMapper();
         kvm = mapper.Map<Korisnik, KorisnikViewModel>(k);
     }
     return kvm;
 }
Esempio n. 19
0
 public KorisnikViewModel GetUsersByEmail(string Email)
 {
     Korisnik k = kr.GetUsersByEmail(Email).FirstOrDefault();
     KorisnikViewModel kvm = null;
     if (k != null)
     {
         var config = new MapperConfiguration(cfg => { cfg.CreateMap<Korisnik, KorisnikViewModel>(); cfg.IgnoreUnmapped(); });
         IMapper mapper = config.CreateMapper();
         kvm = mapper.Map<Korisnik, KorisnikViewModel>(k);
     }
     return kvm;
 }
        public async Task <HttpResponseMessage> AddKorisnikAsync(KorisnikViewModel addObj)
        {
            try
            {
                var response = await korisnikService.AddAsync(Mapper.Map <IKorisnikDomainModel>(addObj));

                return(Request.CreateResponse(HttpStatusCode.OK, response));
            }
            catch (Exception e)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, e));
            }
        }
Esempio n. 21
0
        // GET: Admin/Korisnici/Edit/5
        public ActionResult Edit(string id)
        {
            OpKorisniciGetOne op = new OpKorisniciGetOne();

            op.dto.id = id;
            ResultOperation   res      = manager.ExecuteOperation(op);
            KorisnikViewModel vm       = new KorisnikViewModel();
            KorisniciDto      korisnik = res.items[0] as KorisniciDto;

            vm.id       = korisnik.id;
            vm.username = korisnik.username;
            vm.email    = korisnik.email;
            return(View(vm));
        }
Esempio n. 22
0
        public async Task <HttpResponseMessage> AddKorisnik(KorisnikViewModel addObj)//httpresponsemessage - convert to HTTP convert message
        {
            try
            {
                addObj.KorisnikId = Guid.NewGuid();
                var response = await KorisnikService.Add(Mapper.Map <IKorisnikDomainModel>(addObj));

                return(Request.CreateResponse(HttpStatusCode.OK, response));
            }
            catch (Exception e)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e));
            }
        }
        //Menja korisnika iz baze
        public ActionResult IzmeniKorisnika(KorisnikViewModel korisnik, long?id)
        {
            var k = _context.Korisnik.Find(id);

            if (k == null)
            {
                return(new HttpNotFoundResult());
            }
            k.KorisnickoIme         = korisnik.KorisnickoIme;
            k.Lozinka               = korisnik.Lozinka;
            k.PravoPristupa         = korisnik.PravoPristupa;
            _context.Entry(k).State = EntityState.Modified;
            _context.SaveChanges();
            return(View(korisnik));
        }
        public ActionResult PrikaziIzbrisane(int?tipKorisnika)
        {
            KorisnikViewModel Model = new KorisnikViewModel();
            List <KorisnikViewModel.KorisnikInfo> ListaKorisnika = new List <KorisnikViewModel.KorisnikInfo>();

            if ((tipKorisnika.HasValue && tipKorisnika == 1) || !tipKorisnika.HasValue)
            {
                Model.Korisnici = (ctx.Korisnici
                                   .Where(x => x.IsDeleted && x.NalogAktivan && x.Uposlenik == null)
                                   .Include(x => x.OnlineKorisnik)
                                   .Where(x => x.OnlineKorisnik.Id != null && x.OnlineKorisnik.IsDeleted)
                                   .Select(x => new KorisnikViewModel.KorisnikInfo
                {
                    Id = x.Id,
                    Ime = x.Ime,
                    Prezime = x.Prezime,
                    Username = x.Username,
                    Adresa = x.Adresa,
                    BrTelefona = x.BrTelefona,
                    NalogAktivan = x.NalogAktivan,
                    EMail = x.EMail,
                    Uposlen = false
                })).ToList();
                ListaKorisnika.AddRange(Model.Korisnici);
            }
            if ((tipKorisnika.HasValue && tipKorisnika == 2) || !tipKorisnika.HasValue)
            {
                Model.Korisnici = (ctx.Korisnici
                                   .Where(x => x.IsDeleted && x.NalogAktivan)
                                   .Include(x => x.Uposlenik)
                                   .Where(x => x.Uposlenik.Id != null && x.Uposlenik.IsDeleted)
                                   .Select(x => new KorisnikViewModel.KorisnikInfo
                {
                    Id = x.Id,
                    Ime = x.Ime,
                    Prezime = x.Prezime,
                    Username = x.Username,
                    Adresa = x.Adresa,
                    BrTelefona = x.BrTelefona,
                    NalogAktivan = x.NalogAktivan,
                    EMail = x.EMail,
                    Uposlen = true
                })).ToList();
                ListaKorisnika.AddRange(Model.Korisnici);
            }
            Model.Korisnici = ListaKorisnika;
            return(View("PrikazIzbrisanih", Model));
        }
 public ActionResult DodajKorisnika(KorisnikViewModel korisnik)
 {
     if (ModelState.IsValid)
     {
         var k = new Korisnik
         {
             IdKorisnika   = korisnik.IdKorisnika,
             KorisnickoIme = korisnik.KorisnickoIme,
             Lozinka       = korisnik.Lozinka,
             PravoPristupa = korisnik.PravoPristupa
         };
         _context.Korisnik.Add(k);
         _context.SaveChanges();
         return(RedirectToAction("Index", "Korisnik"));
     }
     return(View(korisnik));
 }
        public async Task <HttpResponseMessage> UpdateKorisnikAsync(KorisnikViewModel updateK)
        {
            try
            {
                KorisnikViewModel toBeUpdated = Mapper.Map <KorisnikViewModel>(await korisnikService.Get(updateK.Id));

                if (toBeUpdated == null)
                {
                    return(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Nije pronađen trazeni korisnik."));
                }
                else
                {
                    var response = await korisnikService.UpdateAsync(Mapper.Map <IKorisnikDomainModel>(updateK));

                    return(Request.CreateResponse(HttpStatusCode.OK, response));//***Ovaj način sam sam smislio dok sam radio. Malo drugačije smo radili Lvl. 3 zd na praksi kod vas. Tek kasnije sam primjetio da nismo tako radili, ali nisam ništa htio mijenjat zato što je i ovako funkcioniralo, samo što ima više kooda i teze je razumjeti.***
                }
            } catch (Exception e)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Greska prilikom promjene"));
            }
        }
Esempio n. 27
0
        public ActionResult Edit(KorisnikViewModel vm)
        {
            try
            {
                KorisniciDto dto = new KorisniciDto()
                {
                    email    = vm.email,
                    id       = vm.id,
                    username = vm.username
                };
                OpKorisnikUpdate op = new OpKorisnikUpdate();
                op.dto = dto;
                ResultOperation res = manager.ExecuteOperation(op);

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
Esempio n. 28
0
        public async Task <ActionResult> Details(string UserId)
        {
            if (UserId == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ApplicationUser user = await UserManager.FindByIdAsync(UserId);

            if (user == null)
            {
                return(HttpNotFound());
            }
            var model = new KorisnikViewModel
            {
                Email     = user.Email,
                FirstName = user.FirstName,
                Id        = user.Id,
                Password  = "******"
            };

            return(View(model));
        }
        public ActionResult DodajKorisnika()
        {
            var svm = new KorisnikViewModel();

            return(View(svm));
        }
 public ActionResult Izmeni(KorisnikViewModel korisnik, long?id)
 {
     IzmeniKorisnika(korisnik, id);
     return(RedirectToAction("Index", "Korisnik"));
 }