From d2d0c66bc2fa9c030fe19b6a6da4f153fe8a2f77 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Tue, 11 Mar 2014 10:02:28 -0400 Subject: [PATCH] Workaround pegdown bug and improve relative image path processing --- src/main/java/com/gitblit/wicket/pages/TicketPage.java | 24 ++++++++++++++---------- 1 files changed, 14 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/gitblit/wicket/pages/TicketPage.java b/src/main/java/com/gitblit/wicket/pages/TicketPage.java index 7b492dc..80b5576 100644 --- a/src/main/java/com/gitblit/wicket/pages/TicketPage.java +++ b/src/main/java/com/gitblit/wicket/pages/TicketPage.java @@ -327,7 +327,7 @@ * UPDATE FORM (DISCUSSION TAB) */ if (user.canEdit(ticket, repository) && app().tickets().isAcceptingTicketUpdates(repository)) { - if (ticket.isOpen()) { + if (user.canAdmin(ticket, repository) && ticket.isOpen()) { /* * OPEN TICKET */ @@ -520,7 +520,7 @@ WicketUtils.setCssClass(votersCount, "badge badge-info"); } add(votersCount); - if (user.isAuthenticated) { + if (user.isAuthenticated && app().tickets().isAcceptingTicketUpdates(repository)) { Model<String> model; if (ticket.isVoter(user.username)) { model = Model.of(getString("gb.removeVote")); @@ -560,7 +560,7 @@ WicketUtils.setCssClass(watchersCount, "badge badge-info"); } add(watchersCount); - if (user.isAuthenticated) { + if (user.isAuthenticated && app().tickets().isAcceptingTicketUpdates(repository)) { Model<String> model; if (ticket.isWatching(user.username)) { model = Model.of(getString("gb.stopWatching")); @@ -988,7 +988,11 @@ md = md.replace("${ticketId}", "" + ticketId); md = md.replace("${patchset}", "" + 1); md = md.replace("${reviewBranch}", Repository.shortenRefName(PatchsetCommand.getTicketBranch(ticketId))); - md = md.replace("${integrationBranch}", Repository.shortenRefName(getRepositoryModel().HEAD)); + String integrationBranch = Repository.shortenRefName(getRepositoryModel().mergeTo); + if (!StringUtils.isEmpty(ticket.mergeTo)) { + integrationBranch = ticket.mergeTo; + } + md = md.replace("${integrationBranch}", integrationBranch); return MarkdownUtils.transformMarkdown(md); } @@ -1065,7 +1069,7 @@ panel.add(reviewsView); - if (ticket.isOpen() && user.canReviewPatchset(repository)) { + if (ticket.isOpen() && user.canReviewPatchset(repository) && app().tickets().isAcceptingTicketUpdates(repository)) { // can only review open tickets Review myReview = null; for (Change change : ticket.getReviews(currentPatchset)) { @@ -1199,8 +1203,8 @@ }; panel.add(pathsView); - addPtReviewInstructions(user, repository, panel); - addGitReviewInstructions(user, repository, panel); + addPtCheckoutInstructions(user, repository, panel); + addGitCheckoutInstructions(user, repository, panel); panel.add(createMergePanel(user, repository)); return panel; @@ -1274,13 +1278,13 @@ return x; } - protected void addGitReviewInstructions(UserModel user, RepositoryModel repository, MarkupContainer panel) { + protected void addGitCheckoutInstructions(UserModel user, RepositoryModel repository, MarkupContainer panel) { 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 step1 = "git fetch"; + String step1 = "git fetch origin"; 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)); @@ -1290,7 +1294,7 @@ panel.add(createCopyFragment("gitCopyStep2", step2.replace("\n", " && "))); } - protected void addPtReviewInstructions(UserModel user, RepositoryModel repository, MarkupContainer panel) { + protected void addPtCheckoutInstructions(UserModel user, RepositoryModel repository, MarkupContainer panel) { String step1 = MessageFormat.format("pt checkout {0,number,0}", ticket.number); panel.add(new Label("ptPreStep", step1)); panel.add(createCopyFragment("ptCopyStep", step1)); -- Gitblit v1.9.1