diff --git a/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/controller/LoginPageController.java b/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/controller/LoginPageController.java index e9ec250..04fa579 100644 --- a/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/controller/LoginPageController.java +++ b/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/controller/LoginPageController.java @@ -2,16 +2,24 @@ import javafx.event.ActionEvent; import javafx.fxml.FXML; +import javafx.scene.control.Alert; +import javafx.scene.control.PasswordField; +import javafx.scene.control.TextField; import ntnu.systemutvikling.team6.controller.components.BaseController; import ntnu.systemutvikling.team6.controller.components.FooterController; import ntnu.systemutvikling.team6.controller.components.LoaderScene; import ntnu.systemutvikling.team6.controller.components.NavbarController; +import java.awt.*; + public class LoginPageController extends BaseController { @FXML private NavbarController navbarController; @FXML private FooterController footerController; + @FXML private TextField emailField; + @FXML private PasswordField passwordField; + @Override protected void authTokenisSet() { if (isLoggedin()){ @@ -23,7 +31,41 @@ protected void authTokenisSet() { @FXML private void handleLogin(ActionEvent event){ + String emailText = emailField.getText(); + String password = passwordField.getText(); + + if (emailText.isBlank() || password.isBlank()){ + showAlert(Alert.AlertType.ERROR, "Empty input", "Please fill out all fields"); + return; + } + if (!emailText.contains("@") || !emailText.contains(".")) { + showAlert(Alert.AlertType.ERROR, "Invalid Email", "Please enter a valid email"); + return; + } + + boolean loginSuccess; + try { + loginSuccess = authToken.login(emailText, password); + } catch (Exception e) { + e.printStackTrace(); + showAlert(Alert.AlertType.ERROR, "Unexpected Error", "Unexpected error ocurred"); + return; + } + if (loginSuccess) { + showAlert( + Alert.AlertType.INFORMATION, + "Login Success", + "Login Successful!"); + LoaderScene.LoadScene("profile_org_Settings", event, null, null, authToken); + } else { + showAlert( + Alert.AlertType.ERROR, + "Account not found", + "User logg inn failed. Either email is wrong or password"); + emailField.setText(""); + passwordField.setText(""); + } } @FXML