From 3daba4304dba818d54eb9b74d8d35df5aab8fee5 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Fri, 22 Nov 2013 10:36:05 -0500 Subject: [PATCH] Add pull request linking in changelog to generated documentation --- src/main/java/com/gitblit/wicket/pages/ForksPage.java | 29 +++++++++++++++++------------ 1 files changed, 17 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/gitblit/wicket/pages/ForksPage.java b/src/main/java/com/gitblit/wicket/pages/ForksPage.java index cc48387..5b5fcc0 100644 --- a/src/main/java/com/gitblit/wicket/pages/ForksPage.java +++ b/src/main/java/com/gitblit/wicket/pages/ForksPage.java @@ -42,22 +42,27 @@ public ForksPage(PageParameters params) { super(params); - + final RepositoryModel pageRepository = getRepositoryModel(); - + ForkModel root = GitBlit.self().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)); + 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)); if (pageRepository.equals(repository)) { @@ -88,7 +93,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) { @@ -106,7 +111,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"); @@ -115,7 +120,7 @@ } } }; - + add(forksList); } @@ -123,13 +128,13 @@ 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>(); list.add(new FlatFork(node.repository, level)); @@ -140,14 +145,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