From b01c943a26ba0eba27cc83a5740a6387a27a2151 Mon Sep 17 00:00:00 2001
From: Jeroen Baten <jeroen@jeroenbaten.nl>
Date: Sat, 08 Mar 2014 02:40:02 -0500
Subject: [PATCH] dutch translations. why the original shows up, I have no idea

---
 src/main/java/com/gitblit/wicket/pages/TicketPage.java |   53 +++++++++++++++++++++++++++++++++++------------------
 1 files changed, 35 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 5e0e682..7b492dc 100644
--- a/src/main/java/com/gitblit/wicket/pages/TicketPage.java
+++ b/src/main/java/com/gitblit/wicket/pages/TicketPage.java
@@ -731,15 +731,36 @@
 		 *  PATCHSET TAB
 		 */
 		if (currentPatchset == null) {
-			// no patchset yet, show propose fragment
-			String repoUrl = getRepositoryUrl(user, repository);
-			Fragment changeIdFrag = new Fragment("patchset", "proposeFragment", this);
-			changeIdFrag.add(new Label("proposeInstructions", MarkdownUtils.transformMarkdown(getString("gb.proposeInstructions"))).setEscapeModelStrings(false));
-			changeIdFrag.add(new Label("ptWorkflow", MessageFormat.format(getString("gb.proposeWith"), "Barnum")));
-			changeIdFrag.add(new Label("ptWorkflowSteps", getProposeWorkflow("propose_pt.md", repoUrl, ticket.number)).setEscapeModelStrings(false));
-			changeIdFrag.add(new Label("gitWorkflow", MessageFormat.format(getString("gb.proposeWith"), "Git")));
-			changeIdFrag.add(new Label("gitWorkflowSteps", getProposeWorkflow("propose_git.md", repoUrl, ticket.number)).setEscapeModelStrings(false));
-			add(changeIdFrag);
+			// no patchset available
+			if (ticket.isOpen() && app().tickets().isAcceptingNewPatchsets(repository)) {
+				// ticket & repo will accept a proposal patchset
+				// show the instructions for proposing a patchset
+				String repoUrl = getRepositoryUrl(user, repository);
+				Fragment changeIdFrag = new Fragment("patchset", "proposeFragment", this);
+				changeIdFrag.add(new Label("proposeInstructions", MarkdownUtils.transformMarkdown(getString("gb.proposeInstructions"))).setEscapeModelStrings(false));
+				changeIdFrag.add(new Label("ptWorkflow", MessageFormat.format(getString("gb.proposeWith"), "Barnum")));
+				changeIdFrag.add(new Label("ptWorkflowSteps", getProposeWorkflow("propose_pt.md", repoUrl, ticket.number)).setEscapeModelStrings(false));
+				changeIdFrag.add(new Label("gitWorkflow", MessageFormat.format(getString("gb.proposeWith"), "Git")));
+				changeIdFrag.add(new Label("gitWorkflowSteps", getProposeWorkflow("propose_git.md", repoUrl, ticket.number)).setEscapeModelStrings(false));
+				add(changeIdFrag);
+			} else {
+				// explain why you can't propose a patchset
+				Fragment fragment = new Fragment("patchset", "canNotProposeFragment", this);
+				String reason = "";
+				if (ticket.isClosed()) {
+					reason = getString("gb.ticketIsClosed");
+				} else if (repository.isMirror) {
+					reason = getString("gb.repositoryIsMirror");
+				} else if (repository.isFrozen) {
+					reason = getString("gb.repositoryIsFrozen");
+				} else if (!repository.acceptNewPatchsets) {
+					reason = getString("gb.repositoryDoesNotAcceptPatchsets");
+				} else {
+					reason = getString("gb.serverDoesNotAcceptPatchsets");
+				}
+				fragment.add(new Label("reason", reason));
+				add(fragment);
+			}
 		} else {
 			// show current patchset
 			Fragment patchsetFrag = new Fragment("patchset", "patchsetFragment", this);
@@ -1254,16 +1275,13 @@
 	}
 
 	protected void addGitReviewInstructions(UserModel user, RepositoryModel repository, MarkupContainer panel) {
-		String repoUrl = getRepositoryUrl(user, repository);
-
 		panel.add(new Label("gitStep1", MessageFormat.format(getString("gb.stepN"), 1)));
 		panel.add(new Label("gitStep2", MessageFormat.format(getString("gb.stepN"), 2)));
 
 		String ticketBranch  = Repository.shortenRefName(PatchsetCommand.getTicketBranch(ticket.number));
-		String reviewBranch = PatchsetCommand.getReviewBranch(ticket.number);
 
-		String step1 = MessageFormat.format("git fetch {0} {1}", repoUrl, ticketBranch);
-		String step2 = MessageFormat.format("git checkout -B {0} FETCH_HEAD", reviewBranch);
+		String step1 = "git fetch";
+		String step2 = MessageFormat.format("git checkout {0} && git pull --ff-only\nOR\ngit checkout {0} && git reset --hard origin/{0}", ticketBranch);
 
 		panel.add(new Label("gitPreStep1", step1));
 		panel.add(new Label("gitPreStep2", step2));
@@ -1417,7 +1435,6 @@
 	protected Component getMergeInstructions(UserModel user, RepositoryModel repository, String markupId, String infoKey) {
 		Fragment cmd = new Fragment(markupId, "commandlineMergeFragment", this);
 		cmd.add(new Label("instructions", MessageFormat.format(getString(infoKey), ticket.mergeTo)));
-		String repoUrl = getRepositoryUrl(user, repository);
 
 		// git instructions
 		cmd.add(new Label("mergeStep1", MessageFormat.format(getString("gb.stepN"), 1)));
@@ -1427,9 +1444,9 @@
 		String ticketBranch = Repository.shortenRefName(PatchsetCommand.getTicketBranch(ticket.number));
 		String reviewBranch = PatchsetCommand.getReviewBranch(ticket.number);
 
-		String step1 = MessageFormat.format("git checkout -B {0} {1}", reviewBranch, ticket.mergeTo);
-		String step2 = MessageFormat.format("git pull {0} {1}", repoUrl, ticketBranch);
-		String step3 = MessageFormat.format("git checkout {0}\ngit merge {1}\ngit push origin {0}", ticket.mergeTo, reviewBranch);
+		String step1 = MessageFormat.format("git checkout -b {0} {1}", reviewBranch, ticket.mergeTo);
+		String step2 = MessageFormat.format("git pull origin {0}", ticketBranch);
+		String step3 = MessageFormat.format("git checkout {0}\ngit merge {1}\ngit push origin {0}\ngit branch -d {1}", ticket.mergeTo, reviewBranch);
 
 		cmd.add(new Label("mergePreStep1", step1));
 		cmd.add(new Label("mergePreStep2", step2));

--
Gitblit v1.9.1