From 27ae9095639bb228a1b7ff86a3ebe4264abf05be Mon Sep 17 00:00:00 2001
From: mschaefers <mschaefers@scoop-gmbh.de>
Date: Thu, 29 Nov 2012 12:33:09 -0500
Subject: [PATCH] feature: when using LdapUserService one can configure Gitblit to fetch all users from ldap that can possibly login. This allows to see newly generated LDAP users instantly in Gitblit. By now an LDAP user had to log in once to appear in GitBlit.

---
 src/com/gitblit/wicket/panels/ActivityPanel.java |   55 +++++++++++++++++++++++++++----------------------------
 1 files changed, 27 insertions(+), 28 deletions(-)

diff --git a/src/com/gitblit/wicket/panels/ActivityPanel.java b/src/com/gitblit/wicket/panels/ActivityPanel.java
index 250b58d..9a123d8 100644
--- a/src/com/gitblit/wicket/panels/ActivityPanel.java
+++ b/src/com/gitblit/wicket/panels/ActivityPanel.java
@@ -19,20 +19,21 @@
 import java.util.List;
 
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
-import org.apache.wicket.markup.html.panel.Fragment;
 import org.apache.wicket.markup.repeater.Item;
 import org.apache.wicket.markup.repeater.data.DataView;
 import org.apache.wicket.markup.repeater.data.ListDataProvider;
 
 import com.gitblit.Constants;
+import com.gitblit.GitBlit;
+import com.gitblit.Keys;
 import com.gitblit.models.Activity;
 import com.gitblit.models.Activity.RepositoryCommit;
 import com.gitblit.utils.StringUtils;
 import com.gitblit.wicket.WicketUtils;
 import com.gitblit.wicket.pages.CommitDiffPage;
 import com.gitblit.wicket.pages.CommitPage;
-import com.gitblit.wicket.pages.LogPage;
 import com.gitblit.wicket.pages.GitSearchPage;
+import com.gitblit.wicket.pages.LogPage;
 import com.gitblit.wicket.pages.SummaryPage;
 import com.gitblit.wicket.pages.TreePage;
 
@@ -51,36 +52,36 @@
 
 		Collections.sort(recentActivity);
 		
+		final int shortHashLen = GitBlit.getInteger(Keys.web.shortCommitIdLength, 6);
 		DataView<Activity> activityView = new DataView<Activity>("activity",
 				new ListDataProvider<Activity>(recentActivity)) {
 			private static final long serialVersionUID = 1L;
 
-			public void populateItem(final Item<Activity> item) {
-				final Activity entry = item.getModelObject();
-				item.add(WicketUtils.createDatestampLabel("title", entry.startDate, getTimeZone()));
+			public void populateItem(final Item<Activity> activityItem) {
+				final Activity entry = activityItem.getModelObject();
+				activityItem.add(WicketUtils.createDatestampLabel("title", entry.startDate, getTimeZone(), getTimeUtils()));
 
 				// display the commits in chronological order
-				DataView<RepositoryCommit> commits = new DataView<RepositoryCommit>("commits",
+				DataView<RepositoryCommit> commits = new DataView<RepositoryCommit>("commit",
 						new ListDataProvider<RepositoryCommit>(entry.getCommits())) {
 					private static final long serialVersionUID = 1L;
 
-					public void populateItem(final Item<RepositoryCommit> item) {
-						final RepositoryCommit commit = item.getModelObject();
-						Fragment fragment = new Fragment("commit", "commitFragment", this);
+					public void populateItem(final Item<RepositoryCommit> commitItem) {
+						final RepositoryCommit commit = commitItem.getModelObject();
 
 						// commit time of day
-						fragment.add(WicketUtils.createTimeLabel("time", commit.getCommitterIdent()
-								.getWhen(), getTimeZone()));
+						commitItem.add(WicketUtils.createTimeLabel("time", commit.getCommitterIdent()
+								.getWhen(), getTimeZone(), getTimeUtils()));
 
 						// avatar
-						fragment.add(new GravatarImage("avatar", commit.getAuthorIdent(), 36));
+						commitItem.add(new GravatarImage("avatar", commit.getAuthorIdent(), 40));
 
 						// merge icon
 						if (commit.getParentCount() > 1) {
-							fragment.add(WicketUtils.newImage("commitIcon",
+							commitItem.add(WicketUtils.newImage("commitIcon",
 									"commit_merge_16x16.png"));
 						} else {
-							fragment.add(WicketUtils.newBlankImage("commitIcon"));
+							commitItem.add(WicketUtils.newBlankImage("commitIcon").setVisible(false));
 						}
 
 						// author search link
@@ -89,7 +90,7 @@
 								GitSearchPage.class, WicketUtils.newSearchParameter(commit.repository,
 										commit.getName(), author, Constants.SearchType.AUTHOR), true);
 						setPersonSearchTooltip(authorLink, author, Constants.SearchType.AUTHOR);
-						fragment.add(authorLink);
+						commitItem.add(authorLink);
 
 						// repository
 						String repoName = StringUtils.stripDotGit(commit.repository);
@@ -97,19 +98,19 @@
 								repoName, SummaryPage.class,
 								WicketUtils.newRepositoryParameter(commit.repository), true);
 						WicketUtils.setCssBackground(repositoryLink, repoName);
-						fragment.add(repositoryLink);
+						commitItem.add(repositoryLink);
 
 						// repository branch
 						LinkPanel branchLink = new LinkPanel("branch", "list", commit.branch,
 								LogPage.class, WicketUtils.newObjectParameter(commit.repository,
 										commit.branch), true);
 						WicketUtils.setCssStyle(branchLink, "color: #008000;");
-						fragment.add(branchLink);
+						commitItem.add(branchLink);
 
 						LinkPanel commitid = new LinkPanel("commitid", "list subject",
-								commit.getShortName(), CommitPage.class,
+								commit.getName().substring(0,  shortHashLen), CommitPage.class,
 								WicketUtils.newObjectParameter(commit.repository, commit.getName()), true);
-						fragment.add(commitid);
+						commitItem.add(commitid);
 
 						// message/commit link
 						String shortMessage = commit.getShortMessage();
@@ -125,25 +126,23 @@
 						if (!shortMessage.equals(trimmedMessage)) {
 							WicketUtils.setHtmlTooltip(shortlog, shortMessage);
 						}
-						fragment.add(shortlog);
+						commitItem.add(shortlog);
 
 						// refs
-						fragment.add(new RefsPanel("commitRefs", commit.repository, commit
+						commitItem.add(new RefsPanel("commitRefs", commit.repository, commit
 								.getRefs()));
 
 						// view, diff, tree links
-						fragment.add(new BookmarkablePageLink<Void>("view", CommitPage.class,
+						commitItem.add(new BookmarkablePageLink<Void>("view", CommitPage.class,
 								WicketUtils.newObjectParameter(commit.repository, commit.getName())));
-						fragment.add(new BookmarkablePageLink<Void>("diff", CommitDiffPage.class,
+						commitItem.add(new BookmarkablePageLink<Void>("diff", CommitDiffPage.class,
 								WicketUtils.newObjectParameter(commit.repository, commit.getName()))
 								.setEnabled(commit.getParentCount() > 0));
-						fragment.add(new BookmarkablePageLink<Void>("tree", TreePage.class,
-								WicketUtils.newObjectParameter(commit.repository, commit.getName())));
-
-						item.add(fragment);
+						commitItem.add(new BookmarkablePageLink<Void>("tree", TreePage.class,
+								WicketUtils.newObjectParameter(commit.repository, commit.getName())));						
 					}
 				};
-				item.add(commits);
+				activityItem.add(commits);
 			}
 		};
 		add(activityView);

--
Gitblit v1.9.1