Admin view hinzugefügt
This commit is contained in:
@@ -0,0 +1,148 @@
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Windows;
|
||||
|
||||
namespace Casino
|
||||
{
|
||||
public partial class AdminView : Window
|
||||
{
|
||||
private readonly Database db = new Database();
|
||||
|
||||
private ObservableCollection<User> users;
|
||||
|
||||
public AdminView()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
// Prüfen, ob der aktuell eingeloggte Benutzer Admin ist
|
||||
if (MainWindow.currentUser < 0)
|
||||
{
|
||||
MessageBox.Show(
|
||||
"Es ist kein Benutzer eingeloggt.",
|
||||
"Fehler",
|
||||
MessageBoxButton.OK,
|
||||
MessageBoxImage.Error);
|
||||
|
||||
Close();
|
||||
return;
|
||||
}
|
||||
|
||||
users = db.GetUser();
|
||||
|
||||
// Sicherheitsprüfung über die Datenbank
|
||||
if (MainWindow.currentUser >= users.Count ||
|
||||
!db.SelectAdmin(users[MainWindow.currentUser].ID))
|
||||
{
|
||||
MessageBox.Show(
|
||||
"Du hast keine Admin-Rechte.",
|
||||
"Zugriff verweigert",
|
||||
MessageBoxButton.OK,
|
||||
MessageBoxImage.Warning);
|
||||
|
||||
Close();
|
||||
return;
|
||||
}
|
||||
|
||||
UserDataGrid.ItemsSource = users;
|
||||
}
|
||||
|
||||
// ==========================================
|
||||
// BEARBEITEN
|
||||
// ==========================================
|
||||
|
||||
private void BtnBearbeiten_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (UserDataGrid.SelectedItem is not User selectedUser)
|
||||
{
|
||||
MessageBox.Show(
|
||||
"Bitte wähle zuerst einen Benutzer aus.",
|
||||
"Kein Benutzer ausgewählt",
|
||||
MessageBoxButton.OK,
|
||||
MessageBoxImage.Warning);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
EditUserView editView = new EditUserView(selectedUser);
|
||||
|
||||
// Eigenes Fenster öffnen
|
||||
editView.ShowDialog();
|
||||
|
||||
// Nach dem Schließen Daten neu laden
|
||||
users = db.GetUser();
|
||||
UserDataGrid.ItemsSource = users;
|
||||
}
|
||||
|
||||
// ==========================================
|
||||
// LÖSCHEN
|
||||
// ==========================================
|
||||
|
||||
private void BtnLoeschen_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (UserDataGrid.SelectedItem is not User selectedUser)
|
||||
{
|
||||
MessageBox.Show(
|
||||
"Bitte wähle zuerst einen Benutzer aus.",
|
||||
"Kein Benutzer ausgewählt",
|
||||
MessageBoxButton.OK,
|
||||
MessageBoxImage.Warning);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
// Sicherheitsabfrage
|
||||
MessageBoxResult result = MessageBox.Show(
|
||||
$"Möchtest du den Benutzer '{selectedUser.Name}' wirklich löschen?",
|
||||
"Benutzer löschen",
|
||||
MessageBoxButton.YesNo,
|
||||
MessageBoxImage.Warning);
|
||||
|
||||
if (result != MessageBoxResult.Yes)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
// Benutzer aus Datenbank löschen
|
||||
bool success = db.DeleteUser(selectedUser.ID);
|
||||
|
||||
if (success)
|
||||
{
|
||||
MessageBox.Show(
|
||||
"Benutzer wurde erfolgreich gelöscht.",
|
||||
"Erfolgreich",
|
||||
MessageBoxButton.OK,
|
||||
MessageBoxImage.Information);
|
||||
|
||||
// Tabelle aktualisieren
|
||||
users = db.GetUser();
|
||||
UserDataGrid.ItemsSource = users;
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show(
|
||||
"Der Benutzer konnte nicht gelöscht werden.",
|
||||
"Fehler",
|
||||
MessageBoxButton.OK,
|
||||
MessageBoxImage.Error);
|
||||
}
|
||||
}
|
||||
|
||||
// ==========================================
|
||||
// AKTUALISIEREN
|
||||
// ==========================================
|
||||
|
||||
private void BtnAktualisieren_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
users = db.GetUser();
|
||||
UserDataGrid.ItemsSource = users;
|
||||
}
|
||||
|
||||
// ==========================================
|
||||
// SCHLIESSEN
|
||||
// ==========================================
|
||||
|
||||
private void BtnSchliessen_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
Close();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user