From fa3666a59c0397f0a2311adc1a7592d14894dca3 Mon Sep 17 00:00:00 2001 From: AdrianBalunan Date: Thu, 16 Apr 2026 10:05:33 +0200 Subject: [PATCH] Feat: Updated LoaderScene method to pass authToken --- .../controller/components/LoaderScene.java | 28 ++++++++++++++----- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/controller/components/LoaderScene.java b/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/controller/components/LoaderScene.java index 30236e9..701094e 100644 --- a/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/controller/components/LoaderScene.java +++ b/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/controller/components/LoaderScene.java @@ -13,7 +13,9 @@ import ntnu.systemutvikling.team6.controller.AvailableOrganizationController; import ntnu.systemutvikling.team6.controller.CharityPageController; import ntnu.systemutvikling.team6.controller.DonationPageController; +import ntnu.systemutvikling.team6.controller.FrontpageController; import ntnu.systemutvikling.team6.models.Charity; +import ntnu.systemutvikling.team6.service.AuthenticationService; /** * This class is a utility class that is used to load different scenes in the application. For now, @@ -31,7 +33,7 @@ public class LoaderScene { * @param event * @param charity */ - public static void LoadScene(String sceneName, ActionEvent event, Charity charity, String query) { + public static void LoadScene(String sceneName, ActionEvent event, Charity charity, String query, AuthenticationService authtoken) { try { System.out.println(HmHApplication.class.getResource("/fxml/" + sceneName + ".fxml")); FXMLLoader fxmlLoader = @@ -42,14 +44,26 @@ public static void LoadScene(String sceneName, ActionEvent event, Charity charit Object controller = fxmlLoader.getController(); // Needs to be expanded when more pages get implemented. - if (controller instanceof CharityPageController charityController) { - charityController.setCharity(charity); + // Controllers that need charities: + if (charity != null){ + if (controller instanceof CharityPageController charityController) { + charityController.setCharity(charity); + } + if (controller instanceof DonationPageController donationController) { + donationController.setCharity(charity); + } } - if (controller instanceof DonationPageController donationController) { - donationController.setCharity(charity); + + // Controllers that need query + if (query != null){ + if (controller instanceof AvailableOrganizationController availableOrganizationController) { + availableOrganizationController.setInitialSearch(query); + } } - if (controller instanceof AvailableOrganizationController availableOrganizationController) { - availableOrganizationController.setInitialSearch(query); + + // All controllers need to set authtoken + if (controller instanceof BaseController baseController){ + baseController.setAuthToken(authtoken); } Stage stage = (Stage) ((Node) event.getSource()).getScene().getWindow();