From 698678268f53067c239a11e928dfd16761a2f9f7 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Fri, 08 Apr 2011 17:17:28 -0400
Subject: [PATCH] created panels for logs, tags, and branches.

---
 src/com/gitblit/wicket/panels/PathBreadcrumbsPanel.java |   31 ++++++++++++++++---------------
 1 files changed, 16 insertions(+), 15 deletions(-)

diff --git a/src/com/gitblit/wicket/panels/PathBreadcrumbsPanel.java b/src/com/gitblit/wicket/panels/PathBreadcrumbsPanel.java
index 5ce356a..d27133c 100644
--- a/src/com/gitblit/wicket/panels/PathBreadcrumbsPanel.java
+++ b/src/com/gitblit/wicket/panels/PathBreadcrumbsPanel.java
@@ -4,7 +4,6 @@
 import java.util.ArrayList;
 import java.util.List;
 
-import org.apache.wicket.PageParameters;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.panel.Panel;
 import org.apache.wicket.markup.repeater.Item;
@@ -12,8 +11,8 @@
 import org.apache.wicket.markup.repeater.data.ListDataProvider;
 
 import com.gitblit.wicket.LinkPanel;
+import com.gitblit.wicket.WicketUtils;
 import com.gitblit.wicket.pages.TreePage;
-
 
 public class PathBreadcrumbsPanel extends Panel {
 
@@ -26,14 +25,16 @@
 		List<BreadCrumb> crumbs = new ArrayList<BreadCrumb>();
 		crumbs.add(new BreadCrumb("[" + repositoryName + "]", ROOT, false));
 
-		String[] paths = pathName.split("/");
-		StringBuilder sb = new StringBuilder();
-		
-		for (int i = 0; i < paths.length; i++) {
-			String path = paths[i];
-			sb.append(path);
-			crumbs.add(new BreadCrumb(path, sb.toString(), (i == (paths.length - 1))));
-			sb.append("/");
+		if (pathName != null && pathName.length() > 0) {
+			String[] paths = pathName.split("/");
+			StringBuilder sb = new StringBuilder();
+
+			for (int i = 0; i < paths.length; i++) {
+				String path = paths[i];
+				sb.append(path);
+				crumbs.add(new BreadCrumb(path, sb.toString(), (i == (paths.length - 1))));
+				sb.append("/");
+			}
 		}
 
 		ListDataProvider<BreadCrumb> crumbsDp = new ListDataProvider<BreadCrumb>(crumbs);
@@ -48,21 +49,21 @@
 					parameters += ",f=" + path;
 				}
 
-				item.add(new LinkPanel("pathLink", null, entry.name, TreePage.class, new PageParameters(parameters)));
-				item.add(new Label("pathSeparator", entry.isLeaf ? "":"/"));
+				item.add(new LinkPanel("pathLink", null, entry.name, TreePage.class, WicketUtils.newPathParameter(repositoryName, commitId, path)));
+				item.add(new Label("pathSeparator", entry.isLeaf ? "" : "/"));
 			}
 		};
 		add(pathsView);
 	}
 
 	private class BreadCrumb implements Serializable {
-		
+
 		private static final long serialVersionUID = 1L;
-		
+
 		final String name;
 		final String path;
 		final boolean isLeaf;
-		
+
 		BreadCrumb(String name, String path, boolean isLeaf) {
 			this.name = name;
 			this.path = path;

--
Gitblit v1.9.1