diff --git a/code/features-search/random-websites/src/main/java/nu/marginalia/browse/model/BrowseResultSet.java b/code/features-search/random-websites/src/main/java/nu/marginalia/browse/model/BrowseResultSet.java index 75758593..5d6f7b91 100644 --- a/code/features-search/random-websites/src/main/java/nu/marginalia/browse/model/BrowseResultSet.java +++ b/code/features-search/random-websites/src/main/java/nu/marginalia/browse/model/BrowseResultSet.java @@ -1,12 +1,9 @@ package nu.marginalia.browse.model; -import lombok.AllArgsConstructor; -import lombok.Getter; +import java.util.Collection; -import java.util.List; - -@AllArgsConstructor -@Getter -public class BrowseResultSet { - public final List results; +public record BrowseResultSet(Collection results, String focusDomain) { + public BrowseResultSet(Collection results) { + this(results, ""); + } } diff --git a/code/services-core/search-service/src/main/java/nu/marginalia/search/command/commands/BrowseCommand.java b/code/services-core/search-service/src/main/java/nu/marginalia/search/command/commands/BrowseCommand.java index c5de9341..3124c599 100644 --- a/code/services-core/search-service/src/main/java/nu/marginalia/search/command/commands/BrowseCommand.java +++ b/code/services-core/search-service/src/main/java/nu/marginalia/search/command/commands/BrowseCommand.java @@ -62,7 +62,10 @@ public class BrowseCommand implements SearchCommandInterface { } return Optional.ofNullable(browseSite(ctx, query)) - .map(results -> browseResultsRenderer.render(results, Map.of("query", query, "profile", parameters.profileStr()))); + .map(results -> browseResultsRenderer.render(results, + Map.of("query", query, + "profile", parameters.profileStr(), + "focusDomain", results.focusDomain()))); } @@ -89,7 +92,7 @@ public class BrowseCommand implements SearchCommandInterface { } private BrowseResultSet getRandomEntries(int set) { - var results = randomDomains.getRandomDomains(25, blacklist, set); + List results = randomDomains.getRandomDomains(25, blacklist, set); results.removeIf(browseResultCleaner.shouldRemoveResultPredicate()); @@ -115,7 +118,7 @@ public class BrowseCommand implements SearchCommandInterface { // shuffle the items for a less repetitive experience shuffle(neighbors); - return new BrowseResultSet(neighbors); + return new BrowseResultSet(neighbors, word); } } diff --git a/code/services-core/search-service/src/main/resources/templates/search/browse-results.hdb b/code/services-core/search-service/src/main/resources/templates/search/browse-results.hdb index 147fcebf..d80d2956 100644 --- a/code/services-core/search-service/src/main/resources/templates/search/browse-results.hdb +++ b/code/services-core/search-service/src/main/resources/templates/search/browse-results.hdb @@ -36,7 +36,7 @@

Random Domains

- This list of domains is random. Refresh to get + This list of domains is random. Refresh to get new domains, or click Similar Domains to take the helm.