From 32ada71dcd725abdbacc05ac32001c1f47df2bdc Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Fri, 26 Apr 2013 11:53:19 -0400 Subject: [PATCH] Update to Moxie 0.7.4 to fix prefix index merging bug --- src/main/java/com/gitblit/wicket/pages/BlobPage.java | 30 ++++++++++++++++++++++++++---- 1 files changed, 26 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/gitblit/wicket/pages/BlobPage.java b/src/main/java/com/gitblit/wicket/pages/BlobPage.java index e2b8546..295b2eb 100644 --- a/src/main/java/com/gitblit/wicket/pages/BlobPage.java +++ b/src/main/java/com/gitblit/wicket/pages/BlobPage.java @@ -39,6 +39,8 @@ public class BlobPage extends RepositoryPage { + protected String fileExtension; + public BlobPage(PageParameters params) { super(params); @@ -124,21 +126,41 @@ default: // plain text String source = JGitUtils.getStringContent(r, commit.getTree(), blobPath, encodings); - String table = generateSourceView(source, type == 1); + String table; + if (source == null) { + table = missingBlob(blobPath, commit); + } else { + table = generateSourceView(source, extension, type == 1); + } add(new Label("blobText", table).setEscapeModelStrings(false)); add(new Image("blobImage").setVisible(false)); + fileExtension = extension; } } else { // plain text String source = JGitUtils.getStringContent(r, commit.getTree(), blobPath, encodings); - String table = generateSourceView(source, false); + String table; + if (source == null) { + table = missingBlob(blobPath, commit); + } else { + table = generateSourceView(source, null, false); + } add(new Label("blobText", table).setEscapeModelStrings(false)); add(new Image("blobImage").setVisible(false)); } } } - protected String generateSourceView(String source, boolean prettyPrint) { + protected String missingBlob(String blobPath, RevCommit commit) { + StringBuilder sb = new StringBuilder(); + sb.append("<div class=\"alert alert-error\">"); + String pattern = getString("gb.doesNotExistInTree").replace("{0}", "<b>{0}</b>").replace("{1}", "<b>{1}</b>"); + sb.append(MessageFormat.format(pattern, blobPath, commit.getTree().getId().getName())); + sb.append("</div>"); + return sb.toString(); + } + + protected String generateSourceView(String source, String extension, boolean prettyPrint) { String [] lines = source.split("\n"); StringBuilder sb = new StringBuilder(); @@ -161,7 +183,7 @@ sb.append("<td id=\"lines\">"); sb.append("<div class=\"sourceview\">"); if (prettyPrint) { - sb.append("<pre class=\"prettyprint\">"); + sb.append("<pre class=\"prettyprint lang-" + extension + "\">"); } else { sb.append("<pre class=\"plainprint\">"); } -- Gitblit v1.9.1