From cb285cbfddfc0b633d6b8cdb4dc0d2bd2b8b51ef Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Thu, 05 Jan 2012 17:34:05 -0500 Subject: [PATCH] Fixed bug in receive hook for repositories in subfolders --- src/com/gitblit/wicket/panels/BranchesPanel.java | 34 ++++++++++++++++++++++++++-------- 1 files changed, 26 insertions(+), 8 deletions(-) diff --git a/src/com/gitblit/wicket/panels/BranchesPanel.java b/src/com/gitblit/wicket/panels/BranchesPanel.java index 302b48d..6eb4019 100644 --- a/src/com/gitblit/wicket/panels/BranchesPanel.java +++ b/src/com/gitblit/wicket/panels/BranchesPanel.java @@ -27,9 +27,9 @@ import org.apache.wicket.markup.repeater.data.DataView; import org.apache.wicket.markup.repeater.data.ListDataProvider; import org.apache.wicket.model.StringResourceModel; -import org.eclipse.jgit.lib.Constants; import org.eclipse.jgit.lib.Repository; +import com.gitblit.Constants; import com.gitblit.SyndicationServlet; import com.gitblit.models.RefModel; import com.gitblit.models.RepositoryModel; @@ -37,8 +37,10 @@ import com.gitblit.utils.StringUtils; import com.gitblit.wicket.WicketUtils; import com.gitblit.wicket.pages.BranchesPage; +import com.gitblit.wicket.pages.CommitPage; import com.gitblit.wicket.pages.LogPage; import com.gitblit.wicket.pages.MetricsPage; +import com.gitblit.wicket.pages.SearchPage; import com.gitblit.wicket.pages.SummaryPage; import com.gitblit.wicket.pages.TreePage; @@ -90,10 +92,23 @@ entry.displayName, 28), LogPage.class, WicketUtils.newObjectParameter( model.name, entry.getName()))); - // only show branch type on the branches page - boolean remote = entry.getName().startsWith(Constants.R_REMOTES); - item.add(new Label("branchType", remote ? getString("gb.remote") - : getString("gb.local")).setVisible(maxCount <= 0)); + String author = entry.getAuthorIdent().getName(); + LinkPanel authorLink = new LinkPanel("branchAuthor", "list", author, + SearchPage.class, WicketUtils.newSearchParameter(model.name, + entry.getName(), author, Constants.SearchType.AUTHOR)); + setPersonSearchTooltip(authorLink, author, Constants.SearchType.AUTHOR); + item.add(authorLink); + + // short message + String shortMessage = entry.getShortMessage(); + String trimmedMessage = StringUtils.trimShortLog(shortMessage); + LinkPanel shortlog = new LinkPanel("branchLog", "list subject", trimmedMessage, + CommitPage.class, WicketUtils.newObjectParameter(model.name, + entry.getName())); + if (!shortMessage.equals(trimmedMessage)) { + WicketUtils.setHtmlTooltip(shortlog, shortMessage); + } + item.add(shortlog); if (maxCount <= 0) { Fragment fragment = new Fragment("branchLinks", "branchPageLinks", this); @@ -103,8 +118,9 @@ .newObjectParameter(model.name, entry.getName()))); fragment.add(new BookmarkablePageLink<Void>("metrics", MetricsPage.class, WicketUtils.newObjectParameter(model.name, entry.getName()))); - fragment.add(new ExternalLink("syndication", SyndicationServlet.asLink(getRequest() - .getRelativePathPrefixToContextRoot(), model.name, entry.getName(), 0))); + fragment.add(new ExternalLink("syndication", SyndicationServlet.asLink( + getRequest().getRelativePathPrefixToContextRoot(), model.name, + entry.getName(), 0))); item.add(fragment); } else { Fragment fragment = new Fragment("branchLinks", "branchPanelLinks", this); @@ -126,7 +142,9 @@ this, null), BranchesPage.class, WicketUtils.newRepositoryParameter(model.name))); } // We always have 1 branch - hasBranches = branches.size() > 1; + hasBranches = (branches.size() > 1) + || ((branches.size() == 1) && !branches.get(0).displayName + .equalsIgnoreCase("master")); } public BranchesPanel hideIfEmpty() { -- Gitblit v1.9.1