From 0625197d132c54e08896447299f7aaea580da537 Mon Sep 17 00:00:00 2001 From: James Moger Date: Thu, 11 Sep 2014 10:48:03 -0400 Subject: Preserve refs in commits, tree, & docs navbar links --- src/main/java/com/gitblit/wicket/pages/DocsPage.java | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'src/main/java/com/gitblit/wicket/pages/DocsPage.java') diff --git a/src/main/java/com/gitblit/wicket/pages/DocsPage.java b/src/main/java/com/gitblit/wicket/pages/DocsPage.java index a3d0f214..97b16049 100644 --- a/src/main/java/com/gitblit/wicket/pages/DocsPage.java +++ b/src/main/java/com/gitblit/wicket/pages/DocsPage.java @@ -49,11 +49,14 @@ public class DocsPage extends RepositoryPage { public DocsPage(PageParameters params) { super(params); + String objectId = WicketUtils.getObject(params); + MarkupProcessor processor = new MarkupProcessor(app().settings(), app().xssFilter()); Repository r = getRepository(); - RevCommit head = JGitUtils.getCommit(r, null); + RevCommit head = JGitUtils.getCommit(r, objectId); final String commitId = getBestCommitId(head); + List extensions = processor.getAllExtensions(); List paths = JGitUtils.getDocuments(r, extensions); @@ -127,7 +130,6 @@ public class DocsPage extends RepositoryPage { } // document list - final String id = getBestCommitId(head); final ByteFormat byteFormat = new ByteFormat(); Fragment docs = new Fragment("documents", "documentsFragment", this); ListDataProvider pathsDp = new ListDataProvider(paths); @@ -141,17 +143,17 @@ public class DocsPage extends RepositoryPage { item.add(WicketUtils.newImage("docIcon", "file_world_16x16.png")); item.add(new Label("docSize", byteFormat.format(entry.size))); item.add(new LinkPanel("docName", "list", StringUtils.stripFileExtension(entry.name), - DocPage.class, WicketUtils.newPathParameter(repositoryName, id, entry.path))); + DocPage.class, WicketUtils.newPathParameter(repositoryName, commitId, entry.path))); // links item.add(new BookmarkablePageLink("view", DocPage.class, WicketUtils - .newPathParameter(repositoryName, id, entry.path))); - String rawUrl = RawServlet.asLink(getContextUrl(), repositoryName, id, entry.path); + .newPathParameter(repositoryName, commitId, entry.path))); + String rawUrl = RawServlet.asLink(getContextUrl(), repositoryName, commitId, entry.path); item.add(new ExternalLink("raw", rawUrl)); item.add(new BookmarkablePageLink("blame", BlamePage.class, WicketUtils - .newPathParameter(repositoryName, id, entry.path))); + .newPathParameter(repositoryName, commitId, entry.path))); item.add(new BookmarkablePageLink("history", HistoryPage.class, WicketUtils - .newPathParameter(repositoryName, id, entry.path))); + .newPathParameter(repositoryName, commitId, entry.path))); WicketUtils.setAlternatingBackground(item, counter); counter++; } -- cgit v1.2.3