using Avalonia.Controls; using Avalonia.Interactivity; using ChronoFlow.Controller; namespace ChronoFlow.View { /// /// Das Fenster für den Benutzer-Login. /// public partial class LoginWindow : Window { private LoginController _loginController; public LoginWindow() { InitializeComponent(); // Verbindet XAML mit diesem Code _loginController = new LoginController(); // Unsere "Logik-Klasse" } /// /// Wird ausgeführt, wenn der Benutzer auf "Anmelden" klickt. /// private void LoginButton_Click(object? sender, RoutedEventArgs e) { // Holt Benutzername und Passwort aus den Eingabefeldern string username = UsernameBox?.Text ?? string.Empty; string password = PasswordBox?.Text ?? string.Empty; // Übergibt die Eingaben an den LoginController var user = _loginController.Authenticate(username, password); if (user != null) { // Wenn erfolgreich: öffne das MainWindow var main = new MainWindow(user); main.Show(); this.Close(); // Schließe das Login-Fenster } else { // Wenn fehlgeschlagen: Fehlermeldung anzeigen ErrorText.Text = "Login fehlgeschlagen. Bitte prüfen Sie Ihre Eingaben."; ErrorText.IsVisible = true; } } } }