From a502d96a860456ec5e8c96761db70f7cabb74751 Mon Sep 17 00:00:00 2001
From: Paul Martin <paul@paulsputer.com>
Date: Sat, 30 Apr 2016 04:19:14 -0400
Subject: [PATCH] Merge pull request #1073 from gitblit/1062-DocEditorUpdates

---
 src/main/java/com/gitblit/wicket/pages/ForksPage.java |   39 +++++++++++++++++++++------------------
 1 files changed, 21 insertions(+), 18 deletions(-)

diff --git a/src/main/java/com/gitblit/wicket/pages/ForksPage.java b/src/main/java/com/gitblit/wicket/pages/ForksPage.java
index f59955e..045f5f7 100644
--- a/src/main/java/com/gitblit/wicket/pages/ForksPage.java
+++ b/src/main/java/com/gitblit/wicket/pages/ForksPage.java
@@ -27,7 +27,6 @@
 import org.apache.wicket.markup.repeater.data.ListDataProvider;
 import org.eclipse.jgit.lib.PersonIdent;
 
-import com.gitblit.GitBlit;
 import com.gitblit.Keys;
 import com.gitblit.models.ForkModel;
 import com.gitblit.models.RepositoryModel;
@@ -35,35 +34,36 @@
 import com.gitblit.utils.StringUtils;
 import com.gitblit.wicket.GitBlitWebSession;
 import com.gitblit.wicket.WicketUtils;
-import com.gitblit.wicket.panels.GravatarImage;
+import com.gitblit.wicket.panels.AvatarImage;
 import com.gitblit.wicket.panels.LinkPanel;
 
 public class ForksPage extends RepositoryPage {
 
 	public ForksPage(PageParameters params) {
 		super(params);
-		
+
 		final RepositoryModel pageRepository = getRepositoryModel();
-		
-		ForkModel root = GitBlit.self().getForkNetwork(pageRepository.name);
+
+		ForkModel root = app().repositories().getForkNetwork(pageRepository.name);
 		List<FlatFork> network = flatten(root);
-		
+
 		ListDataProvider<FlatFork> forksDp = new ListDataProvider<FlatFork>(network);
 		DataView<FlatFork> forksList = new DataView<FlatFork>("fork", forksDp) {
 			private static final long serialVersionUID = 1L;
 
+			@Override
 			public void populateItem(final Item<FlatFork> item) {
 				FlatFork fork = item.getModelObject();
 				RepositoryModel repository = fork.repository;
-				
+
 				if (repository.isPersonalRepository()) {
-					UserModel user = GitBlit.self().getUserModel(repository.projectPath.substring(1));
+					UserModel user = app().users().getUserModel(repository.projectPath.substring(1));
 					if (user == null) {
 						// user account no longer exists
 						user = new UserModel(repository.projectPath.substring(1));
 					}
 					PersonIdent ident = new PersonIdent(user.getDisplayName(), user.emailAddress == null ? user.getDisplayName() : user.emailAddress);
-					item.add(new GravatarImage("anAvatar", ident, 20));
+					item.add(new AvatarImage("anAvatar", ident, 20));
 					if (pageRepository.equals(repository)) {
 						// do not link to self
 						item.add(new Label("aProject", user.getDisplayName()));
@@ -83,7 +83,7 @@
 					item.add(swatch);
 					String projectName = repository.projectPath;
 					if (StringUtils.isEmpty(projectName)) {
-						projectName = GitBlit.getString(Keys.web.repositoryRootGroupName, "main");
+						projectName = app().settings().getString(Keys.web.repositoryRootGroupName, "main");
 					}
 					if (pageRepository.equals(repository)) {
 						// do not link to self
@@ -92,7 +92,7 @@
 						item.add(new LinkPanel("aProject", null, projectName, ProjectPage.class, WicketUtils.newProjectParameter(projectName)));
 					}
 				}
-				
+
 				String repo = StringUtils.getLastPathElement(repository.name);
 				UserModel user = GitBlitWebSession.get().getUser();
 				if (user == null) {
@@ -110,7 +110,7 @@
 					item.add(new Label("aFork", repo));
 					item.add(new Label("lastChange").setVisible(false));
 				}
-				
+
 				WicketUtils.setCssStyle(item, "margin-left:" + (32*fork.level) + "px;");
 				if (fork.level == 0) {
 					WicketUtils.setCssClass(item, "forkSource");
@@ -119,7 +119,7 @@
 				}
 			}
 		};
-		
+
 		add(forksList);
 	}
 
@@ -127,15 +127,18 @@
 	protected String getPageName() {
 		return getString("gb.forks");
 	}
-	
+
 	protected List<FlatFork> flatten(ForkModel root) {
 		List<FlatFork> list = new ArrayList<FlatFork>();
 		list.addAll(flatten(root, 0));
 		return list;
 	}
-	
+
 	protected List<FlatFork> flatten(ForkModel node, int level) {
 		List<FlatFork> list = new ArrayList<FlatFork>();
+		if (node == null) {
+			return list;
+		}
 		list.add(new FlatFork(node.repository, level));
 		if (!node.isLeaf()) {
 			for (ForkModel fork : node.forks) {
@@ -144,14 +147,14 @@
 		}
 		return list;
 	}
-	
+
 	private class FlatFork implements Serializable {
-		
+
 		private static final long serialVersionUID = 1L;
 
 		public final RepositoryModel repository;
 		public final int level;
-		
+
 		public FlatFork(RepositoryModel repository, int level) {
 			this.repository = repository;
 			this.level = level;

--
Gitblit v1.9.1