From 6c6fbf522e35d32924850ff1110680844c0382f4 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Fri, 06 Jan 2012 17:24:55 -0500
Subject: [PATCH] Strip trailing .git from displayed repository links, saves room, looks cleaner

---
 src/com/gitblit/utils/StringUtils.java               |    7 +++++++
 src/com/gitblit/wicket/panels/ActivityPanel.java     |    3 ++-
 src/com/gitblit/models/RepositoryModel.java          |    7 ++++++-
 src/com/gitblit/wicket/panels/RepositoriesPanel.java |    2 +-
 src/com/gitblit/wicket/pages/RepositoryPage.java     |    4 ++--
 5 files changed, 18 insertions(+), 5 deletions(-)

diff --git a/src/com/gitblit/models/RepositoryModel.java b/src/com/gitblit/models/RepositoryModel.java
index 7e33ab0..ad0adaa 100644
--- a/src/com/gitblit/models/RepositoryModel.java
+++ b/src/com/gitblit/models/RepositoryModel.java
@@ -59,6 +59,8 @@
 	public List<String> postReceiveScripts;
 	public List<String> mailingLists;
 
+	private String displayName;
+	
 	public RepositoryModel() {
 		this("", "", "", new Date(0));
 	}
@@ -75,7 +77,10 @@
 
 	@Override
 	public String toString() {
-		return name;
+		if (displayName == null) {
+			displayName = StringUtils.stripDotGit(name);
+		}
+		return displayName;
 	}
 
 	@Override
diff --git a/src/com/gitblit/utils/StringUtils.java b/src/com/gitblit/utils/StringUtils.java
index 1e47899..fc0bf42 100644
--- a/src/com/gitblit/utils/StringUtils.java
+++ b/src/com/gitblit/utils/StringUtils.java
@@ -488,4 +488,11 @@
 		String bs = Integer.toHexString((int) (b * 256));
 		return "#" + rs + gs + bs;
 	}
+	
+	public static String stripDotGit(String value) {
+		if (value.toLowerCase().endsWith(".git")) {
+			return value.substring(0, value.length() - 4);
+		}
+		return value;
+	}
 }
\ No newline at end of file
diff --git a/src/com/gitblit/wicket/pages/RepositoryPage.java b/src/com/gitblit/wicket/pages/RepositoryPage.java
index 85719f1..c84ccb0 100644
--- a/src/com/gitblit/wicket/pages/RepositoryPage.java
+++ b/src/com/gitblit/wicket/pages/RepositoryPage.java
@@ -141,8 +141,8 @@
 	}
 
 	@Override
-	protected void setupPage(String repositoryName, String pageName) {
-		add(new LinkPanel("repositoryName", null, repositoryName, SummaryPage.class,
+	protected void setupPage(String repositoryName, String pageName) {		
+		add(new LinkPanel("repositoryName", null, StringUtils.stripDotGit(repositoryName), SummaryPage.class,
 				WicketUtils.newRepositoryParameter(repositoryName)));
 		add(new Label("pageName", pageName));
 
diff --git a/src/com/gitblit/wicket/panels/ActivityPanel.java b/src/com/gitblit/wicket/panels/ActivityPanel.java
index 80621ae..7cafb82 100644
--- a/src/com/gitblit/wicket/panels/ActivityPanel.java
+++ b/src/com/gitblit/wicket/panels/ActivityPanel.java
@@ -94,8 +94,9 @@
 						fragment.add(authorLink);
 
 						// repository
+						String repoName = StringUtils.stripDotGit(commit.repository);
 						LinkPanel repositoryLink = new LinkPanel("repository", null,
-								commit.repository, SummaryPage.class,
+								repoName, SummaryPage.class,
 								WicketUtils.newRepositoryParameter(commit.repository), true);
 						WicketUtils.setCssBackground(repositoryLink, commit.repository);
 						fragment.add(repositoryLink);
diff --git a/src/com/gitblit/wicket/panels/RepositoriesPanel.java b/src/com/gitblit/wicket/panels/RepositoriesPanel.java
index 3a876bd..3b3db49 100644
--- a/src/com/gitblit/wicket/panels/RepositoriesPanel.java
+++ b/src/com/gitblit/wicket/panels/RepositoriesPanel.java
@@ -144,7 +144,7 @@
 				item.add(row);
 
 				// try to strip group name for less cluttered list
-				String repoName = entry.name;
+				String repoName = entry.toString();
 				if (!StringUtils.isEmpty(currGroupName) && (repoName.indexOf('/') > -1)) {
 					repoName = repoName.substring(currGroupName.length() + 1);
 				}

--
Gitblit v1.9.1