Skip to content

Commit

Permalink
feat: added images to BrowsePageView
Browse files Browse the repository at this point in the history
  • Loading branch information
MatheaGjerde committed Mar 24, 2026
1 parent 04c92c4 commit 27aff0f
Showing 1 changed file with 26 additions and 9 deletions.
35 changes: 26 additions & 9 deletions src/main/java/edu/group5/app/view/browsepage/BrowsePageView.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import edu.group5.app.control.MainController;
import edu.group5.app.model.organization.Organization;
import edu.group5.app.view.Header;
import javafx.application.Platform;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.control.ScrollPane;
Expand Down Expand Up @@ -75,8 +76,26 @@ private GridPane createOrganizationSection(String searchTerm) {
grid.setStyle("-fx-padding: 0;");
grid.setMaxWidth(Double.MAX_VALUE);

// Store reference for later updates
if (organizationGrid == null) {
organizationGrid = grid;
}

if (allOrganizations == null) {
allOrganizations = mainController.getOrganizationService().getTrustedOrganizations();

//Show loading text while organizations and logos are fetched
grid.add(new javafx.scene.control.Label("Loading..."), 0, 0);

//Fetch trusted organizations with logos asynchronously (runs in background)
mainController.getOrganizationService()
.getTrustedOrganizationsWithLogosAsync()
.thenAccept(orgs -> {
this.allOrganizations = orgs;

// Update UI when data is ready
Platform.runLater(() -> updateOrganizationGrid(""));
});
return grid;
}

// Filter organizations by search term
Expand All @@ -86,13 +105,16 @@ private GridPane createOrganizationSection(String searchTerm) {
int row = 0;

for (Organization org : organizations.values()) {
String defaultImg = "/browsepage/images/children_of_shambala.png";
BrowseCard card = new BrowseCard(orgController, org, defaultImg);
//Adds default text if organization does not have any
String img = (org.logoUrl() != null && !org.logoUrl().isBlank())
? org.logoUrl()
: null;

BrowseCard card = new BrowseCard(orgController, org, img);

grid.add(card, column, row);

column++;

if (column == 4) {
column = 0;
row++;
Expand All @@ -105,11 +127,6 @@ private GridPane createOrganizationSection(String searchTerm) {
grid.getColumnConstraints().add(col);
}

// Store reference for later updates
if (organizationGrid == null) {
organizationGrid = grid;
}

return grid;
}

Expand Down

0 comments on commit 27aff0f

Please sign in to comment.