From 6cc1d4cf3605719af3f9a37ee09cb02519be3571 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Mon, 19 Dec 2011 17:58:43 -0500 Subject: [PATCH] Server-side hook script selection. Documentation. --- src/com/gitblit/wicket/panels/RepositoriesPanel.java | 31 ++++++++++++++++++++++++------- 1 files changed, 24 insertions(+), 7 deletions(-) diff --git a/src/com/gitblit/wicket/panels/RepositoriesPanel.java b/src/com/gitblit/wicket/panels/RepositoriesPanel.java index d18d5bb..fc90316 100644 --- a/src/com/gitblit/wicket/panels/RepositoriesPanel.java +++ b/src/com/gitblit/wicket/panels/RepositoriesPanel.java @@ -51,7 +51,9 @@ import com.gitblit.utils.TimeUtils; import com.gitblit.wicket.GitBlitWebSession; import com.gitblit.wicket.WicketUtils; +import com.gitblit.wicket.pages.BasePage; import com.gitblit.wicket.pages.EditRepositoryPage; +import com.gitblit.wicket.pages.EmptyRepositoryPage; import com.gitblit.wicket.pages.SummaryPage; public class RepositoriesPanel extends BasePanel { @@ -120,6 +122,7 @@ } final String baseUrl = WicketUtils.getGitblitURL(getRequest()); + final boolean showSwatch = GitBlit.getBoolean(Keys.web.repositoryListSwatches, true); DataView<RepositoryModel> dataView = new DataView<RepositoryModel>("row", dp) { private static final long serialVersionUID = 1L; @@ -146,24 +149,38 @@ } Fragment row = new Fragment("rowContent", "repositoryRow", this); item.add(row); - + // try to strip group name for less cluttered list String repoName = entry.name; if (!StringUtils.isEmpty(currGroupName) && (repoName.indexOf('/') > -1)) { repoName = repoName.substring(currGroupName.length() + 1); } - - if (entry.hasCommits && linksActive) { + + // repository swatch + Label swatch = new Label("repositorySwatch", " "); + WicketUtils.setCssBackground(swatch, entry.name); + row.add(swatch); + swatch.setVisible(showSwatch); + + if (linksActive) { + Class<? extends BasePage> linkPage; + if (entry.hasCommits) { + // repository has content + linkPage = SummaryPage.class; + } else { + // new/empty repository OR proposed repository + linkPage = EmptyRepositoryPage.class; + } + PageParameters pp = WicketUtils.newRepositoryParameter(entry.name); - row.add(new LinkPanel("repositoryName", "list", repoName, SummaryPage.class, pp)); + row.add(new LinkPanel("repositoryName", "list", repoName, linkPage, pp)); row.add(new LinkPanel("repositoryDescription", "list", entry.description, - SummaryPage.class, pp)); + linkPage, pp)); } else { - // new/empty repository OR proposed repository + // no links like on a federation page row.add(new Label("repositoryName", repoName)); row.add(new Label("repositoryDescription", entry.description)); } - if (entry.hasCommits) { // Existing repository row.add(new Label("repositorySize", entry.size).setVisible(showSize)); -- Gitblit v1.9.1