From a502d96a860456ec5e8c96761db70f7cabb74751 Mon Sep 17 00:00:00 2001 From: Paul Martin <paul@paulsputer.com> Date: Sat, 30 Apr 2016 04:19:14 -0400 Subject: [PATCH] Merge pull request #1073 from gitblit/1062-DocEditorUpdates --- src/main/java/com/gitblit/wicket/pages/LuceneSearchPage.java | 18 ++++++++++++------ 1 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/gitblit/wicket/pages/LuceneSearchPage.java b/src/main/java/com/gitblit/wicket/pages/LuceneSearchPage.java index ec82231..1d81061 100644 --- a/src/main/java/com/gitblit/wicket/pages/LuceneSearchPage.java +++ b/src/main/java/com/gitblit/wicket/pages/LuceneSearchPage.java @@ -17,14 +17,16 @@ import java.text.MessageFormat; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.apache.wicket.Component; import org.apache.wicket.PageParameters; import org.apache.wicket.markup.html.basic.Label; +import org.apache.wicket.markup.html.form.CheckBox; import org.apache.wicket.markup.html.form.ListMultipleChoice; import org.apache.wicket.markup.html.form.TextField; -import org.apache.wicket.markup.html.form.CheckBox; import org.apache.wicket.markup.html.panel.Fragment; import org.apache.wicket.markup.repeater.Item; import org.apache.wicket.markup.repeater.data.DataView; @@ -64,6 +66,8 @@ // default values ArrayList<String> repositories = new ArrayList<String>(); String query = ""; + boolean allRepos = false; + int page = 1; int pageSize = app().settings().getInteger(Keys.web.itemsPerPage, 50); @@ -89,8 +93,9 @@ List<String> list = StringUtils.getStringsFromValue(value); repositories.addAll(list); } - - if (params.containsKey("allrepos")) { + + allRepos = params.getAsBoolean("allrepos", false); + if (allRepos) { repositories.addAll(availableRepositories); } @@ -120,17 +125,18 @@ } // enforce user-accessible repository selections - ArrayList<String> searchRepositories = new ArrayList<String>(); + Set<String> uniqueRepositories = new LinkedHashSet<String>(); for (String selectedRepository : repositories) { if (availableRepositories.contains(selectedRepository)) { - searchRepositories.add(selectedRepository); + uniqueRepositories.add(selectedRepository); } } + ArrayList<String> searchRepositories = new ArrayList<String>(uniqueRepositories); // search form final Model<String> queryModel = new Model<String>(query); final Model<ArrayList<String>> repositoriesModel = new Model<ArrayList<String>>(searchRepositories); - final Model<Boolean> allreposModel = new Model<Boolean>(params != null && params.containsKey("allrepos")); + final Model<Boolean> allreposModel = new Model<Boolean>(allRepos); SessionlessForm<Void> form = new SessionlessForm<Void>("searchForm", getClass()) { private static final long serialVersionUID = 1L; -- Gitblit v1.9.1