From 4d5c3845f4ba7b2de73ab61354e15fd762a8398c Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Fri, 09 May 2014 10:17:51 -0400
Subject: [PATCH] Documentation

---
 src/main/java/com/gitblit/wicket/pages/TicketPage.java |   43 +++++++++++++++++++++++++------------------
 1 files changed, 25 insertions(+), 18 deletions(-)

diff --git a/src/main/java/com/gitblit/wicket/pages/TicketPage.java b/src/main/java/com/gitblit/wicket/pages/TicketPage.java
index e4bb41f..c066f24 100644
--- a/src/main/java/com/gitblit/wicket/pages/TicketPage.java
+++ b/src/main/java/com/gitblit/wicket/pages/TicketPage.java
@@ -86,6 +86,7 @@
 import com.gitblit.utils.StringUtils;
 import com.gitblit.utils.TimeUtils;
 import com.gitblit.wicket.GitBlitWebSession;
+import com.gitblit.wicket.TicketsUI;
 import com.gitblit.wicket.WicketUtils;
 import com.gitblit.wicket.panels.BasePanel.JavascriptTextPrompt;
 import com.gitblit.wicket.panels.CommentPanel;
@@ -102,7 +103,7 @@
  * @author James Moger
  *
  */
-public class TicketPage extends TicketBasePage {
+public class TicketPage extends RepositoryPage {
 
 	static final String NIL = "<nil>";
 
@@ -154,7 +155,7 @@
 		String href = urlFor(TicketsPage.class, params).toString();
 		add(new ExternalLink("ticketNumber", href, "#" + ticket.number));
 		Label headerStatus = new Label("headerStatus", ticket.status.toString());
-		WicketUtils.setCssClass(headerStatus, getLozengeClass(ticket.status, false));
+		WicketUtils.setCssClass(headerStatus, TicketsUI.getLozengeClass(ticket.status, false));
 		add(headerStatus);
 		add(new Label("ticketTitle", ticket.title));
 		if (currentPatchset == null) {
@@ -317,10 +318,10 @@
 		 * LARGE STATUS INDICATOR WITH ICON (DISCUSSION TAB->SIDE BAR)
 		 */
 		Fragment ticketStatus = new Fragment("ticketStatus", "ticketStatusFragment", this);
-		Label ticketIcon = getStateIcon("ticketIcon", ticket);
+		Label ticketIcon = TicketsUI.getStateIcon("ticketIcon", ticket);
 		ticketStatus.add(ticketIcon);
 		ticketStatus.add(new Label("ticketStatus", ticket.status.toString()));
-		WicketUtils.setCssClass(ticketStatus, getLozengeClass(ticket.status, false));
+		WicketUtils.setCssClass(ticketStatus, TicketsUI.getLozengeClass(ticket.status, false));
 		add(ticketStatus);
 
 
@@ -370,7 +371,7 @@
 								setResponsePage(TicketsPage.class, getPageParameters());
 							}
 						};
-						String css = getStatusClass(item.getModel().getObject());
+						String css = TicketsUI.getStatusClass(item.getModel().getObject());
 						WicketUtils.setCssClass(link, css);
 						item.add(link);
 					}
@@ -665,7 +666,7 @@
 						 */
 						Fragment frag = new Fragment("entry", "statusFragment", this);
 						Label status = new Label("statusChange", entry.getStatus().toString());
-						String css = getLozengeClass(entry.getStatus(), false);
+						String css = TicketsUI.getLozengeClass(entry.getStatus(), false);
 						WicketUtils.setCssClass(status, css);
 						for (IBehavior b : status.getBehaviors()) {
 							if (b instanceof SimpleAttributeModifier) {
@@ -774,12 +775,19 @@
 			Fragment patchsetFrag = new Fragment("patchset", "patchsetFragment", this);
 			patchsetFrag.add(new Label("commitsInPatchset", MessageFormat.format(getString("gb.commitsInPatchsetN"), currentPatchset.number)));
 
-			// current revision
-			MarkupContainer panel = createPatchsetPanel("panel", repository, user);
-			patchsetFrag.add(panel);
-			addUserAttributions(patchsetFrag, currentRevision, avatarWidth);
-			addUserAttributions(panel, currentRevision, 0);
-			addDateAttributions(panel, currentRevision);
+			patchsetFrag.add(createMergePanel(user, repository));
+
+			if (ticket.isOpen()) {
+				// current revision
+				MarkupContainer panel = createPatchsetPanel("panel", repository, user);
+				patchsetFrag.add(panel);
+				addUserAttributions(patchsetFrag, currentRevision, avatarWidth);
+				addUserAttributions(panel, currentRevision, 0);
+				addDateAttributions(panel, currentRevision);
+			} else {
+				// current revision
+				patchsetFrag.add(new Label("panel").setVisible(false));
+			}
 
 			// commits
 			List<RevCommit> commits = JGitUtils.getRevLog(getRepository(), currentPatchset.base, currentPatchset.tip);
@@ -929,7 +937,7 @@
 							case status:
 								// special handling for status
 								Status status = event.getStatus();
-								String css = getLozengeClass(status, true);
+								String css = TicketsUI.getLozengeClass(status, true);
 								value = String.format("<span class=\"%1$s\">%2$s</span>", css, status.toString());
 								break;
 							default:
@@ -1141,7 +1149,6 @@
 				WicketUtils.setChangeTypeCssClass(changeType, entry.changeType);
 				setChangeTypeTooltip(changeType, entry.changeType);
 				item.add(changeType);
-				item.add(new DiffStatPanel("diffStat", entry.insertions, entry.deletions, true));
 
 				boolean hasSubmodule = false;
 				String submodulePath = null;
@@ -1184,6 +1191,7 @@
 						item.add(new LinkPanel("pathName", "list", displayPath, BlobDiffPage.class,
 								WicketUtils.newPathParameter(repositoryName, currentPatchset.tip, path), true));
 					}
+					item.add(new DiffStatPanel("diffStat", entry.insertions, entry.deletions, true));
 				}
 
 				// quick links
@@ -1213,7 +1221,6 @@
 
 		addPtCheckoutInstructions(user, repository, panel);
 		addGitCheckoutInstructions(user, repository, panel);
-		panel.add(createMergePanel(user, repository));
 
 		return panel;
 	}
@@ -1519,14 +1526,14 @@
 		switch (type) {
 			case Rebase:
 			case Rebase_Squash:
-				typeCss = getLozengeClass(Status.Declined, false);
+				typeCss = TicketsUI.getLozengeClass(Status.Declined, false);
 				break;
 			case Squash:
 			case Amend:
-				typeCss = getLozengeClass(Status.On_Hold, false);
+				typeCss = TicketsUI.getLozengeClass(Status.On_Hold, false);
 				break;
 			case Proposal:
-				typeCss = getLozengeClass(Status.New, false);
+				typeCss = TicketsUI.getLozengeClass(Status.New, false);
 				break;
 			case FastForward:
 			default:

--
Gitblit v1.9.1