From 5030bb4f66fc5b47582436bfeec39e1ebd9688d7 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Wed, 15 May 2013 16:00:11 -0400
Subject: [PATCH] Include username in push log, along with display name and email address

---
 src/main/java/com/gitblit/utils/PushLogUtils.java |   24 ++++++++++++++++++++----
 1 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/gitblit/utils/PushLogUtils.java b/src/main/java/com/gitblit/utils/PushLogUtils.java
index 665533b..5b06506 100644
--- a/src/main/java/com/gitblit/utils/PushLogUtils.java
+++ b/src/main/java/com/gitblit/utils/PushLogUtils.java
@@ -132,8 +132,9 @@
 				DirCache index = createIndex(repository, headId, commands);
 				ObjectId indexTreeId = index.writeTree(odi);
 
-				PersonIdent ident = new PersonIdent(user.getDisplayName(), 
-						user.emailAddress == null ? user.username:user.emailAddress);
+				PersonIdent ident = 
+						new PersonIdent(MessageFormat.format("{0}/{1}", user.getDisplayName(), user.username),
+						user.emailAddress == null ? user.username : user.emailAddress);
 
 				// Create a commit object
 				CommitBuilder commit = new CommitBuilder();
@@ -312,9 +313,24 @@
 				// skip gitblit/internal commits
 				continue;
 			}
+
+			String name = push.getAuthorIdent().getName();
+			String username;
+			String displayname;
+			if (name.indexOf('/') > -1) {
+				int slash = name.indexOf('/');
+				displayname = name.substring(0, slash);
+				username = name.substring(slash + 1);
+			} else {
+				displayname = name;
+				username = push.getAuthorIdent().getEmailAddress();
+			}
+			
+			UserModel user = new UserModel(username);
+			user.displayName = displayname;
+			user.emailAddress = push.getAuthorIdent().getEmailAddress();
+			
 			Date date = push.getAuthorIdent().getWhen();
-			UserModel user = new UserModel(push.getAuthorIdent().getEmailAddress());
-			user.displayName = push.getAuthorIdent().getName();
 			PushLogEntry log = new PushLogEntry(repositoryName, date, user);
 			list.add(log);
 			List<PathChangeModel> changedRefs = JGitUtils.getFilesInCommit(repository, push);

--
Gitblit v1.9.1