From df75fa3a0961fc6a539209d5f13788d64b109a34 Mon Sep 17 00:00:00 2001
From: Florian Zschocke <florian.zschocke@cycos.com>
Date: Mon, 26 Aug 2013 06:30:53 -0400
Subject: [PATCH] Add new configuration setting 'git.userRepositoryPrefix'.

---
 src/main/java/com/gitblit/wicket/panels/RepositoriesPanel.java |   10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/gitblit/wicket/panels/RepositoriesPanel.java b/src/main/java/com/gitblit/wicket/panels/RepositoriesPanel.java
index 726af61..256cc64 100644
--- a/src/main/java/com/gitblit/wicket/panels/RepositoriesPanel.java
+++ b/src/main/java/com/gitblit/wicket/panels/RepositoriesPanel.java
@@ -50,6 +50,7 @@
 import com.gitblit.models.RepositoryModel;
 import com.gitblit.models.UserModel;
 import com.gitblit.utils.ArrayUtils;
+import com.gitblit.utils.ModelUtils;
 import com.gitblit.utils.StringUtils;
 import com.gitblit.wicket.GitBlitWebSession;
 import com.gitblit.wicket.WicketUtils;
@@ -132,7 +133,7 @@
 			for (String root : roots) {
 				List<RepositoryModel> subModels = groups.get(root);
 				ProjectModel project = GitBlit.self().getProjectModel(root);
-				GroupRepositoryModel group = new GroupRepositoryModel(project.name, subModels.size());
+				GroupRepositoryModel group = new GroupRepositoryModel(project == null ? root : project.name, subModels.size());
 				if (project != null) {
 					group.title = project.title;
 					group.description = project.description;
@@ -169,9 +170,9 @@
 					item.add(row);
 					
 					String name = groupRow.name;
-					if (name.charAt(0) == '~') {
+					if (name.startsWith(ModelUtils.getUserRepoPrefix())) {
 						// user page
-						String username = name.substring(1);
+						String username = ModelUtils.getUserNameFromRepoPath(name);
 						UserModel user = GitBlit.self().getUserModel(username);
 						row.add(new LinkPanel("groupName", null, (user == null ? username : user.getDisplayName()) + " (" + groupRow.count + ")", UserPage.class, WicketUtils.newUsernameParameter(username)));
 						row.add(new Label("groupDescription", getString("gb.personalRepositories")));
@@ -322,6 +323,9 @@
 				Label lastChangeLabel = new Label("repositoryLastChange", lastChange);
 				row.add(lastChangeLabel);
 				WicketUtils.setCssClass(lastChangeLabel, getTimeUtils().timeAgoCss(entry.lastChange));
+				if (!StringUtils.isEmpty(entry.lastChangeAuthor)) {
+					WicketUtils.setHtmlTooltip(lastChangeLabel, getString("gb.author") + ": " + entry.lastChangeAuthor);
+				}
 
 				boolean showOwner = user != null && entry.isOwner(user.username);
 				boolean myPersonalRepository = showOwner && entry.isUsersPersonalRepository(user.username);

--
Gitblit v1.9.1