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"); }
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); }
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"); } }
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!"); } }
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!"); } }
public MainPage() { this.InitializeComponent(); try { DbCreds.GetCreds(); UsersComboBox.DataContext = Db.ReadData(); } catch (Exception ex) { ToastCreator.CreateToast(ex.Message, "Błąd!"); } }
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); }
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; } } }
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); } }
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!"); } }
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"); } }
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"); } } }
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!"); } }