Example #1
0
        private void Add_user_button_Click(object sender, RoutedEventArgs e)
        {
            string user = user_name.Text;
            string pwd  = "";

            try
            {
                if (password.Password == password_confirm.Password)
                {
                    pwd = BCrypt.Net.BCrypt.HashPassword(password.Password);
                }
                else
                {
                    throw new Exception("Wprowadzone hasła nie są identyczne!");
                }
            }
            catch (Exception ex)
            {
                ToastCreator.CreateToast("Problem z hasłem", ex.Message);
            }
            Db.User(user, pwd);
            user_name.Text            = String.Empty;
            password.Password         = String.Empty;
            password_confirm.Password = String.Empty;
            ContextsRefresh("operator");
        }
Example #2
0
        public static ObservableCollection <Zdarzenie> ReadData_Zdarzenie(string table = "zdarzenia")
        {
            ObservableCollection <Zdarzenie> data = new ObservableCollection <Zdarzenie>();

            try
            {
                MySqlConnection connection = CreateConnection();
                connection.Open();
                string       sql = String.Format("SELECT * FROM {0}", table);
                MySqlCommand cmd = new MySqlCommand(sql, connection);

                MySqlDataReader rdr = cmd.ExecuteReader();
                {
                    while (rdr.Read())
                    {
                        data.Add(new Zdarzenie(DateTime.Parse(rdr["data_godzina_zdarzenia"].ToString()),
                                               int.Parse(rdr["kamera"].ToString()),
                                               int.Parse(rdr["zmiana"].ToString()),
                                               rdr["rodzaj_zdarzenia"].ToString(),
                                               rdr["przekazanie"].ToString(),
                                               rdr["lokalizacja"].ToString(),
                                               rdr["operator"].ToString(),
                                               DateTime.Parse(rdr["utworzone_data"].ToString())));
                    }
                    connection.Close();
                }
            }
            catch
            {
                ToastCreator.CreateToast("Błąd poczas pobierania zdarzenia z bazy", "Błąd");
            }
            return(data);
        }
Example #3
0
        private void change_password_Click(object sender, RoutedEventArgs e)
        {
            string pwd = "";
            bool   isCurrentPasswordCorrect = Db.ValidateUser(ActiveUser.User, password_current.Password);

            try
            {
                if (isCurrentPasswordCorrect)
                {
                    if (password_change.Password == password_change_confirm.Password)
                    {
                        pwd = password_change.Password; //BCrypt.Net.BCrypt.HashPassword(password_change.Password);
                        Db.User(ActiveUser.User, pwd, "change");
                        ActiveUser.User = "";
                        this.Frame.Navigate(typeof(MainPage));
                    }
                    else
                    {
                        throw new Exception("Wprowadzone hasła nie są identyczne!");
                    }
                }
                else
                {
                    throw new Exception("Popraw aktualne hasło!");
                }
            }
            catch (Exception ex)
            {
                ToastCreator.CreateToast(ex.Message, "Problem z hasłem");
            }
        }
Example #4
0
 private void adminBtnTop_Click(object sender, RoutedEventArgs e)
 {
     if (ActiveUser.User.Equals("Administrator"))
     {
         this.Frame.Navigate(typeof(Admin));
     }
     else
     {
         ToastCreator.CreateToast("Nie masz wystarczających uprawnień żeby przejść do ustawień administratora.", "Brak autoryzacji!");
     }
 }
Example #5
0
 private void admin_btn_top_Click(object sender, RoutedEventArgs e)
 {
     if (ActiveUser.User.Equals("Administrator"))
     {
         this.Frame.Navigate(typeof(Admin));
     }
     else
     {
         ToastCreator.CreateToast("Nie masz uprawnień żeby przejść do ustawień administratora!", "Wstęp wzbroniony!");
     }
 }
Example #6
0
 public MainPage()
 {
     this.InitializeComponent();
     try
     {
         DbCreds.GetCreds();
         UsersComboBox.DataContext = Db.ReadData();
     }
     catch (Exception ex)
     {
         ToastCreator.CreateToast(ex.Message, "Błąd!");
     }
 }
Example #7
0
 public AddEvent()
 {
     this.InitializeComponent();
     ActiveUserTop.DataContext = ActiveUser.User;
     try
     {
         int cams_count = int.Parse(Db.ReadData("kamery", "Kamery").ElementAt(0));
         for (int i = 1; i <= cams_count; i++)
         {
             cams.Items.Add(i);
         }
         eventAction.DataContext = Db.ReadData("przekazanie", "przekazanie");
         eventType.DataContext   = Db.ReadData("rodzaje_zdarzen", "rodzaj_zdarzenia");
     }
     catch (Exception ex)
     {
         ToastCreator.CreateToast(ex.Message, "Błąd podczas czytania danych z bazy!");
     }
     //dwie zmiany
     shift.Items.Add(1);
     shift.Items.Add(2);
 }
Example #8
0
        private void items_refreshed(FrameworkElement sender, DataContextChangedEventArgs args)
        {
            if (ActiveUser.User == "Administrator")
            {
                ObservableCollection <Zdarzenie> list = (ObservableCollection <Zdarzenie>)dtGrid.DataContext;
                if (list.Count() == 0)
                {
                    ToastCreator.CreateToast("Filtry zostały usunięte. Powodem może być brak danych spełniających warunki lub ponowne wybranie tego samego filtra.", "Uwaga!");
                    list = Db.ReadData_Zdarzenie();
                    dtGrid.DataContext = list;
                    areFiltersApplied  = false;
                    AppliedFilters.Clear();
                    label_count.DataContext = list.Count();
                    chosenFilters.Text      = "";
                }
                else
                {
                    label_count.DataContext = list.Count();
                }

                if (areFiltersApplied == true)
                {
                    chosenFiltersFlat.Visibility = Visibility.Visible;
                    chosenFilters.Visibility     = Visibility.Visible;
                    chosenFilters.Text           = "";
                    foreach (string filter in AppliedFilters)
                    {
                        chosenFilters.Text += filter;
                        chosenFilters.Text += " ";
                    }
                }
                else
                {
                    chosenFilters.Text           = "";
                    chosenFiltersFlat.Visibility = Visibility.Collapsed;
                    chosenFilters.Visibility     = Visibility.Collapsed;
                }
            }
        }
Example #9
0
        private void Change_password_btn_Click(object sender, RoutedEventArgs e)
        {
            string pwd  = "";
            string user = operator_change_password.SelectedValue.ToString();

            try
            {
                if (password_change.Password == password_change_confirm.Password)
                {
                    pwd = password_change.Password; //BCrypt.Net.BCrypt.HashPassword(password_change.Password);
                    Db.User(user, pwd, "change");
                }
                else
                {
                    throw new Exception("Wprowadzone hasła nie są identyczne!");
                }
            }
            catch (Exception ex)
            {
                ToastCreator.CreateToast("Problem z hasłem", ex.Message);
            }
        }
Example #10
0
        private void addEventToSQL_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (!eventDate.Date.HasValue ||
                    cams.SelectedItem == null ||
                    shift.SelectedItem == null ||
                    eventType.SelectedItem == null ||
                    eventAction.SelectedItem == null ||
                    eventLoc.Text.Length < 3)
                {
                    throw new Exception("Popraw błędy w formularzu");
                }
                else
                {
                    string date = String.Format("{0}-{1}-{2}",
                                                eventDate.Date.Value.Day,
                                                eventDate.Date.Value.Month,
                                                eventDate.Date.Value.Year);
                    string dateTime = String.Format("{0} {1}",
                                                    date, eventTime.Time);
                    DateTime  dtime = DateTime.Parse(dateTime);
                    Zdarzenie evnt  = new Zdarzenie(dtime,
                                                    int.Parse(cams.SelectedValue.ToString()),
                                                    int.Parse(shift.SelectedValue.ToString()),
                                                    eventType.SelectedValue.ToString(),
                                                    eventAction.SelectedValue.ToString(),
                                                    eventLoc.Text.ToString());

                    Db.ZdarzenieToSQL(evnt);
                    ToastCreator.CreateToast("Zdarzenie zostało dodane", "Wszystko ok!");
                }
            }
            catch (Exception ex)
            {
                ToastCreator.CreateToast(ex.Message, "Błąd!");
            }
        }
Example #11
0
        private void loginBtn_Click(object sender, RoutedEventArgs e)
        {
            string selectedUser = UsersComboBox.SelectedValue.ToString();
            bool   auth         = false;

            try
            {
                auth = Db.ValidateUser(selectedUser, passwordBox.Password);
            }
            catch (Exception ex)
            {
                ToastCreator.CreateToast(ex.Message, "Błąd uwierzytelnienia");
            }
            if (auth)
            {
                ActiveUser.User = selectedUser;
                this.Frame.Navigate(typeof(AddEvent));
            }
            else
            {
                ToastCreator.CreateToast("Podano złe hasło!", "Błąd uwierzytelnienia");
            }
        }
Example #12
0
        private void dtgrid_sorting(object sender, DataGridColumnEventArgs e)
        {
            if (ActiveUser.User == "Administrator")
            {
                try
                {
                    if (e.Column.Tag.Equals("Event_Date"))
                    {
                        if (!(e.Column.SortDirection == DataGridSortDirection.Ascending))
                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.data_godzina_zdarzenia ascending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Ascending;
                        }
                        else

                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.data_godzina_zdarzenia descending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Descending;
                        }
                    }

                    else if (e.Column.Tag.Equals("user"))
                    {
                        if (!(e.Column.SortDirection == DataGridSortDirection.Ascending))
                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.user ascending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Ascending;
                        }
                        else

                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.user descending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Descending;
                        }
                    }

                    else if (e.Column.Tag.Equals("cam"))
                    {
                        if (!(e.Column.SortDirection == DataGridSortDirection.Ascending))
                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.kamera ascending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Ascending;
                        }
                        else

                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.kamera descending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Descending;
                        }
                    }

                    else if (e.Column.Tag.Equals("shift"))
                    {
                        if (!(e.Column.SortDirection == DataGridSortDirection.Ascending))
                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.zmiana ascending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Ascending;
                        }
                        else

                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.zmiana descending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Descending;
                        }
                    }

                    else if (e.Column.Tag.Equals("created"))
                    {
                        if (!(e.Column.SortDirection == DataGridSortDirection.Ascending))
                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.utworzone_data ascending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Ascending;
                        }
                        else

                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.utworzone_data descending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Descending;
                        }
                    }

                    else if (e.Column.Tag.Equals("type"))
                    {
                        if (!(e.Column.SortDirection == DataGridSortDirection.Ascending))
                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.rodzaj_zdarzenia ascending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Ascending;
                        }
                        else

                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.rodzaj_zdarzenia descending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Descending;
                        }
                    }

                    else if (e.Column.Tag.Equals("action"))
                    {
                        if (!(e.Column.SortDirection == DataGridSortDirection.Ascending))
                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.przekazanie ascending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Ascending;
                        }
                        else

                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.przekazanie descending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Descending;
                        }
                    }
                    else if (e.Column.Tag.Equals("loc"))
                    {
                        if (!(e.Column.SortDirection == DataGridSortDirection.Ascending))
                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.lokalizacja ascending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Ascending;
                        }
                        else

                        {
                            dtGrid.DataContext = new ObservableCollection <Zdarzenie>(from item in Db.ReadData_Zdarzenie()
                                                                                      orderby item.lokalizacja descending
                                                                                      select item);
                            e.Column.SortDirection = DataGridSortDirection.Descending;
                        }
                    }
                }
                catch (Exception ex)
                {
                    ToastCreator.CreateToast(ex.Message, "Błąd");
                }
            }
        }
Example #13
0
        private void PredefinedSettings_Click(object sender, RoutedEventArgs e)
        {
            //Przed uruchomieniem tej funkcji pusta baza danych musi być stworzona!!
            //Predefined Settings in four lists (5th list in Db.CreateTables())
            List <string> predef_ops = new List <string> {
                "Administrator",
                "User 1",
                "User 2",
                "User 3",
                "User 4",
                "User 5",
                "User 6",
                "User 7",
                "User 8",
                "User 9",
                "User 10",
                "User 11",
                "User 12"
            };
            List <string> predef_pws = new List <string> {
                "dsa",
                "asd",
                "asd",
                "asd",
                "asd",
                "asd",
                "asd",
                "asd",
                "asd",
                "asd",
                "asd",
                "asd",
                "asd"
            };
            List <string> predef_przekazanie = new List <string> {
                "Straż Miejska",
                "Komenda Miejska Policji",
                "Państwowa Straż Pożarna",
                "Pogotowie",
                "Portiernia",
                "Sporządzona notatka",
                "Inne"
            };
            List <string> predef_rodzaje = new List <string> {
                "Dewastacja mienia",
                "Kradzież",
                "Zakłucanie spokoju",
                "Przestępstwo przeciwko osobie",
                "Źle zaparkowany samochód",
                "Wypadki",
                "Leżący człowiek",
                "Podpalenia i pożary",
                "Awaria kamery",
                "Brak nagrywania",
                "Sprawdzenie systemów",
                "Sprawdzenie zabezpieczenia budynku",
                "Zamknięcie budynku",
                "Awaria techniczna",
                "Inne"
            };

            try
            {
                //Creating all tables
                Db.CreateTables();
                //Adding users with passwords from lists
                foreach (var op in predef_ops.Zip(predef_pws, Tuple.Create))
                {
                    Db.User(@op.Item1, @op.Item2);
                }
                //Adding actions, types and setting up 12 cams
                Db.AddToSQLBulk(predef_przekazanie, "przekazanie", "przekazanie");
                Db.AddToSQLBulk(predef_rodzaje, "rodzaje_zdarzen", "rodzaj_zdarzenia");
                Db.AddToSQL("12", "kamery", "kamery");
            }
            catch (Exception ex)
            {
                ToastCreator.CreateToast(ex.Message, "Błąd!");
            }
        }