From 73fba6ef98209406f1cf5f2ee00a9dc384b4a2fc Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Mon, 19 Mar 2012 23:11:11 -0400
Subject: [PATCH] Display fewer content fragments for blobs

---
 src/com/gitblit/wicket/pages/RepositoryPage.java |   19 ++++++++++++++-----
 1 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/src/com/gitblit/wicket/pages/RepositoryPage.java b/src/com/gitblit/wicket/pages/RepositoryPage.java
index 77918ea..cd3c8a2 100644
--- a/src/com/gitblit/wicket/pages/RepositoryPage.java
+++ b/src/com/gitblit/wicket/pages/RepositoryPage.java
@@ -44,6 +44,7 @@
 import com.gitblit.PagesServlet;
 import com.gitblit.SyndicationServlet;
 import com.gitblit.models.RepositoryModel;
+import com.gitblit.utils.ArrayUtils;
 import com.gitblit.utils.JGitUtils;
 import com.gitblit.utils.StringUtils;
 import com.gitblit.utils.TicgitUtils;
@@ -156,9 +157,11 @@
 		if (getRepositoryModel().isBare) {
 			add(new Label("workingCopy").setVisible(false));
 		} else {
+			Fragment fragment = new Fragment("workingCopy", "workingCopyFragment", this);
 			Label lbl = new Label("workingCopy", getString("gb.workingCopy"));
 			WicketUtils.setHtmlTooltip(lbl,  getString("gb.workingCopyWarning"));
-			add(lbl);
+			fragment.add(lbl);
+			add(fragment);
 		}
 
 		super.setupPage(repositoryName, pageName);
@@ -239,20 +242,20 @@
 				}
 			}
 			Fragment partial = new Fragment(wicketId, "partialPersonIdent", this);
-			LinkPanel link = new LinkPanel("personName", "list", value, SearchPage.class,
+			LinkPanel link = new LinkPanel("personName", "list", value, GitSearchPage.class,
 					WicketUtils.newSearchParameter(repositoryName, objectId, value, searchType));
 			setPersonSearchTooltip(link, value, searchType);
 			partial.add(link);
 			return partial;
 		} else {
 			Fragment fullPerson = new Fragment(wicketId, "fullPersonIdent", this);
-			LinkPanel nameLink = new LinkPanel("personName", "list", name, SearchPage.class,
+			LinkPanel nameLink = new LinkPanel("personName", "list", name, GitSearchPage.class,
 					WicketUtils.newSearchParameter(repositoryName, objectId, name, searchType));
 			setPersonSearchTooltip(nameLink, name, searchType);
 			fullPerson.add(nameLink);
 
 			LinkPanel addressLink = new LinkPanel("personAddress", "list", "<" + address + ">",
-					SearchPage.class, WicketUtils.newSearchParameter(repositoryName, objectId,
+					GitSearchPage.class, WicketUtils.newSearchParameter(repositoryName, objectId,
 							address, searchType));
 			setPersonSearchTooltip(addressLink, address, searchType);
 			fullPerson.add(addressLink);
@@ -355,7 +358,13 @@
 					break;
 				}
 			}
-			setResponsePage(SearchPage.class,
+			Class<? extends BasePage> searchPageClass = GitSearchPage.class;
+			RepositoryModel model = GitBlit.self().getRepositoryModel(repositoryName);
+			if (!ArrayUtils.isEmpty(model.indexedBranches)) {
+				// this repository is Lucene-indexed
+				searchPageClass = LuceneSearchPage.class;
+			}
+			setResponsePage(searchPageClass,
 					WicketUtils.newSearchParameter(repositoryName, null, searchString, searchType));
 		}
 	}

--
Gitblit v1.9.1