public async void DeleteUnsuccessfulLogins()
        {
            var result = await _service.Get <List <Model.Korisnici> >(null);

            var resultUA = await _ua.Get <List <Model.UserActivity> >(null);

            Model.Korisnici    korisnik = null;
            Model.UserActivity user     = null;
            foreach (var item in result)
            {
                if (APIService.Username == item.KorisnickoIme)
                {
                    korisnik = item;
                }
            }
            if (korisnik != null)
            {
                foreach (var item in resultUA)
                {
                    if (korisnik.KorisnikId == item.KorisnikId)
                    {
                        user = item;
                    }
                }
                if (user != null)
                {
                    user.BrojNeuspjesnihPrijavljivanja = 0;
                    await _ua.Update <Model.UserActivity>(user.KorisnikId, user);
                }
            }
            APIService.Username = null;
            APIService.Password = null;
        }
Exemple #2
0
        public async void SetPreferences()
        {
            var result = await _service.Get <List <Model.Korisnici> >(null);

            var resultUA = await _ua.Get <List <Model.UserActivity> >(null);

            Model.Korisnici    korisnik = null;
            Model.UserActivity user     = null;
            foreach (var item in result)
            {
                if (APIService.Username == item.KorisnickoIme)
                {
                    korisnik = item;
                }
            }
            if (korisnik != null)
            {
                foreach (var item in resultUA)
                {
                    if (korisnik.KorisnikId == item.KorisnikId)
                    {
                        user = item;
                    }
                }
                if (user != null)
                {
                    user.IsApartman  = APIService.Apartments;
                    user.IsAtrakcija = APIService.Atraction;
                    user.IsHotel     = APIService.Hotels;
                    user.IsKafic     = APIService.Coffeeshops;
                    user.IsNightClub = APIService.Nightclubs;
                    user.IsRestoran  = APIService.Food;

                    await _ua.Update <Model.UserActivity>(user.KorisnikId, user);
                }
                else
                {
                    var request = new UserActivityUpsertRequest
                    {
                        KorisnikId                    = korisnik.KorisnikId,
                        BrojPrijavljivanja            = 1,
                        BrojNeuspjesnihPrijavljivanja = 0,
                        Datum       = DateTime.Now,
                        Razlog      = "",
                        Onemogucen  = false,
                        IsApartman  = APIService.Apartments,
                        IsAtrakcija = APIService.Atraction,
                        IsHotel     = APIService.Hotels,
                        IsNightClub = APIService.Nightclubs,
                        IsKafic     = APIService.Coffeeshops,
                        IsRestoran  = APIService.Food
                    };
                    await _ua.Insert <Model.UserActivity>(request);
                }
            }
        }
Exemple #3
0
        async Task Login()
        {
            IsBusy = true;
            APIService.Username = Username;
            APIService.Password = Password;
            var resultUA = await _uaservice.Get <List <Model.UserActivity> >(null);

            var result = await _service.Get <List <Model.Korisnici> >(null);

            Model.Korisnici korisnik   = new Model.Korisnici();
            bool            pronadjen  = false;
            bool            pronadjen2 = false;

            Model.UserActivity userActivity = null;
            bool udaljen = false;

            bool takeThis = false;

            if (udaljen == true)
            {
                await Application.Current.MainPage.DisplayAlert("You don't have permissions to access the application", "No access", "OK");
            }
            foreach (var temp in result)
            {
                if (temp.KorisnickoIme == Username)
                {
                    korisnik  = temp;
                    pronadjen = true;

                    hash = GenerateHash(korisnik.LozinkaSalt, Password);
                    if (temp.LozinkaHash == hash)
                    {
                        pronadjen2 = true;
                    }
                }
            }
            foreach (var item in resultUA)
            {
                if (item.KorisnikId == korisnik.KorisnikId)
                {
                    userActivity = item;
                    if (item.BrojNeuspjesnihPrijavljivanja >= 3)
                    {
                        item.Onemogucen = true;
                        udaljen         = true;
                    }
                }
            }
            if (pronadjen2 == true && pronadjen == true && udaljen == false)
            {
                try
                {
                    APIService.Username = Username;
                    APIService.Password = Password;
                    if (userActivity != null)
                    {
                        userActivity.BrojPrijavljivanja += 1;
                    }
                    await _service.Get <dynamic>(null);

                    Application.Current.MainPage = new UserPreferenceContentPage();
                    takeThis = true;
                }
                catch (Exception ex)
                {
                    //  MessageBox.Show(ex.Message, "Authentifikacija", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    await Application.Current.MainPage.DisplayAlert("Error", ex.Message, "OK");
                }
            }
            else if (pronadjen == true && udaljen == false)
            {
                if (userActivity != null)
                {
                    userActivity.BrojNeuspjesnihPrijavljivanja += 1;
                }
                takeThis = false;
                await Application.Current.MainPage.DisplayAlert("Try again", "Please enter correct username and/or password !", "OK");
            }
            else
            {
                //  MessageBox.Show("Molimo vas unesite ispravno korisničko ime i/ili lozinku", "Pokušajte ponovo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                await Application.Current.MainPage.DisplayAlert("Try again", "Please enter correct username and/or password !", "OK");
            }
            try
            {
                if (userActivity != null)
                {
                    var request = new UserActivityUpsertRequest
                    {
                        KorisnikId                    = userActivity.KorisnikId,
                        BrojPrijavljivanja            = userActivity.BrojPrijavljivanja,
                        BrojNeuspjesnihPrijavljivanja = userActivity.BrojNeuspjesnihPrijavljivanja,
                        Datum       = DateTime.Now,
                        Razlog      = "",
                        Onemogucen  = false,
                        IsApartman  = userActivity.IsApartman,
                        IsAtrakcija = userActivity.IsAtrakcija,
                        IsHotel     = userActivity.IsHotel,
                        IsKafic     = userActivity.IsKafic,
                        IsNightClub = userActivity.IsNightClub,
                        IsRestoran  = userActivity.IsRestoran,
                    };
                    await _uaservice.Update <Model.UserActivity>(userActivity.KorisnikId, request);
                }
                else
                {
                    if (takeThis)
                    {
                        var request = new UserActivityUpsertRequest
                        {
                            KorisnikId                    = korisnik.KorisnikId,
                            BrojPrijavljivanja            = 1,
                            BrojNeuspjesnihPrijavljivanja = 0,
                            Datum      = DateTime.Now,
                            Razlog     = "",
                            Onemogucen = false
                        };
                        await _uaservice.Insert <Model.UserActivity>(request);
                    }
                    else
                    {
                        var request = new UserActivityUpsertRequest
                        {
                            KorisnikId                    = korisnik.KorisnikId,
                            BrojPrijavljivanja            = 0,
                            BrojNeuspjesnihPrijavljivanja = 1,
                            Datum      = DateTime.Now,
                            Razlog     = "",
                            Onemogucen = false
                        };
                        await _uaservice.Insert <Model.UserActivity>(request);
                    }
                }
            }
            catch
            {
            }
        }
        private async void btnSnimi_Click(object sender, EventArgs e)
        {
            var korid  = (Model.Korisnici)cmbOdaberiKorisnika.SelectedItem;
            var result = await _uaservice.Get <List <Model.UserActivity> >(null);

            bool vracanjePermisija = false;

            if (btnSnimi.Text == "Vrati permisije")
            {
                vracanjePermisija = true;
            }
            Model.UserActivity user = null;
            if (korid.KorisnikId != 0)
            {
                foreach (var item in result)
                {
                    if (item.KorisnikId == korid.KorisnikId)
                    {
                        user = item;
                    }
                }
                if (user == null)
                {
                    var request = new UserActivityUpsertRequest
                    {
                        KorisnikId                    = korid.KorisnikId,
                        BrojPrijavljivanja            = 0,
                        BrojNeuspjesnihPrijavljivanja = 0,
                        Datum      = DateTime.Now,
                        Razlog     = richTextBox1.Text,
                        Onemogucen = true
                    };
                    await _uaservice.Insert <Model.UserActivity>(request);
                }
                else
                {
                    if (vracanjePermisija)
                    {
                        var request = new UserActivityUpsertRequest
                        {
                            KorisnikId                    = korid.KorisnikId,
                            BrojPrijavljivanja            = user.BrojPrijavljivanja,
                            BrojNeuspjesnihPrijavljivanja = user.BrojNeuspjesnihPrijavljivanja,
                            Datum      = DateTime.Now,
                            Razlog     = richTextBox1.Text,
                            Onemogucen = false
                        };
                        await _uaservice.Update <Model.UserActivity>(korisnik.KorisnikId, request);

                        MessageBox.Show("Uspješno ste unbanovali korisnika", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else
                    {
                        var request = new UserActivityUpsertRequest
                        {
                            KorisnikId                    = korid.KorisnikId,
                            BrojPrijavljivanja            = user.BrojPrijavljivanja,
                            BrojNeuspjesnihPrijavljivanja = user.BrojNeuspjesnihPrijavljivanja,
                            Datum      = DateTime.Now,
                            Razlog     = richTextBox1.Text,
                            Onemogucen = true
                        };
                        await _uaservice.Update <Model.UserActivity>(korisnik.KorisnikId, request);

                        MessageBox.Show("Uspješno ste banovali korisnika", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
            }
        }
        private async void cmbOdaberiKorisnika_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (txtSlikaInput.Text.Length != 0)
            {
                circleButton1.Image = null;
                txtSlikaInput.Clear();
            }
            var korid = (Model.Korisnici)cmbOdaberiKorisnika.SelectedItem;


            var result = await _korisnici.Get <List <Model.Korisnici> >(null);

            if (korid.KorisnikId != 0)
            {
                var odabrani = result.Where(y => y.KorisnikId == korid.KorisnikId).FirstOrDefault();

                txtIme.Text     = odabrani.Ime;
                txtPrezime.Text = odabrani.Prezime;

                txtKorisnickoIme.Text = odabrani.KorisnickoIme;


                //else
                //{
                //    //cmbGradovi.DisplayMember = -1;
                //}
                if (odabrani.Slika.Length != 0)
                {
                    txtSlikaInput.Text = odabrani.PutanjaSlike;
                    if (txtSlikaInput.Text != "" && txtSlikaInput.Text != "openFileDialog1" && txtSlikaInput.Text != null)
                    {
                        var file = File.ReadAllBytes(txtSlikaInput.Text);

                        Image image = Image.FromFile(txtSlikaInput.Text);
                        circleButton1.Image = image;
                    }
                    else
                    {
                        using (MemoryStream ms = new MemoryStream(odabrani.Slika))
                        {
                            // Do something with ms..
                            circleButton1.Image = Image.FromStream(ms);
                            txtSlikaInput.Text  = System.Text.Encoding.UTF8.GetString(odabrani.Slika);
                        }
                    }
                }
            }
            var resultUS = await _uaservice.Get <List <Model.UserActivity> >(null);

            Model.UserActivity user = null;
            foreach (var item in resultUS)
            {
                if (item.KorisnikId == korid.KorisnikId)
                {
                    user = item;
                }
            }
            if (user != null)
            {
                if (user.Onemogucen == true)
                {
                    btnSnimi.BackColor = Color.DarkGreen;
                    btnSnimi.ForeColor = Color.White;
                    btnSnimi.Text      = "Vrati permisije";
                }
            }
            else
            {
                btnSnimi.BackColor = Color.DarkRed;
                btnSnimi.ForeColor = Color.White;
                btnSnimi.Text      = "Oduzmi permisije";
            }
        }
        public async void SetExisting()
        {
            var result = await korisnici.Get <List <Model.Korisnici> >(null);

            var resultUA = await _ua.Get <List <Model.UserActivity> >(null);

            Model.Korisnici    korisnik = null;
            Model.UserActivity user     = null;
            foreach (var item in result)
            {
                if (APIService.Username == item.KorisnickoIme)
                {
                    korisnik = item;
                }
            }
            if (korisnik != null)
            {
                foreach (var item in resultUA)
                {
                    if (korisnik.KorisnikId == item.KorisnikId)
                    {
                        user = item;
                    }
                }
                if (user != null)
                {
                    if (user.BrojPrijavljivanja >= 1)
                    {
                        if (user.IsApartman != null)
                        {
                            APIService.Apartments = (bool)user.IsApartman;
                        }
                        if (user.IsAtrakcija != null)
                        {
                            APIService.Atraction = (bool)user.IsAtrakcija;
                        }
                        if (user.IsHotel != null)
                        {
                            APIService.Hotels = (bool)user.IsHotel;
                        }
                        if (user.IsKafic != null)
                        {
                            APIService.Coffeeshops = (bool)user.IsKafic;
                        }
                        if (user.IsNightClub != null)
                        {
                            APIService.Nightclubs = (bool)user.IsNightClub;
                        }
                        if (user.IsRestoran != null)
                        {
                            APIService.Food = (bool)user.IsRestoran;
                        }
                    }
                }
            }
            if (user.IsApartman != null || user.IsAtrakcija != null || user.IsHotel != null || user.IsKafic != null || user.IsRestoran != null || user.IsNightClub != null)
            {
                Set();
            }
            else
            {
                btn4.BackgroundColor = Color.White;
                btn4.TextColor       = Color.Black;
                m.Apartman           = false;
                m._apartment         = false;
                btn2.BackgroundColor = Color.White;
                btn2.TextColor       = Color.Black;
                m._atraction         = false;
                m.Atrakcija          = false;
                btn6.BackgroundColor = Color.White;
                btn6.TextColor       = Color.Black;
                m._coffeeshops       = false;
                m.Kafic = false;
                btn3.BackgroundColor = Color.White;
                btn3.TextColor       = Color.Black;
                m._hotel             = false;
                m.Hotel = false;
                btn1.BackgroundColor = Color.White;
                btn1.TextColor       = Color.Black;
                m._food = false;
                m.Hrana = false;
                btn7.BackgroundColor = Color.White;
                btn7.TextColor       = Color.Black;
                m._nightclubs        = false;
                m.NK = false;
            }
        }
Exemple #7
0
        private async void btnLogin_Click(object sender, EventArgs e)
        {
            var result = await _service.Get <List <Model.Korisnici> >(null);

            var resultUA = await _uaservice.Get <List <Model.UserActivity> >(null);

            Model.Korisnici korisnik   = new Model.Korisnici();
            bool            pronadjen  = false;
            bool            pronadjen2 = false;


            foreach (var temp in result)
            {
                if (temp.KorisnickoIme == txtUsername.Text)
                {
                    korisnik  = temp;
                    pronadjen = true;
                    hash      = GenerateHash(korisnik.LozinkaSalt, txtPassword.Text);
                    if (temp.LozinkaHash == hash)
                    {
                        pronadjen2 = true;
                    }
                }
            }
            Model.UserActivity userActivity = null;
            bool udaljen = false;

            foreach (var item in resultUA)
            {
                if (item.KorisnikId == korisnik.KorisnikId)
                {
                    userActivity = item;
                    if (item.BrojNeuspjesnihPrijavljivanja >= 3)
                    {
                        item.Onemogucen = true;
                        MessageBox.Show("Nemate pravo pristupa", "Authentifikacija", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        udaljen = true;
                    }
                }
            }
            bool takeThis = false;

            if (udaljen == true)
            {
                MessageBox.Show("Banovani ste sa sistema!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            if (pronadjen2 == true && pronadjen == true && udaljen == false)
            {
                try
                {
                    APIService.Username = txtUsername.Text;
                    APIService.Password = txtPassword.Text;
                    if (userActivity != null)
                    {
                        userActivity.BrojPrijavljivanja += 1;
                    }
                    await _service.Get <dynamic>(null);

                    frmMenu frmMenu = new frmMenu();
                    frmMenu.Show();
                    //this.Hide();
                    takeThis = true;
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Authentifikacija", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    if (userActivity != null)
                    {
                        userActivity.BrojNeuspjesnihPrijavljivanja += 1;
                    }
                    takeThis = false;
                }
            }
            else if (pronadjen == true && udaljen == false)
            {
                if (userActivity != null)
                {
                    userActivity.BrojNeuspjesnihPrijavljivanja += 1;
                }
                takeThis = false;
                MessageBox.Show("Molimo vas unesite ispravno korisničko ime i/ili lozinku", "Pokušajte ponovo", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                MessageBox.Show("Molimo vas unesite ispravno korisničko ime i/ili lozinku", "Pokušajte ponovo", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            try
            {
                if (userActivity != null)
                {
                    var request = new UserActivityUpsertRequest
                    {
                        KorisnikId                    = userActivity.KorisnikId,
                        BrojPrijavljivanja            = userActivity.BrojPrijavljivanja,
                        BrojNeuspjesnihPrijavljivanja = userActivity.BrojNeuspjesnihPrijavljivanja,
                        Datum                     = DateTime.Now,
                        Razlog                    = "",
                        Onemogucen                = false,
                        IsApartman                = userActivity.IsApartman,
                        IsAtrakcija               = userActivity.IsAtrakcija,
                        IsHotel                   = userActivity.IsHotel,
                        IsKafic                   = userActivity.IsKafic,
                        IsNightClub               = userActivity.IsNightClub,
                        IsRestoran                = userActivity.IsRestoran,
                        BrojApartmanaFavoriti     = userActivity.BrojApartmanaFavoriti,
                        BrojAtrakcijaFavoriti     = userActivity.BrojApartmanaFavoriti,
                        BrojHotelaFavoriti        = userActivity.BrojHotelaFavoriti,
                        BrojKaficaFavoriti        = userActivity.BrojKaficaFavoriti,
                        BrojNocnihKlubovaFavoriti = userActivity.BrojNocnihKlubovaFavoriti,
                        BrojRestoranaFavoriti     = userActivity.BrojRestoranaFavoriti,
                    };
                    //privremeno
                    request.BrojNeuspjesnihPrijavljivanja = 0;
                    await _uaservice.Update <Model.UserActivity>(userActivity.KorisnikId, request);
                }
                else
                {
                    if (takeThis)
                    {
                        var request = new UserActivityUpsertRequest
                        {
                            KorisnikId                    = korisnik.KorisnikId,
                            BrojPrijavljivanja            = 1,
                            BrojNeuspjesnihPrijavljivanja = 0,
                            Datum      = DateTime.Now,
                            Razlog     = "",
                            Onemogucen = false
                        };
                        await _uaservice.Insert <Model.UserActivity>(request);
                    }
                    else
                    {
                        var request = new UserActivityUpsertRequest
                        {
                            KorisnikId                    = korisnik.KorisnikId,
                            BrojPrijavljivanja            = 0,
                            BrojNeuspjesnihPrijavljivanja = 1,
                            Datum      = DateTime.Now,
                            Razlog     = "",
                            Onemogucen = false
                        };
                        await _uaservice.Insert <Model.UserActivity>(request);
                    }
                }
            }
            catch
            {
            }
        }