Skip to content

Commit

Permalink
refactor: replaced all the page controllers with one PageController
Browse files Browse the repository at this point in the history
  • Loading branch information
emilfa committed Mar 20, 2026
1 parent 04080ed commit 050f592
Show file tree
Hide file tree
Showing 23 changed files with 147 additions and 244 deletions.
11 changes: 9 additions & 2 deletions src/main/java/edu/group5/app/App.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
package edu.group5.app;

import edu.group5.app.control.MainController;
import edu.group5.app.control.wrapper.DbWrapper;
import edu.group5.app.control.wrapper.OrgApiWrapper;
import edu.group5.app.model.organization.OrganizationRepository;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.image.Image;
Expand All @@ -11,11 +14,15 @@
*/
public class App extends Application {
@Override
public void start(Stage stage) {
public void start(Stage stage) throws InterruptedException {
OrgApiWrapper orgApiWrapper = new OrgApiWrapper("https://app.innsamlingskontrollen.no/api/public/v1/all");
orgApiWrapper.importData();
OrganizationRepository organizationRepository = new OrganizationRepository(orgApiWrapper.getData());

MainController controller = new MainController();

Scene scene = controller.getMainView().getScene();
controller.showLoginPage();
controller.showHomePage();

stage.getIcons().add(new Image(getClass().getResource("/header/images/hmh-logo.png").toExternalForm()));
stage.setTitle("Help-Me-Help");
Expand Down
14 changes: 0 additions & 14 deletions src/main/java/edu/group5/app/control/BrowseCardController.java

This file was deleted.

This file was deleted.

28 changes: 0 additions & 28 deletions src/main/java/edu/group5/app/control/HeaderController.java

This file was deleted.

19 changes: 0 additions & 19 deletions src/main/java/edu/group5/app/control/HomePageController.java

This file was deleted.

13 changes: 0 additions & 13 deletions src/main/java/edu/group5/app/control/LoginPageController.java

This file was deleted.

46 changes: 19 additions & 27 deletions src/main/java/edu/group5/app/control/MainController.java
Original file line number Diff line number Diff line change
@@ -1,49 +1,41 @@
package edu.group5.app.control;

import edu.group5.app.control.donationpage.DonationPageController;
import edu.group5.app.model.user.User;
import edu.group5.app.view.MainView;
import edu.group5.app.view.donationpage.DonationPageView;

public class MainController {
private final MainView view;
private final HeaderController headerController;
private final HomePageController homePageController;
private final BrowsePageController browsePageController;
private final BrowseCardController browseCardController;
private final OrganizationPageController organizationPageController;
private final DonationPageController donationPageController;
private final PageController pageController;
private User currentUser;

public MainController() {
this.view = new MainView(this);
this.headerController = new HeaderController(this);
this.homePageController = new HomePageController(this);
this.browsePageController = new BrowsePageController(this);
this.browseCardController = new BrowseCardController(this);
this.organizationPageController = new OrganizationPageController(this);
this.donationPageController = new DonationPageController(this);
this.pageController = new PageController(this);
}

public void setCurrentUser(User user) {
this.currentUser = user;
public PageController getPageController() {
return this.pageController;
}

public User getCurrentUser() {
return this.currentUser;
}

public void logout() {
currentUser = null;
showLoginPage();
}
// public void setCurrentUser(User user) {
// this.currentUser = user;
// }
//
// public User getCurrentUser() {
// return this.currentUser;
// }
//
// public void logout() {
// currentUser = null;
// showLoginPage();
// }

public MainView getMainView() {
return view;
}

public void showHomePage() {
view.showHomePage(homePageController, headerController);
view.showHomePage();
}

public void showLoginPage() {
Expand All @@ -56,11 +48,11 @@ public void showPaymentCompletePage() {
view.showPaymentCompletePage();
}
public void showBrowsePage() {
view.showBrowsePage(browsePageController, browseCardController, headerController);
view.showBrowsePage();
}

public void showOrganizationPage() {
view.showOrganizationPage(organizationPageController, headerController);
view.showOrganizationPage();
}

public void showDonationPage() {
Expand Down

This file was deleted.

66 changes: 66 additions & 0 deletions src/main/java/edu/group5/app/control/PageController.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
package edu.group5.app.control;

public class PageController {
private final MainController controller;

public PageController(MainController controller) {
this.controller = controller;
}

public void handleHomeBtn() {
System.out.println("Home button pressed");
controller.showHomePage();
}

public void handleCausesBtn() {
System.out.println("Causes button pressed");
controller.showBrowsePage();
}

public void handleAboutBtn() {
System.out.println("About button pressed");
}

public void handleProfileBtn() {
System.out.println("profileSection");
controller.showUserPage();
}

public void handleDonateToACauseBtn() {
System.out.println("Donate to a cause button pressed");
controller.showBrowsePage();
}

public void handleRegisterBtn() {
System.out.println("Sign in button pressed");
controller.showSignInPage();
}

public void handleDonateClick() {
controller.showDonationPage();
}


public void handleAboutUsBtn() {
System.out.println("About us button pressed");
controller.showAboutUsPage();
}

public void handleBrowseCardClick() {
controller.showDonationPage();
}

public void handleSignInBtn() {
System.out.println("Sign in button pressed");
controller.showHomePage();
}
public void handleLoginBtn() {
System.out.println("Back to login button pressed");
controller.showLoginPage();
}

public void handleDonationBtn() {
System.out.println("Donating");
controller.showPaymentCompletePage();
}
}
17 changes: 0 additions & 17 deletions src/main/java/edu/group5/app/control/SignInPageController.java

This file was deleted.

This file was deleted.

This file was deleted.

6 changes: 3 additions & 3 deletions src/main/java/edu/group5/app/view/Header.java
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
package edu.group5.app.view;

import edu.group5.app.control.HeaderController;
import edu.group5.app.control.PageController;
import javafx.geometry.Pos;
import javafx.scene.control.Button;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.*;

public class Header extends BorderPane {
private final HeaderController controller;
private final PageController controller;

public Header(HeaderController controller) {
public Header(PageController controller) {
this.controller = controller;
getStylesheets().add(getClass().getResource("/header/header.css").toExternalForm());
setId("header");
Expand Down
Loading

0 comments on commit 050f592

Please sign in to comment.