From 80b000534188e4cef93475aefd3e6b658419ed26 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Mon, 17 Jun 2013 16:41:47 -0400
Subject: [PATCH] Strike-through missing owners on summary/overview page

---
 src/main/java/com/gitblit/wicket/pages/OverviewPage.java  |    8 ++++++--
 src/main/java/com/gitblit/wicket/pages/SummaryPage.java   |    8 ++++++--
 src/main/java/com/gitblit/wicket/GitBlitWebApp.properties |    3 ++-
 3 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/gitblit/wicket/GitBlitWebApp.properties b/src/main/java/com/gitblit/wicket/GitBlitWebApp.properties
index 0383ee4..2e17e60 100644
--- a/src/main/java/com/gitblit/wicket/GitBlitWebApp.properties
+++ b/src/main/java/com/gitblit/wicket/GitBlitWebApp.properties
@@ -491,4 +491,5 @@
 gb.noActivity = there has been no recent commit activity
 gb.findSomeRepositories = find some repositories
 gb.metricAuthorExclusions = author metric exclusions
-gb.myDashboard = my dashboard
\ No newline at end of file
+gb.myDashboard = my dashboard
+gb.failedToFindAccount = failed to find user account ''{0}''
\ No newline at end of file
diff --git a/src/main/java/com/gitblit/wicket/pages/OverviewPage.java b/src/main/java/com/gitblit/wicket/pages/OverviewPage.java
index 6fd3891..42d20c5 100644
--- a/src/main/java/com/gitblit/wicket/pages/OverviewPage.java
+++ b/src/main/java/com/gitblit/wicket/pages/OverviewPage.java
@@ -78,12 +78,16 @@
 			private static final long serialVersionUID = 1L;
 			int counter = 0;
 			public void populateItem(final Item<String> item) {
-				UserModel ownerModel = GitBlit.self().getUserModel(item.getModelObject());
+				String ownername = item.getModelObject();
+				UserModel ownerModel = GitBlit.self().getUserModel(ownername);
 				if (ownerModel != null) {
 					item.add(new LinkPanel("owner", null, ownerModel.getDisplayName(), UserPage.class,
 							WicketUtils.newUsernameParameter(ownerModel.username)).setRenderBodyOnly(true));
 				} else {
-					item.add(new Label("owner").setVisible(false));
+					Label owner = new Label("owner", ownername);
+					WicketUtils.setCssStyle(owner, "text-decoration: line-through;");
+					WicketUtils.setHtmlTooltip(owner,  MessageFormat.format(getString("gb.failedToFindAccount"), ownername));
+					item.add(owner);
 				}
 				counter++;
 				item.add(new Label("comma", ",").setVisible(counter < owners.size()));
diff --git a/src/main/java/com/gitblit/wicket/pages/SummaryPage.java b/src/main/java/com/gitblit/wicket/pages/SummaryPage.java
index d4ce0f0..1934682 100644
--- a/src/main/java/com/gitblit/wicket/pages/SummaryPage.java
+++ b/src/main/java/com/gitblit/wicket/pages/SummaryPage.java
@@ -96,12 +96,16 @@
 			private static final long serialVersionUID = 1L;
 			int counter = 0;
 			public void populateItem(final Item<String> item) {
-				UserModel ownerModel = GitBlit.self().getUserModel(item.getModelObject());
+				String ownername = item.getModelObject();
+				UserModel ownerModel = GitBlit.self().getUserModel(ownername);
 				if (ownerModel != null) {
 					item.add(new LinkPanel("owner", null, ownerModel.getDisplayName(), UserPage.class,
 							WicketUtils.newUsernameParameter(ownerModel.username)).setRenderBodyOnly(true));
 				} else {
-					item.add(new Label("owner").setVisible(false));
+					Label owner = new Label("owner", ownername);
+					WicketUtils.setCssStyle(owner, "text-decoration: line-through;");
+					WicketUtils.setHtmlTooltip(owner,  MessageFormat.format(getString("gb.failedToFindAccount"), ownername));
+					item.add(owner);
 				}
 				counter++;
 				item.add(new Label("comma", ",").setVisible(counter < owners.size()));

--
Gitblit v1.9.1