示例#1
0
        public Uporabnik dobiPodatke(int ID_uporabnika)
        {
            // connection na bazo
            string        connStr = configuration.GetConnectionString("DefaultConnection");
            SqlConnection conn    = new SqlConnection(connStr);

            conn.Open();

            // nastavitev query
            string     query = "SELECT * from Uporabnik where ID_uporabnik = @id";
            SqlCommand cmd   = new SqlCommand(query, conn);

            cmd.Parameters.AddWithValue("@id", ID_uporabnika);

            Uporabnik u = new Uporabnik();
            // if prazen
            SqlDataReader reader = cmd.ExecuteReader();

            if (reader.HasRows)
            {
                reader.Read();
                u.Ime     = reader[1].ToString();
                u.Priimek = reader[2].ToString();
                u.Email   = reader[3].ToString();
                u.Drzava  = reader[4].ToString();
            }

            conn.Close();

            return(u);
        }
示例#2
0
        public async Task DodajDostavoAsync(IzberiterminDostaveModel podatki, Uporabnik uporabnikPrijave)
        {
            var uporabnikIzbire = await _userManager.FindByIdAsync(podatki.IzbranUporabnikId);

            var roles = await _userManager.GetRolesAsync(uporabnikPrijave);

            //Dodajanje dostave
            var dostava = new Dostava()
            {
                PodjetjeId       = uporabnikPrijave.PodjetjeId,
                UporabnikId      = uporabnikPrijave.Id,
                Sifra            = podatki.SifraDostave,
                TockaSkladiscaId = podatki.IzbranaTockaId.Value,
                Termin           = podatki.IzbranDatum.Value.AddHours(podatki.IzbranaUra.Value)
            };

            if (roles.Contains("Admin"))
            {
                //Admin lahko ureja uporabnika
                dostava.PodjetjeId  = uporabnikIzbire.PodjetjeId;
                dostava.UporabnikId = uporabnikIzbire.Id;
            }

            _krkaRepo.AddDostava(dostava);
            _krkaRepo.SaveChanges();
        }
示例#3
0
        public IActionResult Edit(Uporabnik uporabnik)
        {
            using (var db = new Baza())
            {
                foreach (var item in db.uporabniki.ToList())
                {
                    if (item.Id == uporabnik.Id)
                    {
                        item.Ime            = uporabnik.Ime;
                        item.priimek        = uporabnik.priimek;
                        item.RojstniDan     = uporabnik.RojstniDan;
                        item.KrajRojstva    = uporabnik.KrajRojstva;
                        item.emso           = uporabnik.emso;
                        item.starost        = uporabnik.starost;
                        item.Naslov         = uporabnik.Naslov;
                        item.Posta          = uporabnik.Posta;
                        item.PostnaStevilka = uporabnik.PostnaStevilka;
                        item.Drzava         = uporabnik.Drzava;
                        item.Email          = uporabnik.Email;

                        break;
                    }
                }
                db.SaveChanges();
            }



            return(RedirectToAction("Index"));
        }
示例#4
0
        public async Task <string> CheckEditDostavaAsync(Dostava dostava, Uporabnik uporabnik)
        {
            if (dostava == null)
            {
                throw new ArgumentNullException(nameof(dostava));
            }
            if (uporabnik == null)
            {
                throw new ArgumentNullException(nameof(uporabnik));
            }

            if (dostava.Status == StatusDostave.Potrjen)
            {
                return("Dostava je že potrjena.");
            }

            var roles = await _userManager.GetRolesAsync(uporabnik);

            //Urejaš lahko samo svoje dostave, razen, če si Admin
            if (dostava.UporabnikId != uporabnik.Id && !roles.Contains("Admin"))
            {
                return("Dostave ni mogoče urejati.");
            }

            return(null);
        }
示例#5
0
 public IActionResult Registracija(Uporabnik uporabnik)
 {
     if (ModelState.IsValid)
     {
         return(RedirectToAction("Izpis", uporabnik));
     }
     return(View(uporabnik));
 }
    public void UpdateCoins(int coins)
    {
        int id = GameObject.Find("UserStuff").GetComponent <UserInfoScript>().userID;
        List <Uporabnik> user = new List <Uporabnik>();

        user           = Uporabnik.Brskaj(id);
        user[0].Kovanc = coins;

        Uporabnik.Update(user[0]);
    }
示例#7
0
        public async Task <IActionResult> OnPostAsync(string returnUrl = null)
        {
            returnUrl      = returnUrl ?? Url.Content("~/");
            ExternalLogins = (await _signInManager.GetExternalAuthenticationSchemesAsync()).ToList();
            Podjetja       = _prijavaDataManager.GetAllPodjetja().Select(t => new SelectListItem()
            {
                Value = t.Id.ToString(), Text = t.Naziv
            });
            if (ModelState.IsValid)
            {
                var user = new Uporabnik {
                    UserName = Input.Email, Email = Input.Email, PodjetjeId = Input.PodjetjeId
                };
                var result = await _userManager.CreateAsync(user, Input.Password);

                if (result.Succeeded)
                {
                    _userManager.AddToRoleAsync(user, "Uporabnik").Wait();

                    _logger.LogInformation("User created a new account with password.");

                    var code = await _userManager.GenerateEmailConfirmationTokenAsync(user);

                    code = WebEncoders.Base64UrlEncode(Encoding.UTF8.GetBytes(code));
                    var callbackUrl = Url.Page(
                        "/Account/ConfirmEmail",
                        pageHandler: null,
                        values: new { area = "Identity", userId = user.Id, code = code },
                        protocol: Request.Scheme);

                    await _emailSender.SendEmailAsync(Input.Email, "Confirm your email",
                                                      $"Please confirm your account by <a href='{HtmlEncoder.Default.Encode(callbackUrl)}'>clicking here</a>.");

                    if (_userManager.Options.SignIn.RequireConfirmedAccount)
                    {
                        return(RedirectToPage("RegisterConfirmation", new { email = Input.Email }));
                    }
                    else
                    {
                        await _signInManager.SignInAsync(user, isPersistent : false);

                        return(LocalRedirect(returnUrl));
                    }
                }
                foreach (var error in result.Errors)
                {
                    ModelState.AddModelError(string.Empty, error.Description);
                }
            }

            // If we got this far, something failed, redisplay form
            return(Page());
        }
        public async Task <IActionResult> GoogleResponse()
        {
            var info = await SignInManager.GetExternalLoginInfoAsync();

            if (info == null)
            {
                return(RedirectToAction("Index"));
            }

            var rezultat         = SignInManager.ExternalLoginSignInAsync(info.LoginProvider, info.ProviderKey, false);
            var uporabnikPodatki = new string[] { info.Principal.FindFirst(ClaimTypes.Name).Value, info.Principal.FindFirst(ClaimTypes.Email).Value };

            if (rezultat.IsCompletedSuccessfully)
            {
                return(RedirectToAction("Index", "Home"));
            }
            else
            {
                var uporabnik = new Uporabnik
                {
                    Ime            = info.Principal.FindFirst(ClaimTypes.GivenName).Value,
                    Priimek        = info.Principal.FindFirst(ClaimTypes.Surname).Value,
                    DatumRojstva   = new DateTime(1999, 6, 11),
                    Starost        = 26,
                    EMSO           = "1111111111111",
                    KrajRojstva    = "Google user",
                    Posta          = "Google user",
                    PostnaStevilka = 2000,
                    Drzava         = "Slovenia",
                    EPosta         = info.Principal.FindFirst(ClaimTypes.Email).Value,
                    UserName       = info.Principal.FindFirst(ClaimTypes.Email).Value,
                    Email          = info.Principal.FindFirst(ClaimTypes.Email).Value
                };

                try
                {
                    var create = await UserManager.CreateAsync(uporabnik);

                    if (create.Succeeded)
                    {
                        await UserManager.AddToRoleAsync(uporabnik, "User");

                        return(RedirectToAction("Index", "Home"));
                    }
                    return(RedirectToAction("Index", "Home"));
                }
                catch
                {
                    return(RedirectToAction("Index", "Home"));
                }
            }
        }
示例#9
0
 protected override void OnInit(EventArgs e)
 {
     try
     {
         uporabnik = new Uporabnik(Session);
         if (!uporabnik.AppLogedIn)
         {
             Response.Redirect("Default.aspx");
         }
         string[] parts = Request.FilePath.Split('/');
         m_stran = parts[parts.Length - 1].Split('.')[0];
     }
     catch (Exception ee)
     {
         SetMessage(ee);
     }
 }
示例#10
0
        public IActionResult Pregled(Uporabnik uporabnik) //Tukaj se dodaja pa to lol pazi pri ostalih!!!
        {
            if (ModelState.IsValid)
            {
                using (var db = new Baza())
                {
                    db.uporabniki.Add(uporabnik);
                    db.SaveChanges();
                }

                return(RedirectToAction("Index"));
            }
            else
            {
                return(View(uporabnik));
            }
        }
示例#11
0
        public IActionResult PosodobiProfil(Uporabnik u, string geslo_ponovi)
        {
            if (TempData["ID_uporabnika"] == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            DALUporabnik dpp            = new DALUporabnik(configuration);
            int          ID_uporabnikaa = Convert.ToInt32(TempData["ID_uporabnika"]);
            Uporabnik    uu             = dpp.dobiPodatke(ID_uporabnikaa);

            DALDrzava     dz = new DALDrzava(configuration);
            List <Drzava> d  = dz.vrniVseDrzave();

            ViewBag.Drzava  = d;
            ViewBag.Message = uu;
            if (u.Geslo != null || geslo_ponovi != null)
            {
                if (u.Geslo != geslo_ponovi)
                {
                    ViewBag.Error = "Gesli se ne ujemata";
                    return(View("Profil"));
                }
                var regex = @"^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$";
                var match = Regex.Match(u.Geslo, regex, RegexOptions.IgnoreCase);

                if (!match.Success)
                {
                    ViewBag.Error = "Geslo mora vsebovati minimalno 8 znakov in 1 številka";
                    return(View("Profil"));
                }
            }

            int ID_uporabnika = Convert.ToInt32(TempData["ID_uporabnika"]);

            TempData.Keep();

            DALUporabnik dp = new DALUporabnik(configuration);

            // todo error če je failov request
            int ratal = Convert.ToInt32(dp.posodobiUporabnika(ID_uporabnika, u));

            ViewBag.Success = "Podatki uspešno posodobljeni";
            return(View("Profil"));
        }
示例#12
0
        public async Task UrediDostavoAsync(IzberiterminDostaveModel podatki, Uporabnik uporabnikPrijave)
        {
            var dostavaDb       = _krkaRepo.GetDostava(podatki.SifraDostave);
            var uporabnikIzbire = await _userManager.FindByIdAsync(podatki.IzbranUporabnikId);

            var roles = await _userManager.GetRolesAsync(uporabnikPrijave);

            if (roles.Contains("Admin"))
            {
                //Lahko ureja uporabnika
                dostavaDb.UporabnikId = uporabnikIzbire.Id;
                dostavaDb.PodjetjeId  = uporabnikIzbire.PodjetjeId;
            }

            dostavaDb.TockaSkladiscaId = podatki.IzbranaTockaId.Value;
            dostavaDb.Termin           = podatki.IzbranDatum.Value.AddHours(podatki.IzbranaUra.Value);

            _krkaRepo.UpdateDostava(dostavaDb);
            _krkaRepo.SaveChanges();
        }
示例#13
0
        public IActionResult IzpisPregled(int id)
        {
            id++;
            Uporabnik uporabnik = new Uporabnik();

            using (var db = new Baza())
            {
                //db.Database.ExecuteSqlCommand("DBCC CHECKIDENT('Uporabniks', RESEED, 0)");
                foreach (var item in db.uporabniki.ToList())
                {
                    //4 , 1+1

                    if (item.Id == id)
                    {
                        uporabnik = item;
                    }
                }
            }
            return(View(uporabnik));
        }
 public async Task <IActionResult> Uredi(Uporabnik uporabnik)
 {
     using (baza)
     {
         var najdenUporabnik = baza.Uporabniki.First(x => x.Id == uporabnik.Id);
         najdenUporabnik.Ime            = uporabnik.Ime;
         najdenUporabnik.Priimek        = uporabnik.Priimek;
         najdenUporabnik.DatumRojstva   = uporabnik.DatumRojstva;
         najdenUporabnik.EMSO           = uporabnik.EMSO;
         najdenUporabnik.PostnaStevilka = uporabnik.PostnaStevilka;
         najdenUporabnik.Posta          = uporabnik.Posta;
         najdenUporabnik.Drzava         = uporabnik.Drzava;
         najdenUporabnik.EPosta         = uporabnik.EPosta;
         najdenUporabnik.Starost        = uporabnik.Starost;
         najdenUporabnik.KrajRojstva    = uporabnik.KrajRojstva;
         baza.Uporabniki.Update(najdenUporabnik);
         await baza.SaveChangesAsync();
     }
     return(RedirectToAction("Profil", new { id = uporabnik.Id }));
 }
示例#15
0
        public ObservableCollection <Uporabnik> GetUporabnik()//branje vseh sportnikov
        {
            ObservableCollection <Uporabnik> uporabniks = new ObservableCollection <Uporabnik>();
            var zazeni = new MySqlCommand("SELECT * FROM uporabniki LIMIT 5", con);//Limit je nastavljen na 5

            con.Open();
            zazeni.ExecuteNonQuery();
            MySqlDataReader beripodatke = zazeni.ExecuteReader();

            while (beripodatke.Read())
            {
                Uporabnik uporabnik = new Uporabnik();
                uporabnik.UporabiskoIme = beripodatke["UporabniskoIme"].ToString();
                uporabnik.id            = Convert.ToInt32(beripodatke["id"]);
                uporabnik.Geslo         = beripodatke["Geslo"].ToString();
                uporabniks.Add(uporabnik);
            }

            beripodatke.Close();
            return(uporabniks);//OK
        }
 public void LoginBtnClick()
 {
     if (username.text == "" || password.text == "")
     {
         errorText.text = "Wrong input!\nYou left one of the fields empty!";
         messageBox.SetActive(true);
         return;
     }
     else
     {
         List <Uporabnik> uporabnikList = Uporabnik.Brskaj(-1, username.text);
         if (uporabnikList == null)
         {
             errorText.text = "Error!\nFailed to reach database.";
             messageBox.SetActive(true);
             return;
         }
         else if (uporabnikList.Count == 0)
         {
             errorText.text = "Error!\nUsername not found.";
             messageBox.SetActive(true);
             return;
         }
         Uporabnik uporabnik     = uporabnikList.Count == 1 ? uporabnikList[0] : new Uporabnik();
         bool?     tmpPassValid  = Uporabnik.PotrdiGeslo(uporabnik.Id, password.text);
         bool      passwordValid = (tmpPassValid == null || tmpPassValid == false) ? false : true;
         if (!passwordValid)
         {
             errorText.text = "Error!\nWrong password.";
             messageBox.SetActive(true);
             return;
         }
         else if (passwordValid)
         {
             Instantiate(loginUserInfo);
             FillUserStuff(uporabnik.Id, uporabnik.Uporabnisko, uporabnik.Kovanc);
             SceneManager.LoadScene("main menu");
         }
     }
 }
 public void RegisterBtnClick()
 {
     if (regUsername.text == "" || regPassword.text == "")
     {
         errorText.text = "Error!\nYou left username and/or password field empty.";
         messageBox.SetActive(true);
         return;
     }
     else
     {
         List <Uporabnik> uporabnikList = Uporabnik.Brskaj(-1, regUsername.text);
         if (uporabnikList == null)
         {
             errorText.text = "Error!\nFailed to reach database.";
             messageBox.SetActive(true);
             return;
         }
         else if (uporabnikList.Count > 0)
         {
             errorText.text = "Error!\nUsername already in use.";
             messageBox.SetActive(true);
             return;
         }
         Uporabnik novi = new Uporabnik(-1, regName.text, regLastName.text,
                                        regEmail.text, regUsername.text, Uporabnik.TipUporabnika.Uporabnik, 0);
         int id = Uporabnik.Dodaj(novi, regPassword.text);
         if (id == -1)
         {
             errorText.text = "Error!\nFailed to reach database.";
             messageBox.SetActive(true);
             return;
         }
         else
         {
             SceneManager.LoadScene("Login");
         }
     }
 }
示例#18
0
        public int posodobiUporabnika(int ID_uporabnika, Uporabnik u)
        {
            // connection na bazo
            string        connStr = configuration.GetConnectionString("DefaultConnection");
            SqlConnection conn    = new SqlConnection(connStr);

            conn.Open();
            int updated;

            if (u.Geslo == null)
            {
                string     query = "UPDATE Uporabnik set Ime=@ime,Priimek=@priimek,Drzava=@drzava where ID_uporabnik = @id";
                SqlCommand cmd   = new SqlCommand(query, conn);

                cmd.Parameters.AddWithValue("@id", ID_uporabnika);
                cmd.Parameters.AddWithValue("@ime", u.Ime);
                cmd.Parameters.AddWithValue("@priimek", u.Priimek);
                cmd.Parameters.AddWithValue("@drzava", u.Drzava);
                updated = cmd.ExecuteNonQuery();
            }

            else
            {
                string     query = "UPDATE Uporabnik set Ime=@ime,Priimek=@priimek,Drzava=@drzava,Geslo=@geslo where ID_uporabnik = @id";
                SqlCommand cmd   = new SqlCommand(query, conn);

                cmd.Parameters.AddWithValue("@id", ID_uporabnika);
                cmd.Parameters.AddWithValue("@ime", u.Ime);
                cmd.Parameters.AddWithValue("@priimek", u.Priimek);
                cmd.Parameters.AddWithValue("@drzava", u.Drzava);
                cmd.Parameters.AddWithValue("@geslo", u.Geslo);
                updated = cmd.ExecuteNonQuery();
            }

            conn.Close();

            return(updated);
        }
示例#19
0
 public async Task <IActionResult> Login([Bind("Id,Username,Password")] Uporabnik uporabnik)
 {
     if (ModelState.IsValid)
     {
         var admin = _context.Uporabnik.Where(s => s.Username == uporabnik.Username);
         if (admin.Any())
         {
             if (admin.Where(s => s.Password == uporabnik.Password).Any())
             {
                 return(Redirect("/Opravila/Index"));
             }
             else
             {
                 return(View(uporabnik));
             }
         }
         else
         {
             return(View(uporabnik));
         }
     }
     return(View(uporabnik));
 }
示例#20
0
        public IActionResult Profil()
        {
            if (TempData["ID_uporabnika"] == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            int ID_uporabnika = Convert.ToInt32(TempData["ID_uporabnika"]);

            TempData.Keep();

            DALUporabnik dp = new DALUporabnik(configuration);

            Uporabnik u = dp.dobiPodatke(ID_uporabnika);

            DALDrzava     dz = new DALDrzava(configuration);
            List <Drzava> d  = dz.vrniVseDrzave();

            ViewBag.Drzava  = d;
            ViewBag.Message = u;

            return(View());
        }
示例#21
0
    protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            using (Uporabnik up = new Uporabnik(Session))
            {
                up.logout(Session);
            }
            string u = "";
            string p = "";
            try
            {
                string[] hash = Varnost.DecryptAES256(Convert.ToBase64String(HttpServerUtility.UrlTokenDecode(Request.QueryString["hash"]))).Split(new string[] { "@-|@|-@" }, StringSplitOptions.None);
                if (hash.Length == 3 && hash[2] == ConfigurationManager.AppSettings["EncryptKey"])
                {
                    u = hash[0].Trim();
                    p = hash[1].Trim();
                }
                else
                {
                    throw new Exception();
                }
            }
            catch
            {
                Response.Redirect("Default.aspx", true);
            }

            if (Uporabnik.login(u, p, Session, "", 1) == 0)
            {
                using (Uporabnik uporabnik = new Uporabnik(Session))
                {
                    try
                    {
                        username.Text = uporabnik.Username;
                        if (IsPostBack)
                        {
                            password_new1.Text = password_new1.Text.Trim();
                            password_new2.Text = password_new2.Text.Trim();
                            if (!string.IsNullOrWhiteSpace(password_new1.Text) && password_new1.Text.Length < 6)
                            {
                                throw new Exception("Polje Novo geslo ne sme biti krajše od 6 znakov");
                            }
                            if (!string.IsNullOrWhiteSpace(password_new2.Text) && password_new2.Text.Length < 6)
                            {
                                throw new Exception("Polje Novo geslo (ponovi) ne sme biti krajše od 6 znakov");
                            }
                            if (password_new1.Text != password_new2.Text)
                            {
                                throw new Exception("Polji Novo geslo in Novo geslo (ponovi) nista enaki");
                            }

                            Uporabniki.Edit(uporabnik.Id, uporabnik.Username, password_new1.Text, uporabnik.Ime, uporabnik.Priimek, uporabnik.Active, uporabnik.Admin, string.Join(",", uporabnik.Pravice), Session, uporabnik.Email, uporabnik.Gsm, uporabnik.Id);

                            _js  = "dialog('Geslo uspešno spremenjeno', 'Sedaj se lahko prijavite z novim geslom.', 'i');";
                            _js += "$('#dialog').dialog('option', 'buttons', { Ok: function () { $(this).dialog('close'); window.location='Default.aspx';}});";
                        }
                    }
                    catch (Exception er)
                    {
                        throw er;
                    }
                    finally
                    {
                        uporabnik.logout(Session);
                    }
                }
            }
            else
            {
                _error = "Podatki v povezavi so nepravilni";
            }
        }
        catch (Exception er)
        {
            _error = "Prišlo je do programske napake<br /><i style=\"font-size:0.8em;\">" + er.Message + "</i>";
        }
    }
示例#22
0
        public async Task <IEnumerable <Dostava> > GetAllSeznamDostavAsync(DateTime from, DateTime to, Uporabnik uporabnik, int pageSize, int pageStart)
        {
            if (uporabnik == null)
            {
                throw new ArgumentNullException(nameof(uporabnik));
            }
            if (from == null)
            {
                throw new ArgumentNullException(nameof(from));
            }
            if (to == null)
            {
                throw new ArgumentNullException(nameof(to));
            }

            var roles = await _userManager.GetRolesAsync(uporabnik);

            Expression <Func <Dostava, bool> > filter = d => false; //Ne vrni nič

            if (roles.Contains("Admin"))
            {
                filter = null; //Vrni vse
            }
            else if (roles.Contains("Uporabnik"))
            {
                filter = d => d.UporabnikId == uporabnik.Id; //Vrni samo dostave za uporabnik
            }
            else if (roles.Contains("Skladiscnik"))
            {
                //Vse planirane dostave za skladišče
                filter = d => d.TockaSkladisca.SkladisceId == uporabnik.SkladisceId && d.Status == StatusDostave.Planiran;
            }

            //var dostave = _krkaRepo.GetAllDostave(from, to, filter);
            var dostave = _krkaRepo.GetAllDostavePaged(from, to, filter, pageSize, pageStart);

            return(dostave);
        }
示例#23
0
    protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            HttpCookie c = Request.Cookies["hash"];
            using (Uporabnik user = new Uporabnik(Session))
            {
                string action = Request.QueryString["action"] ?? "";
                #region logout
                if (action == "logout")
                {
                    if (c != null)
                    {
                        Response.Cookies["hash"].Expires = DateTime.Now.AddDays(-1);
                    }
                    user.logout(user.Id, null, Session, "");
                    Response.Redirect("Default.aspx", true);
                }
                #endregion
                if (!user.LoggedIn && (Request.HttpMethod == "POST" || c != null))
                {
                    string u = username.Text.Trim();
                    string p = password.Text.Trim();
                    bool   r = remember.Checked;
                    _ForceLogin = 1;

                    if (Request.HttpMethod != "POST")
                    {
                        #region cookie
                        string c_username = "";
                        string c_password = "";
                        if (c != null && !string.IsNullOrEmpty(c.Value))
                        {
                            try
                            {
                                string[] c_hash = Varnost.DecryptAES256(c.Value).Split(new string[] { "@-|@|-@" }, StringSplitOptions.None);
                                if (c_hash.Length == 3 && c_hash[2] == ConfigurationManager.AppSettings["EncryptKey"])
                                {
                                    c_username = c_hash[0].Trim();
                                    c_password = c_hash[1].Trim();
                                }
                                else
                                {
                                    throw new Exception();
                                }
                            }
                            catch
                            {
                                Response.Cookies["hash"].Expires = DateTime.Now.AddDays(-1);
                                Response.Redirect("Default.aspx", true);
                            }
                        }
                        if (string.IsNullOrEmpty(u))
                        {
                            u = c_username;
                        }
                        if (string.IsNullOrEmpty(p))
                        {
                            p = c_password;
                        }
                        #endregion
                    }
                    if (string.IsNullOrEmpty(u) || string.IsNullOrEmpty(p))
                    {
                        _error = "Uporabniško ime in geslo ne smejo biti prazni";
                    }
                    else
                    {
                        int lLoginResp = Uporabnik.login(u, p, Session, "", 1);

                        if (lLoginResp == 0)
                        {
                            if (r)
                            {
                                Response.Cookies["hash"].Value   = Varnost.EncryptAES256(u + "@-|@|-@" + p + "@-|@|-@" + ConfigurationManager.AppSettings["EncryptKey"]);
                                Response.Cookies["hash"].Expires = DateTime.Now.AddDays(30);
                            }
                            else if (Request.HttpMethod == "POST" && c != null)
                            {
                                Response.Cookies["hash"].Expires = DateTime.Now.AddDays(-1);
                            }
                            using (Uporabnik uporabnik = new Uporabnik(Session))
                            {
                                if (uporabnik.Pravice.Contains("pregled"))
                                {
                                    Response.Redirect("Pregled.aspx", true);
                                }
                                else if (uporabnik.Pravice.Contains("ostalo"))
                                {
                                    Response.Redirect("Ostalo.aspx", true);
                                }
                                else
                                {
                                    Response.Redirect("Osebno.aspx", true);
                                }
                            }
                        }
                        else
                        {
                            _error = Splosno.GetTranslateByID(lLoginResp);
                        }
                    }
                }
                else if (user.LoggedIn)
                {
                    Response.Redirect("Pregled.aspx", true);
                }
            }
        }
        catch (Exception er)
        {
            _error = "Prišlo je do programske napake<br /><i style=\"font-size:0.8em;\">" + er.Message + "</i>";
        }
    }
示例#24
0
        private void SeedIdentity(UserManager <Uporabnik> userManager, RoleManager <IdentityRole> roleManager)
        {
            //Roles
            if (!roleManager.RoleExistsAsync("Admin").Result)
            {
                var role = new IdentityRole
                {
                    Name           = "Admin",
                    NormalizedName = "ADMIN"
                };
                var roleResult = roleManager.CreateAsync(role).Result;
            }
            if (!roleManager.RoleExistsAsync("Uporabnik").Result)
            {
                var role = new IdentityRole
                {
                    Name           = "Uporabnik",
                    NormalizedName = "UPORABNIK"
                };
                var roleResult = roleManager.CreateAsync(role).Result;
            }
            if (!roleManager.RoleExistsAsync("Skladiscnik").Result)
            {
                var role = new IdentityRole
                {
                    Name           = "Skladiscnik",
                    NormalizedName = "SKLADISCNIK"
                };
                var roleResult = roleManager.CreateAsync(role).Result;
            }
            if (!roleManager.RoleExistsAsync("Test").Result)
            {
                var role = new IdentityRole
                {
                    Name           = "Test",
                    NormalizedName = "TEST"
                };
                var roleResult = roleManager.CreateAsync(role).Result;
            }

            //Test Users
            //ADMIN
            if (userManager.FindByNameAsync("*****@*****.**").Result == null)
            {
                var user = new Uporabnik();
                user.UserName       = "******";
                user.Email          = "*****@*****.**";
                user.PodjetjeId     = 1;
                user.EmailConfirmed = true;

                var result = userManager.CreateAsync(user, "Password123.").Result;

                if (result.Succeeded)
                {
                    userManager.AddToRoleAsync(user, "Admin").Wait();
                }
            }
            //UPORABNIKI
            if (userManager.FindByNameAsync("*****@*****.**").Result == null)
            {
                var user = new Uporabnik();
                user.UserName       = "******";
                user.Email          = "*****@*****.**";
                user.PodjetjeId     = 2;
                user.EmailConfirmed = true;

                var result = userManager.CreateAsync(user, "Password123.").Result;

                if (result.Succeeded)
                {
                    userManager.AddToRoleAsync(user, "Uporabnik").Wait();
                }
            }
            if (userManager.FindByNameAsync("*****@*****.**").Result == null)
            {
                var user = new Uporabnik();
                user.UserName       = "******";
                user.Email          = "*****@*****.**";
                user.PodjetjeId     = 3;
                user.EmailConfirmed = true;

                var result = userManager.CreateAsync(user, "Password123.").Result;

                if (result.Succeeded)
                {
                    userManager.AddToRoleAsync(user, "Uporabnik").Wait();
                }
            }
            //SKLADIŠÈNIK
            if (userManager.FindByNameAsync("*****@*****.**").Result == null)
            {
                var user = new Uporabnik();
                user.UserName       = "******";
                user.Email          = "*****@*****.**";
                user.PodjetjeId     = 1;
                user.EmailConfirmed = true;
                user.SkladisceId    = 1;

                var result = userManager.CreateAsync(user, "Password123.").Result;

                if (result.Succeeded)
                {
                    userManager.AddToRoleAsync(user, "Skladiscnik").Wait();
                }
            }
        }
示例#25
0
 public IActionResult Izpis(Uporabnik uporabnik)
 {
     return(View(uporabnik));
 }
示例#26
0
    protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            _u = new Uporabnik(Session);
            string t = Request.QueryString["t"];
            if (!_u.AppLogedIn && t != "geslo")
            {
                throw new Exception("Nimate pravice!");
            }
            _s = (Request.QueryString["s"] ?? "").ToLower().Trim();
            switch (t)
            {
            case "inetis": inetis(); break;

            case "tipi": tipi(); break;

            case "vrstica_tipi": vrstica_tipi(); break;

            case "qr": qr(); break;

            case "revizije": revizije(); break;

            case "stranke": stranke(); break;

            case "stranka": stranka(); break;

            case "poste": poste(); break;

            case "artikli": artikli(); break;

            case "artikel": artikel(); break;

            case "artikli_skupine": artikli_skupine(); break;

            case "glave": glave(); break;

            case "glava": glava(); break;

            case "set": set(); break;

            case "serije": serije(); break;

            case "stevilka": stevilka(); break;

            case "enote": enote(); break;

            case "geslo": geslo(); break;

            case "pravice": pravice(); break;

            case "skupine": skupine(); break;

            case "revirji": revirji(); break;

            case "sporocila": sporocila(); break;

            case "blagajne": blagajne(); break;

            case "persistence": persistence(); break;

            case "transakcije": transakcije(); break;

            case "tip": tip(); break;

            default: break;
            }
        }
        catch (ThreadAbortException ee) { }
        catch (Exception ee)
        {
            Response.Write(HttpUtility.JavaScriptStringEncode(ee.Message));
        }
    }
示例#27
0
    // POST api/<controller>
    public HttpResponseMessage Post(HttpRequestMessage request)
    {
        var    response  = Request.CreateResponse(HttpStatusCode.OK);
        string lresponse = "";

        HttpSessionState s = null;

        try
        {
            string lx   = request.Content.ReadAsStringAsync().Result;
            byte[] data = Convert.FromBase64String(lx);

            JObject j_req = JObject.Parse(Encoding.UTF8.GetString(data));

            string _req_type = j_req["req_type"].ToString().ToUpper();

            if (_req_type == "LOGIN")
            {
                string _req_data   = "";
                string lUserName   = "";
                string lPassword   = "";
                string lDeviceID   = "";
                int    lForceLogin = 0;

                try
                {
                    _req_data = j_req["req_data"].ToString();

                    if (!String.IsNullOrEmpty(_req_data))
                    {
                        JObject jo = JObject.Parse(_req_data);

                        lUserName   = Convert.ToString(jo["acUserName"]);
                        lPassword   = Convert.ToString(jo["acPassword"]);
                        lDeviceID   = Convert.ToString(jo["acDevID"]);
                        lForceLogin = Convert.ToInt32(jo["anForceLogin"]);
                    }

                    Uporabnik lUporabnik = new Uporabnik();

                    string lRsp = lUporabnik.login(lUserName, lPassword, lDeviceID, lForceLogin, 0, "");
                    lresponse = Convert.ToBase64String(Encoding.UTF8.GetBytes(lRsp));
                }
                catch (Exception exception)
                {
                    lresponse = Splosno.AddHeadDataToResponseData(0, 99999, exception.ToString(), lresponse);
                    lresponse = Convert.ToBase64String(Encoding.UTF8.GetBytes(lresponse));
                }

                response.Content = new StringContent(lresponse, Encoding.UTF8, "application/json");
            }
            else if (_req_type == "LOGOUT")
            {
                string _req_data   = j_req["req_data"].ToString();
                int    lUserID     = 0;
                string lSessionID  = "";
                string lDeviceID   = "";
                int    lForceLogin = 0;

                if (!String.IsNullOrEmpty(_req_data))
                {
                    JObject jo = JObject.Parse(_req_data);

                    lUserID    = Convert.ToInt32(jo["anUserID"]);
                    lSessionID = Convert.ToString(jo["acSessionID"]);
                    lDeviceID  = Convert.ToString(jo["acDevID"]);
                }

                Uporabnik lUporabnik = new Uporabnik();

                lUporabnik.logout(lUserID, lSessionID, s, lDeviceID);
                lUporabnik.Dispose();
                String lRsp = Splosno.AddHeadDataToResponseData(0, 0, "", "");

                string ldata = Convert.ToBase64String(Encoding.UTF8.GetBytes(lRsp));

                response.Content = new StringContent(ldata, Encoding.UTF8, "application/json");
            }
            else if (_req_type == "REGISTRATION")
            {
                string _req_data   = "";
                string lUserName   = "";
                string lPassword   = "";
                string lDeviceID   = "";
                string lName       = "";
                string lEmail      = "";
                string lUserRights = "";

                try
                {
                    _req_data = j_req["req_data"].ToString();

                    if (!String.IsNullOrEmpty(_req_data))
                    {
                        JObject jo = JObject.Parse(_req_data);

                        lUserName   = Convert.ToString(jo["acUserName"]);
                        lPassword   = Convert.ToString(jo["acPassword"]);
                        lDeviceID   = Convert.ToString(jo["acDevID"]);
                        lName       = Convert.ToString(jo["acName"]);
                        lEmail      = Convert.ToString(jo["acEmail"]);
                        lUserRights = Convert.ToString(jo["acUserRights"]);
                    }

                    Uporabnik lUporabnik = new Uporabnik();

                    string lRsp = lUporabnik.Registration(lUserName, lPassword, lDeviceID, lName, lEmail, lUserRights, 0, "");
                    lresponse = Convert.ToBase64String(Encoding.UTF8.GetBytes(lRsp));
                }
                catch (Exception exception)
                {
                    lresponse = Splosno.AddHeadDataToResponseData(0, 99999, exception.ToString(), lresponse);
                    lresponse = Convert.ToBase64String(Encoding.UTF8.GetBytes(lresponse));
                }

                response.Content = new StringContent(lresponse, Encoding.UTF8, "application/json");
            }
            else
            {
                response = Request.CreateResponse(HttpStatusCode.NotImplemented);
            }
        }
        catch (Exception exception)
        {
            response = Request.CreateResponse(HttpStatusCode.ExpectationFailed);
        }
        return(response);
    }
        public async Task <string> ValidateVnosTermina(IzberiterminDostaveModel podatki, Uporabnik uporabnikPrijave)
        {
            if (!podatki.IzbranDatum.HasValue)
            {
                return("Izberite termin.");
            }

            var uporabnikIzbire = await _userManager.FindByIdAsync(podatki.IzbranUporabnikId);

            var roles = await _userManager.GetRolesAsync(uporabnikPrijave);

            //Če si admin moraš izbrat uporabnika
            if (roles.Contains("Admin") && uporabnikIzbire == null)
            {
                return("Ni izbran uporabnik.");
            }

            return(null);
        }