From a3bde69e9b3f3cc6212b0cd5fd7310b6a3301d8c Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Wed, 01 Jun 2011 20:47:05 -0400
Subject: [PATCH] Documentation.  Enforce ".git" suffix for created repositories.

---
 src/com/gitblit/wicket/panels/RefsPanel.java |   54 +++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 37 insertions(+), 17 deletions(-)

diff --git a/src/com/gitblit/wicket/panels/RefsPanel.java b/src/com/gitblit/wicket/panels/RefsPanel.java
index 5dec57f..33b1884 100644
--- a/src/com/gitblit/wicket/panels/RefsPanel.java
+++ b/src/com/gitblit/wicket/panels/RefsPanel.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2011 gitblit.com.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package com.gitblit.wicket.panels;
 
 import java.util.ArrayList;
@@ -6,58 +21,63 @@
 import java.util.Map;
 
 import org.apache.wicket.Component;
-import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.panel.Panel;
 import org.apache.wicket.markup.repeater.Item;
 import org.apache.wicket.markup.repeater.data.DataView;
 import org.apache.wicket.markup.repeater.data.ListDataProvider;
 import org.eclipse.jgit.lib.Constants;
 import org.eclipse.jgit.lib.ObjectId;
-import org.eclipse.jgit.lib.Repository;
 import org.eclipse.jgit.revwalk.RevCommit;
 
-import com.gitblit.utils.JGitUtils;
 import com.gitblit.wicket.WicketUtils;
-
+import com.gitblit.wicket.pages.CommitPage;
+import com.gitblit.wicket.pages.LogPage;
+import com.gitblit.wicket.pages.TagPage;
 
 public class RefsPanel extends Panel {
 
 	private static final long serialVersionUID = 1L;
 
-	public RefsPanel(String id, Repository r, RevCommit c) {
-		this(id, c, JGitUtils.getAllRefs(r));
-	}
-	
-	public RefsPanel(String id, RevCommit c, Map<ObjectId, List<String>> refs) {
+	public RefsPanel(String id, final String repositoryName, RevCommit c,
+			Map<ObjectId, List<String>> refs) {
 		super(id);
 		List<String> refNames = refs.get(c.getId());
 		if (refNames == null) {
 			refNames = new ArrayList<String>();
 		}
 		Collections.sort(refNames);
+		// refNames.remove(Constants.HEAD);
+
 		ListDataProvider<String> refsDp = new ListDataProvider<String>(refNames);
 		DataView<String> refsView = new DataView<String>("ref", refsDp) {
 			private static final long serialVersionUID = 1L;
+
 			public void populateItem(final Item<String> item) {
 				String entry = item.getModelObject();
 				Component c = null;
 				if (entry.startsWith(Constants.R_HEADS)) {
 					// local head
-					c = new Label("refName", entry.substring(Constants.R_HEADS.length()));
-					WicketUtils.setCssClass(c, "head");
+					c = new LinkPanel("refName", null, entry.substring(Constants.R_HEADS.length()),
+							LogPage.class, WicketUtils.newObjectParameter(repositoryName, entry));
+					WicketUtils.setCssClass(c, "headRef");
 				} else if (entry.startsWith(Constants.R_REMOTES)) {
 					// remote head
-					c = new Label("refName", entry.substring(Constants.R_REMOTES.length()));
-					WicketUtils.setCssClass(c, "ref");
+					c = new LinkPanel("refName", null,
+							entry.substring(Constants.R_REMOTES.length()), LogPage.class,
+							WicketUtils.newObjectParameter(repositoryName, entry));
+					WicketUtils.setCssClass(c, "remoteRef");
 				} else if (entry.startsWith(Constants.R_TAGS)) {
 					// tag
-					c = new Label("refName", entry.substring(Constants.R_TAGS.length()));
-					WicketUtils.setCssClass(c, "tag");
+					c = new LinkPanel("refName", null, entry.substring(Constants.R_TAGS.length()),
+							TagPage.class, WicketUtils.newObjectParameter(repositoryName, entry));
+					WicketUtils.setCssClass(c, "tagRef");
 				} else {
 					// other
-					c = new Label("refName", entry);					
+					c = new LinkPanel("refName", null, entry, CommitPage.class,
+							WicketUtils.newObjectParameter(repositoryName, entry));
+					WicketUtils.setCssClass(c, "otherRef");
 				}
-				WicketUtils.setHtmlTitle(c, entry);
+				WicketUtils.setHtmlTooltip(c, entry);
 				item.add(c);
 			}
 		};

--
Gitblit v1.9.1