From c1c3c6a7a2f0a2893ef36ab3dfc7b09d04a133bc Mon Sep 17 00:00:00 2001 From: James Moger Date: Tue, 26 Apr 2011 18:05:39 -0400 Subject: [PATCH] Commit header panel. File type icons. Docs page. --- src/com/gitblit/utils/JGitUtils.java | 43 ++++++++++-- src/com/gitblit/wicket/BasePage.html | 3 +- src/com/gitblit/wicket/BasePage.java | 4 ++ src/com/gitblit/wicket/GitBlitWebApp.java | 2 + .../gitblit/wicket/GitBlitWebApp.properties | 7 +- src/com/gitblit/wicket/WicketUtils.java | 50 +++++++++++++- .../gitblit/wicket/pages/BlobDiffPage.html | 4 +- .../gitblit/wicket/pages/BlobDiffPage.java | 4 +- src/com/gitblit/wicket/pages/BlobPage.html | 4 +- src/com/gitblit/wicket/pages/BlobPage.java | 4 +- .../gitblit/wicket/pages/CommitDiffPage.html | 13 ++-- .../gitblit/wicket/pages/CommitDiffPage.java | 3 +- src/com/gitblit/wicket/pages/CommitPage.html | 4 +- src/com/gitblit/wicket/pages/CommitPage.java | 3 +- src/com/gitblit/wicket/pages/DocsPage.html | 31 +++++++++ src/com/gitblit/wicket/pages/DocsPage.java | 63 ++++++++++++++++++ .../wicket/pages/EditRepositoryPage.html | 12 ++-- src/com/gitblit/wicket/pages/HistoryPage.html | 2 +- src/com/gitblit/wicket/pages/LogPage.html | 2 +- src/com/gitblit/wicket/pages/SearchPage.html | 2 +- src/com/gitblit/wicket/pages/TreePage.html | 6 +- src/com/gitblit/wicket/pages/TreePage.java | 7 +- .../wicket/panels/CommitHeaderPanel.html | 15 +++++ .../wicket/panels/CommitHeaderPanel.java | 23 +++++++ .../gitblit/wicket/panels/HistoryPanel.html | 4 +- .../gitblit/wicket/panels/HistoryPanel.java | 12 +--- .../gitblit/wicket/panels/PageLinksPanel.java | 5 +- .../wicket/resources/file_acrobat_16x16.png | Bin 0 -> 689 bytes .../gitblit/wicket/resources/file_c_16x16.png | Bin 0 -> 676 bytes .../wicket/resources/file_code_16x16.png | Bin 0 -> 662 bytes .../wicket/resources/file_cpp_16x16.png | Bin 0 -> 726 bytes .../wicket/resources/file_cs_16x16.png | Bin 0 -> 779 bytes .../wicket/resources/file_doc_16x16.png | Bin 0 -> 604 bytes .../wicket/resources/file_excel_16x16.png | Bin 0 -> 703 bytes .../gitblit/wicket/resources/file_h_16x16.png | Bin 0 -> 635 bytes .../wicket/resources/file_java_16x16.png | Bin 0 -> 716 bytes .../wicket/resources/file_php_16x16.png | Bin 0 -> 432 bytes .../wicket/resources/file_ppt_16x16.png | Bin 0 -> 648 bytes .../wicket/resources/file_ruby_16x16.png | Bin 0 -> 670 bytes .../wicket/resources/file_settings_16x16.png | Bin 0 -> 732 bytes .../wicket/resources/file_vs_16x16.png | Bin 0 -> 756 bytes .../wicket/resources/file_world_16x16.png | Bin 0 -> 749 bytes .../wicket/resources/file_zip_16x16.png | Bin 0 -> 593 bytes src/com/gitblit/wicket/resources/gitblit.css | 23 +++++-- src/com/gitblit/wicket/resources/welcome.mkd | 2 +- 45 files changed, 296 insertions(+), 61 deletions(-) create mode 100644 src/com/gitblit/wicket/pages/DocsPage.html create mode 100644 src/com/gitblit/wicket/pages/DocsPage.java create mode 100644 src/com/gitblit/wicket/panels/CommitHeaderPanel.html create mode 100644 src/com/gitblit/wicket/panels/CommitHeaderPanel.java create mode 100644 src/com/gitblit/wicket/resources/file_acrobat_16x16.png create mode 100644 src/com/gitblit/wicket/resources/file_c_16x16.png create mode 100644 src/com/gitblit/wicket/resources/file_code_16x16.png create mode 100644 src/com/gitblit/wicket/resources/file_cpp_16x16.png create mode 100644 src/com/gitblit/wicket/resources/file_cs_16x16.png create mode 100644 src/com/gitblit/wicket/resources/file_doc_16x16.png create mode 100644 src/com/gitblit/wicket/resources/file_excel_16x16.png create mode 100644 src/com/gitblit/wicket/resources/file_h_16x16.png create mode 100644 src/com/gitblit/wicket/resources/file_java_16x16.png create mode 100644 src/com/gitblit/wicket/resources/file_php_16x16.png create mode 100644 src/com/gitblit/wicket/resources/file_ppt_16x16.png create mode 100644 src/com/gitblit/wicket/resources/file_ruby_16x16.png create mode 100644 src/com/gitblit/wicket/resources/file_settings_16x16.png create mode 100644 src/com/gitblit/wicket/resources/file_vs_16x16.png create mode 100644 src/com/gitblit/wicket/resources/file_world_16x16.png create mode 100644 src/com/gitblit/wicket/resources/file_zip_16x16.png diff --git a/src/com/gitblit/utils/JGitUtils.java b/src/com/gitblit/utils/JGitUtils.java index eddd3df6..e5dbfd2d 100644 --- a/src/com/gitblit/utils/JGitUtils.java +++ b/src/com/gitblit/utils/JGitUtils.java @@ -8,6 +8,7 @@ import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Collection; import java.util.Collections; import java.util.Date; import java.util.HashMap; @@ -43,8 +44,10 @@ import org.eclipse.jgit.revwalk.RevWalk; import org.eclipse.jgit.revwalk.filter.RevFilter; import org.eclipse.jgit.treewalk.TreeWalk; import org.eclipse.jgit.treewalk.filter.AndTreeFilter; +import org.eclipse.jgit.treewalk.filter.OrTreeFilter; import org.eclipse.jgit.treewalk.filter.PathFilter; import org.eclipse.jgit.treewalk.filter.PathFilterGroup; +import org.eclipse.jgit.treewalk.filter.PathSuffixFilter; import org.eclipse.jgit.treewalk.filter.TreeFilter; import org.eclipse.jgit.util.io.DisabledOutputStream; import org.slf4j.Logger; @@ -352,6 +355,42 @@ public class JGitUtils { } return list; } + + public static List getDocuments(Repository r, List extensions) { + List list = new ArrayList(); + RevCommit commit = getCommit(r, Constants.HEAD); + final TreeWalk walk = new TreeWalk(r); + try { + walk.addTree(commit.getTree()); + if (extensions != null && extensions.size() > 0) { + Collection suffixFilters = new ArrayList(); + for (String extension:extensions) { + if (extension.charAt(0) == '.') { + suffixFilters.add(PathSuffixFilter.create(extension)); + } else { + // escape the . since this is a regexp filter + suffixFilters.add(PathSuffixFilter.create("\\." + extension)); + } + } + TreeFilter filter = OrTreeFilter.create(suffixFilters); + walk.setFilter(filter); + walk.setRecursive(true); + while (walk.next()) { + list.add(getPathModel(walk, null, commit)); + } + } else { + while (walk.next()) { + list.add(getPathModel(walk, null, commit)); + } + } + } catch (IOException e) { + LOGGER.error("Failed to get files for commit " + commit.getName(), e); + } finally { + walk.release(); + } + Collections.sort(list); + return list; + } public static Map getChangedPathsStats(List paths) { Map stats = new HashMap(); @@ -895,10 +934,6 @@ public class JGitUtils { return metrics; } - public static RefModel getDocumentsBranch(Repository r) { - return getTicketsBranch(r); - } - public static RefModel getTicketsBranch(Repository r) { RefModel ticgitBranch = null; try { diff --git a/src/com/gitblit/wicket/BasePage.html b/src/com/gitblit/wicket/BasePage.html index c3c56efc..b88192b5 100644 --- a/src/com/gitblit/wicket/BasePage.html +++ b/src/com/gitblit/wicket/BasePage.html @@ -21,7 +21,8 @@ - [site name] / [repository name] [page name] + [site name] / [repository name] [page name] +
[Feedback Panel]
diff --git a/src/com/gitblit/wicket/BasePage.java b/src/com/gitblit/wicket/BasePage.java index 33feacb3..8daab447 100644 --- a/src/com/gitblit/wicket/BasePage.java +++ b/src/com/gitblit/wicket/BasePage.java @@ -7,6 +7,7 @@ import javax.servlet.http.HttpServletRequest; import org.apache.wicket.PageParameters; import org.apache.wicket.markup.html.WebPage; import org.apache.wicket.markup.html.basic.Label; +import org.apache.wicket.markup.html.panel.FeedbackPanel; import org.apache.wicket.protocol.http.servlet.ServletWebRequest; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -45,6 +46,9 @@ public abstract class BasePage extends WebPage { add(new LinkPanel("repositoryName", null, repositoryName, SummaryPage.class, WicketUtils.newRepositoryParameter(repositoryName))); add(new Label("pageName", pageName)); + // Feedback panel for info, warning, and non-fatal error messages + add(new FeedbackPanel("feedback")); + // footer if (GitBlit.self().settings().getBoolean(Keys.web.authenticateViewPages, true) || GitBlit.self().settings().getBoolean(Keys.web.authenticateAdminPages, true)) { diff --git a/src/com/gitblit/wicket/GitBlitWebApp.java b/src/com/gitblit/wicket/GitBlitWebApp.java index e3c41cd6..7410dfa5 100644 --- a/src/com/gitblit/wicket/GitBlitWebApp.java +++ b/src/com/gitblit/wicket/GitBlitWebApp.java @@ -15,6 +15,7 @@ import com.gitblit.wicket.pages.BlobPage; import com.gitblit.wicket.pages.BranchesPage; import com.gitblit.wicket.pages.CommitDiffPage; import com.gitblit.wicket.pages.CommitPage; +import com.gitblit.wicket.pages.DocsPage; import com.gitblit.wicket.pages.HistoryPage; import com.gitblit.wicket.pages.LogPage; import com.gitblit.wicket.pages.MarkdownPage; @@ -69,6 +70,7 @@ public class GitBlitWebApp extends WebApplication { mount(new MixedParamUrlCodingStrategy("/ticket", TicketPage.class, new String[] { "r", "h", "f" })); // setup the markdown urls + mount(new MixedParamUrlCodingStrategy("/docs", DocsPage.class, new String[] { "r" })); mount(new MixedParamUrlCodingStrategy("/markdown", MarkdownPage.class, new String[] { "r", "h", "f" })); // setup login/logout urls, if we are using authentication diff --git a/src/com/gitblit/wicket/GitBlitWebApp.properties b/src/com/gitblit/wicket/GitBlitWebApp.properties index 18b1e789..367ae3df 100644 --- a/src/com/gitblit/wicket/GitBlitWebApp.properties +++ b/src/com/gitblit/wicket/GitBlitWebApp.properties @@ -70,4 +70,9 @@ gb.searchTooltip = Search Git:Blit gb.rename = rename gb.delete = delete gb.docs = docs -gb.restrictedAccess = restricted access \ No newline at end of file +gb.restrictedAccess = restricted access +gb.name = name +gb.group = group +gb.description = description +gb.enableTickets = enable tickets +gb.enableDocs = enable docs \ No newline at end of file diff --git a/src/com/gitblit/wicket/WicketUtils.java b/src/com/gitblit/wicket/WicketUtils.java index fb8e2967..bf2bcb93 100644 --- a/src/com/gitblit/wicket/WicketUtils.java +++ b/src/com/gitblit/wicket/WicketUtils.java @@ -3,6 +3,7 @@ package com.gitblit.wicket; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; +import java.util.List; import java.util.TimeZone; import org.apache.wicket.Component; @@ -83,10 +84,55 @@ public class WicketUtils { return label; } + public static ContextImage getFileImage(String wicketId, String filename) { + filename = filename.toLowerCase(); + if (filename.endsWith(".java")) { + return newImage(wicketId, "file_java_16x16.png"); + } else if (filename.endsWith(".rb")) { + return newImage(wicketId, "file_ruby_16x16.png"); + } else if (filename.endsWith(".php")) { + return newImage(wicketId, "file_php_16x16.png"); + } else if (filename.endsWith(".cs")) { + return newImage(wicketId, "file_cs_16x16.png"); + } else if (filename.endsWith(".cpp")) { + return newImage(wicketId, "file_cpp_16x16.png"); + } else if (filename.endsWith(".c")) { + return newImage(wicketId, "file_c_16x16.png"); + } else if (filename.endsWith(".h")) { + return newImage(wicketId, "file_h_16x16.png"); + } else if (filename.endsWith(".sln")) { + return newImage(wicketId, "file_vs_16x16.png"); + } else if (filename.endsWith(".csv") || filename.endsWith(".xls") || filename.endsWith(".xlsx")) { + return newImage(wicketId, "file_excel_16x16.png"); + } else if (filename.endsWith(".doc") || filename.endsWith(".docx")) { + return newImage(wicketId, "file_word_16x16.png"); + } else if (filename.endsWith(".ppt")) { + return newImage(wicketId, "file_ppt_16x16.png"); + } else if (filename.endsWith(".zip")) { + return newImage(wicketId, "file_zip_16x16.png"); + } else if (filename.endsWith(".pdf")) { + return newImage(wicketId, "file_acrobat_16x16.png"); + } else if (filename.endsWith(".htm") || filename.endsWith(".html")) { + return newImage(wicketId, "file_world_16x16.png"); + } else if (filename.endsWith(".xml")) { + return newImage(wicketId, "file_code_16x16.png"); + } else if (filename.endsWith(".properties")) { + return newImage(wicketId, "file_settings_16x16.png"); + } + + List mdExtensions = GitBlit.self().settings().getStrings(Keys.web.markdownExtensions); + for (String ext : mdExtensions) { + if (filename.endsWith('.' + ext.toLowerCase())) { + return newImage(wicketId, "file_world_16x16.png"); + } + } + return newImage(wicketId, "file_16x16.png"); + } + public static ContextImage newClearPixel(String wicketId) { return newImage(wicketId, "pixel.png"); } - + public static ContextImage newBlankImage(String wicketId) { return newImage(wicketId, "blank.png"); } @@ -102,7 +148,7 @@ public class WicketUtils { } return img; } - + public static ContextRelativeResource getResource(String file) { return new ContextRelativeResource("/com/gitblit/wicket/resources/" + file); } diff --git a/src/com/gitblit/wicket/pages/BlobDiffPage.html b/src/com/gitblit/wicket/pages/BlobDiffPage.html index a20b24ca..12271696 100644 --- a/src/com/gitblit/wicket/pages/BlobDiffPage.html +++ b/src/com/gitblit/wicket/pages/BlobDiffPage.html @@ -15,8 +15,8 @@ [blame link] | | | | - -
[shortlog header]
+ +
[commit header]
[breadcrumbs]
diff --git a/src/com/gitblit/wicket/pages/BlobDiffPage.java b/src/com/gitblit/wicket/pages/BlobDiffPage.java index 4bb281c9..983b3c48 100644 --- a/src/com/gitblit/wicket/pages/BlobDiffPage.java +++ b/src/com/gitblit/wicket/pages/BlobDiffPage.java @@ -11,9 +11,9 @@ import com.gitblit.Keys; import com.gitblit.utils.JGitUtils; import com.gitblit.utils.JGitUtils.DiffOutputType; import com.gitblit.utils.StringUtils; -import com.gitblit.wicket.LinkPanel; import com.gitblit.wicket.RepositoryPage; import com.gitblit.wicket.WicketUtils; +import com.gitblit.wicket.panels.CommitHeaderPanel; import com.gitblit.wicket.panels.PathBreadcrumbsPanel; public class BlobDiffPage extends RepositoryPage { @@ -48,7 +48,7 @@ public class BlobDiffPage extends RepositoryPage { add(new Label("blameLink", getString("gb.blame"))); add(new BookmarkablePageLink("historyLink", HistoryPage.class, WicketUtils.newPathParameter(repositoryName, objectId, blobPath))); - add(new LinkPanel("shortlog", "title", commit.getShortMessage(), CommitPage.class, newCommitParameter())); + add(new CommitHeaderPanel("commitHeader", repositoryName, commit)); add(new PathBreadcrumbsPanel("breadcrumbs", repositoryName, blobPath, objectId)); diff --git a/src/com/gitblit/wicket/pages/BlobPage.html b/src/com/gitblit/wicket/pages/BlobPage.html index 2ca76e3b..80ff059d 100644 --- a/src/com/gitblit/wicket/pages/BlobPage.html +++ b/src/com/gitblit/wicket/pages/BlobPage.html @@ -24,8 +24,8 @@ [blame link] | | | - -
[shortlog header]
+ +
[commit header]
[breadcrumbs]
diff --git a/src/com/gitblit/wicket/pages/BlobPage.java b/src/com/gitblit/wicket/pages/BlobPage.java index 335d25a1..ca2afe9e 100644 --- a/src/com/gitblit/wicket/pages/BlobPage.java +++ b/src/com/gitblit/wicket/pages/BlobPage.java @@ -14,9 +14,9 @@ import org.eclipse.jgit.revwalk.RevCommit; import com.gitblit.GitBlit; import com.gitblit.Keys; import com.gitblit.utils.JGitUtils; -import com.gitblit.wicket.LinkPanel; import com.gitblit.wicket.RepositoryPage; import com.gitblit.wicket.WicketUtils; +import com.gitblit.wicket.panels.CommitHeaderPanel; import com.gitblit.wicket.panels.PathBreadcrumbsPanel; public class BlobPage extends RepositoryPage { @@ -49,7 +49,7 @@ public class BlobPage extends RepositoryPage { add(new BookmarkablePageLink("rawLink", RawPage.class, WicketUtils.newPathParameter(repositoryName, objectId, blobPath))); add(new BookmarkablePageLink("headLink", BlobPage.class, WicketUtils.newPathParameter(repositoryName, Constants.HEAD, blobPath))); - add(new LinkPanel("shortlog", "title", commit.getShortMessage(), CommitPage.class, newCommitParameter())); + add(new CommitHeaderPanel("commitHeader", repositoryName, commit)); add(new PathBreadcrumbsPanel("breadcrumbs", repositoryName, blobPath, objectId)); diff --git a/src/com/gitblit/wicket/pages/CommitDiffPage.html b/src/com/gitblit/wicket/pages/CommitDiffPage.html index cc7404ad..4e3a2685 100644 --- a/src/com/gitblit/wicket/pages/CommitDiffPage.html +++ b/src/com/gitblit/wicket/pages/CommitDiffPage.html @@ -14,14 +14,17 @@ - - -
- -
[shortlog header]
+ +
[commit header]
+
+ +
+ +
[changed files]
+
diff --git a/src/com/gitblit/wicket/pages/CommitDiffPage.java b/src/com/gitblit/wicket/pages/CommitDiffPage.java index 0d4867ab..eb30e088 100644 --- a/src/com/gitblit/wicket/pages/CommitDiffPage.java +++ b/src/com/gitblit/wicket/pages/CommitDiffPage.java @@ -20,6 +20,7 @@ import com.gitblit.wicket.LinkPanel; import com.gitblit.wicket.RepositoryPage; import com.gitblit.wicket.WicketUtils; import com.gitblit.wicket.models.PathModel.PathChangeModel; +import com.gitblit.wicket.panels.CommitHeaderPanel; import com.gitblit.wicket.panels.CommitLegendPanel; public class CommitDiffPage extends RepositoryPage { @@ -48,7 +49,7 @@ public class CommitDiffPage extends RepositoryPage { add(new BookmarkablePageLink("patchLink", PatchPage.class, WicketUtils.newObjectParameter(repositoryName, objectId))); add(new BookmarkablePageLink("commitLink", CommitPage.class, WicketUtils.newObjectParameter(repositoryName, objectId))); - add(new LinkPanel("shortlog", "title", commit.getShortMessage(), CommitPage.class, newCommitParameter())); + add(new CommitHeaderPanel("commitHeader", repositoryName, commit)); // changed paths list List paths = JGitUtils.getFilesInCommit(r, commit); diff --git a/src/com/gitblit/wicket/pages/CommitPage.html b/src/com/gitblit/wicket/pages/CommitPage.html index 2e1f47c4..26013038 100644 --- a/src/com/gitblit/wicket/pages/CommitPage.html +++ b/src/com/gitblit/wicket/pages/CommitPage.html @@ -15,8 +15,8 @@ : [parent link] | | [commitdiff link] - -
[shortlog header]
+ +
[commit header]
[change type]
diff --git a/src/com/gitblit/wicket/pages/CommitPage.java b/src/com/gitblit/wicket/pages/CommitPage.java index cae500f6..e724ca12 100644 --- a/src/com/gitblit/wicket/pages/CommitPage.java +++ b/src/com/gitblit/wicket/pages/CommitPage.java @@ -19,6 +19,7 @@ import com.gitblit.wicket.LinkPanel; import com.gitblit.wicket.RepositoryPage; import com.gitblit.wicket.WicketUtils; import com.gitblit.wicket.models.PathModel.PathChangeModel; +import com.gitblit.wicket.panels.CommitHeaderPanel; import com.gitblit.wicket.panels.CommitLegendPanel; public class CommitPage extends RepositoryPage { @@ -46,7 +47,7 @@ public class CommitPage extends RepositoryPage { } add(new BookmarkablePageLink("patchLink", PatchPage.class, WicketUtils.newObjectParameter(repositoryName, objectId))); - add(new LinkPanel("shortlog", "title", c.getShortMessage(), CommitDiffPage.class, WicketUtils.newObjectParameter(repositoryName, objectId))); + add(new CommitHeaderPanel("commitHeader", repositoryName, c)); addRefs(r, c); diff --git a/src/com/gitblit/wicket/pages/DocsPage.html b/src/com/gitblit/wicket/pages/DocsPage.html new file mode 100644 index 00000000..c098bcf8 --- /dev/null +++ b/src/com/gitblit/wicket/pages/DocsPage.html @@ -0,0 +1,31 @@ + + + + + + + +
[page links]
+ + +
[header]
+ + +
+ + + + + + +
[doc size]
+ + + \ No newline at end of file diff --git a/src/com/gitblit/wicket/pages/DocsPage.java b/src/com/gitblit/wicket/pages/DocsPage.java new file mode 100644 index 00000000..302d29d7 --- /dev/null +++ b/src/com/gitblit/wicket/pages/DocsPage.java @@ -0,0 +1,63 @@ +package com.gitblit.wicket.pages; + +import java.util.List; + +import org.apache.wicket.PageParameters; +import org.apache.wicket.markup.html.basic.Label; +import org.apache.wicket.markup.html.link.BookmarkablePageLink; +import org.apache.wicket.markup.repeater.Item; +import org.apache.wicket.markup.repeater.data.DataView; +import org.apache.wicket.markup.repeater.data.ListDataProvider; +import org.eclipse.jgit.lib.Repository; + +import com.gitblit.GitBlit; +import com.gitblit.Keys; +import com.gitblit.utils.ByteFormat; +import com.gitblit.utils.JGitUtils; +import com.gitblit.wicket.LinkPanel; +import com.gitblit.wicket.RepositoryPage; +import com.gitblit.wicket.WicketUtils; +import com.gitblit.wicket.models.PathModel; + +public class DocsPage extends RepositoryPage { + + public DocsPage(PageParameters params) { + super(params); + + Repository r = getRepository(); + List extensions = GitBlit.self().settings().getStrings(Keys.web.markdownExtensions); + List paths = JGitUtils.getDocuments(r, extensions); + + final ByteFormat byteFormat = new ByteFormat(); + + add(new Label("header", getString("gb.docs"))); + + // documents list + ListDataProvider pathsDp = new ListDataProvider(paths); + DataView pathsView = new DataView("document", pathsDp) { + private static final long serialVersionUID = 1L; + int counter = 0; + + public void populateItem(final Item item) { + PathModel entry = item.getModelObject(); + item.add(WicketUtils.newImage("docIcon", "file_world_16x16.png")); + item.add(new Label("docSize", byteFormat.format(entry.size))); + item.add(new LinkPanel("docName", "list", entry.name, BlobPage.class, newPathParameter(entry.path))); + + // links + item.add(new BookmarkablePageLink("view", BlobPage.class, WicketUtils.newPathParameter(repositoryName, entry.commitId, entry.path))); + item.add(new BookmarkablePageLink("raw", RawPage.class, WicketUtils.newPathParameter(repositoryName, entry.commitId, entry.path))); + item.add(new BookmarkablePageLink("blame", BlobPage.class).setEnabled(false)); + item.add(new BookmarkablePageLink("history", HistoryPage.class, WicketUtils.newPathParameter(repositoryName, entry.commitId, entry.path))); + WicketUtils.setAlternatingBackground(item, counter); + counter++; + } + }; + add(pathsView); + } + + @Override + protected String getPageName() { + return getString("gb.docs"); + } +} diff --git a/src/com/gitblit/wicket/pages/EditRepositoryPage.html b/src/com/gitblit/wicket/pages/EditRepositoryPage.html index f202e918..4aebef3d 100644 --- a/src/com/gitblit/wicket/pages/EditRepositoryPage.html +++ b/src/com/gitblit/wicket/pages/EditRepositoryPage.html @@ -13,12 +13,12 @@
- - - - - - + + + + + +
Name
Description
Owner
Group
Enable Tickets distributed Ticgit ticketing
Enable Docs distributed Markdown documentation
 distributed Ticgit issues
 enumerates repository Markdown documentation
diff --git a/src/com/gitblit/wicket/pages/HistoryPage.html b/src/com/gitblit/wicket/pages/HistoryPage.html index a77933eb..f132e599 100644 --- a/src/com/gitblit/wicket/pages/HistoryPage.html +++ b/src/com/gitblit/wicket/pages/HistoryPage.html @@ -11,7 +11,7 @@
[page links]
-
+
| |
diff --git a/src/com/gitblit/wicket/pages/LogPage.html b/src/com/gitblit/wicket/pages/LogPage.html index 325e751b..ad39b779 100644 --- a/src/com/gitblit/wicket/pages/LogPage.html +++ b/src/com/gitblit/wicket/pages/LogPage.html @@ -11,7 +11,7 @@
[page links]
-
+
| |
diff --git a/src/com/gitblit/wicket/pages/SearchPage.html b/src/com/gitblit/wicket/pages/SearchPage.html index 7d2a537b..246601a4 100644 --- a/src/com/gitblit/wicket/pages/SearchPage.html +++ b/src/com/gitblit/wicket/pages/SearchPage.html @@ -11,7 +11,7 @@
[page links]
-
+
| |
diff --git a/src/com/gitblit/wicket/pages/TreePage.html b/src/com/gitblit/wicket/pages/TreePage.html index f180c9d3..90ca62bf 100644 --- a/src/com/gitblit/wicket/pages/TreePage.html +++ b/src/com/gitblit/wicket/pages/TreePage.html @@ -15,8 +15,8 @@ |
- -
[shortlog header]
+ +
[commit header]
[breadcrumbs]
@@ -28,7 +28,7 @@ [path size] [path permissions] - [path links] + [path links] diff --git a/src/com/gitblit/wicket/pages/TreePage.java b/src/com/gitblit/wicket/pages/TreePage.java index 9022d444..56f96d65 100644 --- a/src/com/gitblit/wicket/pages/TreePage.java +++ b/src/com/gitblit/wicket/pages/TreePage.java @@ -19,6 +19,7 @@ import com.gitblit.wicket.LinkPanel; import com.gitblit.wicket.RepositoryPage; import com.gitblit.wicket.WicketUtils; import com.gitblit.wicket.models.PathModel; +import com.gitblit.wicket.panels.CommitHeaderPanel; import com.gitblit.wicket.panels.PathBreadcrumbsPanel; public class TreePage extends RepositoryPage { @@ -36,7 +37,7 @@ public class TreePage extends RepositoryPage { add(new BookmarkablePageLink("historyLink", HistoryPage.class, WicketUtils.newPathParameter(repositoryName, objectId, path))); add(new BookmarkablePageLink("headLink", TreePage.class, WicketUtils.newPathParameter(repositoryName, Constants.HEAD, path))); - add(new LinkPanel("shortlog", "title", commit == null ? "" : commit.getShortMessage(), CommitPage.class, newCommitParameter())); + add(new CommitHeaderPanel("commitHeader", repositoryName, commit)); // breadcrumbs add(new PathBreadcrumbsPanel("breadcrumbs", repositoryName, path, objectId)); @@ -66,7 +67,7 @@ public class TreePage extends RepositoryPage { // folder/tree link item.add(WicketUtils.newImage("pathIcon", "folder_16x16.png")); item.add(new Label("pathSize", "")); - item.add(new LinkPanel("pathName", null, entry.name, TreePage.class, newPathParameter(entry.path))); + item.add(new LinkPanel("pathName", "list", entry.name, TreePage.class, newPathParameter(entry.path))); // links Fragment links = new Fragment("pathLinks", "treeLinks", this); @@ -75,7 +76,7 @@ public class TreePage extends RepositoryPage { item.add(links); } else { // blob link - item.add(WicketUtils.newImage("pathIcon", "file_16x16.png")); + item.add(WicketUtils.getFileImage("pathIcon", entry.name)); item.add(new Label("pathSize", byteFormat.format(entry.size))); item.add(new LinkPanel("pathName", "list", entry.name, BlobPage.class, newPathParameter(entry.path))); diff --git a/src/com/gitblit/wicket/panels/CommitHeaderPanel.html b/src/com/gitblit/wicket/panels/CommitHeaderPanel.html new file mode 100644 index 00000000..e02fc258 --- /dev/null +++ b/src/com/gitblit/wicket/panels/CommitHeaderPanel.html @@ -0,0 +1,15 @@ + + + + +
+
+ [author]    [date] +
+ [short message] [commit id] +
+
+ \ No newline at end of file diff --git a/src/com/gitblit/wicket/panels/CommitHeaderPanel.java b/src/com/gitblit/wicket/panels/CommitHeaderPanel.java new file mode 100644 index 00000000..da72a7cf --- /dev/null +++ b/src/com/gitblit/wicket/panels/CommitHeaderPanel.java @@ -0,0 +1,23 @@ +package com.gitblit.wicket.panels; + +import java.util.Date; + +import org.apache.wicket.markup.html.basic.Label; +import org.eclipse.jgit.revwalk.RevCommit; + +import com.gitblit.wicket.LinkPanel; +import com.gitblit.wicket.WicketUtils; +import com.gitblit.wicket.pages.CommitPage; + +public class CommitHeaderPanel extends BasePanel { + + private static final long serialVersionUID = 1L; + + public CommitHeaderPanel(String id, String repositoryName, RevCommit c) { + super(id); + add(new LinkPanel("shortmessage", "title", c == null ? "" : c.getShortMessage(), CommitPage.class, WicketUtils.newObjectParameter(repositoryName, c == null ? "" : c.getName()))); + add(new Label("commitid", "(" + c.getName().substring(0, 8) + ")")); + add(new Label("author", c == null ? "" : c.getAuthorIdent().getName())); + add(WicketUtils.createDateLabel("date", c == null ? new Date(0) : c.getAuthorIdent().getWhen(), getTimeZone())); + } +} \ No newline at end of file diff --git a/src/com/gitblit/wicket/panels/HistoryPanel.html b/src/com/gitblit/wicket/panels/HistoryPanel.html index 3fa2262e..9589d141 100644 --- a/src/com/gitblit/wicket/panels/HistoryPanel.html +++ b/src/com/gitblit/wicket/panels/HistoryPanel.html @@ -7,8 +7,8 @@ - -
[history header]
+ +
[commit header]
[breadcrumbs]
diff --git a/src/com/gitblit/wicket/panels/HistoryPanel.java b/src/com/gitblit/wicket/panels/HistoryPanel.java index 234e00ba..71ab9300 100644 --- a/src/com/gitblit/wicket/panels/HistoryPanel.java +++ b/src/com/gitblit/wicket/panels/HistoryPanel.java @@ -29,7 +29,6 @@ import com.gitblit.wicket.pages.BlobPage; import com.gitblit.wicket.pages.CommitDiffPage; import com.gitblit.wicket.pages.CommitPage; import com.gitblit.wicket.pages.HistoryPage; -import com.gitblit.wicket.pages.LogPage; import com.gitblit.wicket.pages.SearchPage; import com.gitblit.wicket.pages.TreePage; @@ -73,16 +72,7 @@ public class HistoryPanel extends BasePanel { // works unless commits.size() represents the exact end. hasMore = commits.size() >= itemsPerPage; - // header - if (pageResults) { - // history page - // show commit page link - add(new LinkPanel("header", "title", commit == null ? "" : commit.getShortMessage(), CommitPage.class, WicketUtils.newObjectParameter(repositoryName, objectId))); - } else { - // summary page - // show history page link - add(new LinkPanel("header", "title", new StringResourceModel("gb.history", this, null), LogPage.class, WicketUtils.newRepositoryParameter(repositoryName))); - } + add(new CommitHeaderPanel("commitHeader", repositoryName, commit)); // breadcrumbs add(new PathBreadcrumbsPanel("breadcrumbs", repositoryName, path, objectId)); diff --git a/src/com/gitblit/wicket/panels/PageLinksPanel.java b/src/com/gitblit/wicket/panels/PageLinksPanel.java index c2bae8fe..0f335010 100644 --- a/src/com/gitblit/wicket/panels/PageLinksPanel.java +++ b/src/com/gitblit/wicket/panels/PageLinksPanel.java @@ -27,6 +27,7 @@ import com.gitblit.utils.JGitUtils.SearchType; import com.gitblit.wicket.LinkPanel; import com.gitblit.wicket.WicketUtils; import com.gitblit.wicket.pages.BranchesPage; +import com.gitblit.wicket.pages.DocsPage; import com.gitblit.wicket.pages.LogPage; import com.gitblit.wicket.pages.SearchPage; import com.gitblit.wicket.pages.SummaryPage; @@ -72,7 +73,7 @@ public class PageLinksPanel extends Panel { // Get the repository docs setting boolean checkDocs = JGitUtils.getRepositoryUseDocs(r); - if (checkDocs && JGitUtils.getDocumentsBranch(r) != null) { + if (checkDocs) { extras.add("docs"); } @@ -87,7 +88,7 @@ public class PageLinksPanel extends Panel { item.add(new LinkPanel("extraLink", null, getString("gb.tickets"), TicketsPage.class, WicketUtils.newRepositoryParameter(repositoryName))); } else if (extra.equals("docs")) { item.add(new Label("extraSeparator", " | ")); - item.add(new LinkPanel("extraLink", null, getString("gb.docs"), TicketsPage.class, WicketUtils.newRepositoryParameter(repositoryName))); + item.add(new LinkPanel("extraLink", null, getString("gb.docs"), DocsPage.class, WicketUtils.newRepositoryParameter(repositoryName))); } } }; diff --git a/src/com/gitblit/wicket/resources/file_acrobat_16x16.png b/src/com/gitblit/wicket/resources/file_acrobat_16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..f1627837f7ab298d7570382068b431959ee50ee0 GIT binary patch literal 689 zcmV;i0#5yjP)Xa_e< zGkjrm6#qg#pYMK^$)pX#7;6`yQr7#fWLFh)$gbw>r>-?p<7q^rQJm=SPt;6v+)_^6 z0*)2VU>Ggxy8efO@8uF=T4ZqGimXhv&8y(<-Y>i}~JXlzv~*fb1q{|?CB!>#@3 z!v=@&c+iYg&&(Kg(aDAM#X)|pH(q40JO*l^AcjvT+z$R;GPh$AkDdZwz5(w(!U_ga z^ZRjb;1a6gj+TS=?o3%^J}=0d_mJ7IU{}YmK9WFqC5N*^mz9G6gxA<6pe{(0OpT-F z<3x2&-UT~<1~h&M;%5=Zuit_2`=rIWRH1#Qtr56A2332fKA$aOK2AZ*%)we%QuaR} z^yDGlKDdQ7vpUl_wg(fFlTt$nA=Nh_h5BtO77q@}HFU|1){9Y%Q*6R$JN8{S>>h3=kt@+_5_4Fm!wEqy)p zepPV0Urr;k_z4Ti8!)B1KwDL{d}%i+l}dA=Sahh`*@59x30qj(3FH4!R9tq7KLQK@ XN?he1cZD1n00000NkvXXu0mjf-`z0^ literal 0 HcmV?d00001 diff --git a/src/com/gitblit/wicket/resources/file_c_16x16.png b/src/com/gitblit/wicket/resources/file_c_16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..44045a9b6de5ca12e7322d75c9e2d8c4e0c2807b GIT binary patch literal 676 zcmV;V0$crwP)Bk zAMGZRZPVD)Y<7IJX?~a%4?g(rFthXC`^DnJuO6VUax)ZV*D84JZC!r?GZ#N(IhZhb;MPa_ahBR_1soO6xDT4=7@ zINu+QVk(n?s?n81f>wD^r?dfsVfdK}Ae#hS6|4O=x>T;L;z%s!sZ})Q!Y3rIzBbXf zt)d8;4&tu>%BpMYo&=E@f}yvs9|0Y>`)N1f+o*E112o^4BftR7&BIOJW+rt20000< KMNUMnLSTZ$9WV(1 literal 0 HcmV?d00001 diff --git a/src/com/gitblit/wicket/resources/file_code_16x16.png b/src/com/gitblit/wicket/resources/file_code_16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..931b0d6a79b2a8eaad94cffb6bdb4394af961a07 GIT binary patch literal 662 zcmV;H0%`q;P)QW%L^pd> zEc*YldcE%F3x!;_d`@vS__9zVU&KOfQT^pyS~izMGMU6a+diEy79VZ}XbyzXpzE71 z=h7JGSYBB{DwV>1+dfq&mGbQX0?o=f7vwAqcwVr+tFI3)D-}qM&So+o#wR)f{1yW) z#R>zO=3{Mr4Fl=4@|Ll`q!wW2WZtSlMRg{ zViMrhO3=`WK~*WcT!x5Pog%g~(8w)aMH^-KA4FpOnZE@< zs8a>Zr~!86Iqsi3fbp5HfGdw?fj3-?RBE_)axZpV4?w~ablFCOXkUDS8;*^_=T*F& zpND_zC?)<@H`BlEKp&Y#+~l}6G=NF|!tW3fEYRWG&kaOPhCoyLaILKiK+NE3j|w$+ zQQNejNq3In?#xFR#3-|;pM)y~0J2M$N;qTpqsP)QHTwxmqleO*EWB|6K9RlYVCwxG zdPon=*zB7ijS?{f)73fD#}3QOQDqOZ+1IgH?4T##1i5^D7Ac>gI)`U1xO4@c?p{{_ wM?ORmr)DgT4y)u=Nju4V@qbor4gLr)0EO+$D1?&zHUIzs07*qoM6N<$f>RqOw=Q50S0-aB_5KEb*} zAtI*vVc~}lVoD2xVKO>nF=v0{)I17mFZsL!Wi zD|-+O@_$)89_N9+KL1wv5}jMlS3O3UfF7H${$eex$M1)xX*l5VoC*YkcQzAb9Yv90 zv;Bow3uBUm>6sb0-EOpaJSY45`vYqU6l7m6NeY4G4@@(&zq`5`!;uJtM(u5Fpo)*J zBgmzwbSvp)foBO8lZ$9-Y_yPdFR!0vkic!;Y(iqj1{oR)VPVNLRQgPjG)sMsu}>-q&O3J+lXq^ZRhP z#(}*%TokQ9R#gnYpMvVh5U4UE5}eKvu=-08-cVbGz{`(FT=!C~hNT0w1YP%{2t{LX zstQ(q8#uAQ7K3kf6uT6Qh{B$tu5*MRzx9Qebc8ZvXBzZL3nvTCn=ahVPi5p`kbAF$ zg&+;0%TjV>849(qtk{K5Q*(5?j2k24XzzZ5Oeui3p)xO8io{%6n0rial<=8dz8T^} zi3*f!B^c8uQ9v?tdl6oZ>M*)nH_iT|@BqB6zA7>ORvYV!7oM9uc5qlPgws(7lQw6k zpF literal 0 HcmV?d00001 diff --git a/src/com/gitblit/wicket/resources/file_cs_16x16.png b/src/com/gitblit/wicket/resources/file_cs_16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..80130209e7f8be564489ee8bf19bbcd1a6987142 GIT binary patch literal 779 zcmV+m1N8ifP)k7sa20mnwDD+YlvFve!8Y&J8t zLZ{2c{{_F_&mB&ueJg)~&b7&xv2o%A#>OYKQC+KOwcBAfo3Y<&J?C(_+W!u)HjyL| zviyhYS_KmX%*@WhVzHpYYCY?8yB!+?NLZ^}5F{e|eV{0b{rucq^z`;Z)u^tf29)us zO##+jbaX4}rID`%SXy2}X-SF3b%<=U)RIUksz^`P(V-fFoXKW2t{@Uw#Y`xWD24Vj zO(qzm%^I*CubYQ=l;hHaci5SkMz=G3p9`X)VmlfRW+NPpYlgBY;L~gjm+$q%sF%tl zk-g|_JjR59NrqB1dekai_nmu5~WdzCSFrK$}6vT@pgANKY7E;jh0>eD1p6FOkr4z zsv@cVAVCFD6H@&!Qv9}W5O@2AU^K{DHtj={Hklp1+A`o!HCPUZAW;iV#$*hCn3lTH{ z4m z+kYVl0$Z)s{H^vA&%4f-#xlnW8p|uLm0VEqeH01>oG6vb)q4HGp9H;*F&dtigyaH6 zgyz~Bip3(vN~MXp`MGMEz@X=x$Z)8n0zGAi4(!K^rRNAaFHe+Vls%s%u(1M?VnwGq zLMCZ%V084Tix?vVSqrA`g>;`lDnH~A%F}N#`+7B&6tS{3bERg7d470MxB3LJXMtub zLxTphZ@$9%m+&|2xb`GZX$9$kHX;RQ?!1D!{0LJ^pRoJZB0e{Na{ds-8&9Ks{Zln% z0urIc;?3hAmV0c^b_72*@vXJttOR$@qQmnhkxdy3jysGhthpxF{rA|$wkBuZVe<4o zH{R}qNLesh3(!&F7+r3KORnN>8T+Uv$8m%DR`dq5_NbV1$1%?@r~Jc8D*HpUL_ z#Nk~d$u&|>I;AWmULqnp6WxTpcOf(Fah=rtO66rPmpdtPV#)F%bDqM~2g0+4__UdS qR6d^OH3PIR`o&Nl|A+2x0R{kT-^LxHiF2C(0000Dv5DFgQ8WrI(utwa z3VlC)_s+a=l!(5|;l2Cbz2~0qeBWh{GMS?7I1$fv;h{S8jDa%-#@Lb&BFZ_(=8(2+ zM-C;E_*X10F4j*>O{JAmsm&zZ^GfG_&d(DTke^>LPd(Q$oK7Pejbd*iadgeLM_f|6 zk-(QC1(aHcp6g(A;!>f2SS*HpiA0CvxcALQJs5{XIdje>fmN7YxAc8yLj#_TjX`^K zJe2||ZWm0!;z1&ygM8qSw(;Dei`3#A98mU)^% zG8w>uWE)j(bdC)T55EY9!_7uf`Cc%pf)WZr6{3EyD*d6`xA^V*0)+jEP)lUY-g)O;_GEqC>kkIGIEoNsGW3jrGX}<(v$DKwVOBh@)#87J zZQF6BS}o67&ncgLeA;XhTG(v1l2OlfJS>-CSr#soN^6x`?a`kE>4%g8N{ylCIvD40 zTo?I#9v4fc)oQ(7nIw=%PtLg{u>C|74ga59Ttwq}16t|z)ipg{nB(2$IW$fZg50+qRD&?BSq{W)ld(XA;nhZh{JFJbTQ-tv7vKy7wyH z33k!>*1gHc#XNx|C@MDewQ5o(5R*4NH94lIFnH3^hZDcXuxnITh+WsToj} zhIZm-Kh}zQs$lHFk+~cej^@$q*h8a~gfbMk&|7Fv7=$5d69yUh{tIf)rHDF>)A_On zgT1A&y~oh=w(z=9$Hy-jcsl_CGR|?oKHX@UR~@fQjTR=V7YI50f4GGC(d3r^0|2g* V(JTax@FM^K002ovPDHLkV1i7p8(;tc literal 0 HcmV?d00001 diff --git a/src/com/gitblit/wicket/resources/file_java_16x16.png b/src/com/gitblit/wicket/resources/file_java_16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..16620e5ce2b5396a6208f532f9bc8fa99d14e343 GIT binary patch literal 716 zcmV;-0yF)IP)Jol2mB9ij4K!Jh+B;WaZ_3h3q!=jm?#Ox#>ToRLYx+aG(~7j zhjvEV;l5#NOCZsc+gy!R^bcG&Ceqk3}PZ0jm4A6SLX@rjVw!WINBzB z0meCsdwU3lLYRz3?&{Yt^{4Lw+UoPfh6Zp--jMw4+aOq z@OgcmBFd0RhyDE$W%XlccNf|0I-E`?5i`hSK93s_nukCjfG%n=m(Q*7mO2gxx8^`m z0{E86z|eKdrXU;&+Rw}2aeM5iWLW!>LOT8Ru`K%TeBbNWMiGfbu)Vd7^^FY-gu|qd z1eeQ2Nn{+=YRImBLMoMBc=7z%GMk;7d++ghZZz%5GNj> zeLX!e#syfAU4RaL{rb)D=IuK;Uqo04OasFe(*O`?nQ?^S@$*j%guwi5OJF9fL@@xQ zSzk|%fmm?y(xY&AI(Yr&?f;-RI32+GFnN?{LRAi_ZLq!SPgY;0I*m^=tDg2Dir zR2hPEmN2MlYY`oYx36AfV0ruY?Pg#q^ZoVvKZ6h-Ggy#V@blZpU5r3l0f>be$OG>I a0t^6z6~Zq-y_0AF0000M6U<{ literal 0 HcmV?d00001 diff --git a/src/com/gitblit/wicket/resources/file_ppt_16x16.png b/src/com/gitblit/wicket/resources/file_ppt_16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..44bbf26ff7de7810fae69eff9a17d35e036f95a6 GIT binary patch literal 648 zcmV;30(bq1P)($wSX^Nt_$Sx|I}61|!GGY0U~xoFkSjz~&LXi81uKvHAy`Dw z97YhbyW`C4X0r!k;bR{&JM-q7@4fepc(T6!BTkaKNmCe<&HV|G5D-Fql~RU8WS0nu zs$uro4L@=m$MuWL%lMZK27^PdH#a*~%K5=uE|s0xFX$^uy7+xH=&C_;0wc_lXVI3)!mWOfdD=0t2= z_`E@OlPiAx_=(ea{-%f2)~I#iyvzI2e0K##&-hrLRF0Wkv3!xJ65z{&%lN$2w^$NK zZSh>HZ=V{>N`+WygYg(b(U6N=?5!Taj-;yiz173XyYJvR(WG#~e;G^0`}Wy-0pMzo zBSA7Dk3|1wb27DOw7O7B4j68o?2VE@JKoGL?Cv$lEw%Bd3_ z)VQ>PP6N@kjl3gf+DbboX5TUXH5$EK>voq?PuciIRBAX9&f~+ab2e1`<#~xLPF8-p i-8t)Z{GTO%1Q-C%wxRncD*yoi0000LwSsTGWf;(rkle}XOw663-`DP2~fP_nWCbyGoW(<};2Q>#gi*=bn2XTUcD&^Mk+(wMK};W>yTGF)+q-V z(P)gWR4Qeq)ZODCJPf0EH)@;Yb<{TNb~I~arE(eBY!;Ubg<{Y5Uuj}`6dY;!d-PTrP*nLg7vj1amfqQUjey^fTvNlCuO^>uCS{_&Ao{yoC-m?iGvX_AL_# zsemDe0K%97H)16Kf(Yz)I>=8^a58y@Kp-U-ET?o z$eGi23~pWmPtnA~0N`-WjHro}gLzXzy2zxhD4j*jagul|d-W&-TX%!KuLl_jWi=1rE1nItsYrn8GJ z@n(v;A7AHv{l2Zdhz=aS_x;{;p7WgN9O+dwx>>GNta`Ny9e*0XNnnx$Nsbm7LG(9~Ki| z;B0char_u|cJ^>S7^D~lD*0aw3~dd7LpbF=iP;Zxa5Xn09*>Jxx7&?bI;T?KpSWBn zP-9T5t}-+I2`-ap>u_At?@2BA0OBGcy@P7LK`k1?{6))h72uJGPwk&(}`~@D?&MU zTN`q@96l~AJpQ?!OEMVBiv{9ip>c8+O;m9v7KhL0Lpq&?zpD!YzaQCbR{U#gZM`%3 z{@qK)YSbx_##9#*C>D!|zJ7zgix-GZMkF^LZp7P(39%y&9zNQZo`%CQi^bAY<(sGL z^&KZLjdp>vkqCTdDklD)?(|L$h6YA?907dh{9WW${J(9I|1dAV1sDL*4CSl9?h3;I O0000KGX2re2UF+>cJbRh~B zqQn+_5L(;IZSQezZ$T6i<0N11oHKXk%=gW(zJY=7*<8*g3Rl3_baUfAJ@mP59y)SU{Yp#~{`5$f8`VC(JIT`L7xfp!rkw?COg zc;qXfAP=U0f_q{Yq`Delnx;}*LiZ{O%g*j;kMtA@SQTzP{D9D_1Z+G9_#3U>HV}>b z35cn8fJ%wkEaH{N0iq=g-mv#(BuKhjEV?2KW*@k4#1E9x&Xl$w-MJCku$x{bsWbt{ zxi*YmyaVma>|;%LLeq=uW$Gti;CgipRKQm@u7R0t^7|O9yvZy9loU0000S}G{8L`j4!5hJCr z-F4B{cE<}Vy0beooimL(kr4gxG5>$&{I`$qkZ0lWTu#%94PA!;yYYyC5&}ZV&$E@4 z9&BV!Lm}f|mPjOwuI}#OM){QeH=Xa1C_@a9Xw3Zbm|J@=2#?2uvOu7^D-`PZyMX10 zq5w%+2amZ40)?Wa;PrZOs4Q^dRk)|qUO6R;hSS=KS zYhaPdZ#M4%MpM94+TfyO9f41gR_M75hGPv(r8(GE5ZBh=$&LaMpQpBAJekGtWF2xj ziXRI{;V-F&%kc(_X(uDyU^iEp=K?Z`6wEhpquh_zgKjLYq!CT+Mr*Ie&ePcMZ^rop zr?AY#r6r?nlu~LOX*N-J2(&f{b3GU6#8?mY=&L2)H#TP`(` z$L;O!91h1poh#2$AAf-|(?U@mMQ2>XbB2t@v}njocOs0r$+l$6#ry2)D4*ZYP>lbx f8HQ=@{1RXQWZnwx-7p6>00000NkvXXu0mjfrodQi literal 0 HcmV?d00001 diff --git a/src/com/gitblit/wicket/resources/file_zip_16x16.png b/src/com/gitblit/wicket/resources/file_zip_16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..158459244ba514f1b6dd4f07c3329f02de90c853 GIT binary patch literal 593 zcmV-X0gnu>>pyLA&vN zwNQ;k;+r6S3gSaWS_3V#RFePY7m`356R8G8MCxl=d~PXzv=3!B3Q57d7LH=Au; z)7HD(z0A3H&YZn>mMNuR?EUt3hc^je8Uh^`( zQK_i7WwTkeRjo#A&+}BNTrTt^&;}95WZe4QgmHcl`55D zmw-oXVU$w9vO2!Hyo@*bJmH)%oL^iZnM`7OYU)LKbF)M^aFc=y3C=sdn9E^xX^HTM zBO}<`-^Y5P0Nb|B>CfrF*nUXCsezUyv9_{;#e5FFZtP?_P2RO2Z2oV8(2N41{b!?z zfx#hEw|4P(bR2#6@4>(J>AUR*gEXC<1V%w3A@Sj$hS#rN5?1?I!_4dquJqF#dsH7M z5W>>(6F55hgtzaG2^)4CJe`}<3e3cUe-lW_X%dZQ1CK^i)S9~cgD{f|0{lk-=U_TI z&M-cI`AXPidV(-BO2+xkp51C96V#tnDh03Z!Sh^T=DvdfQQmJza=WHXXNqvh@f?Od8n`Flc4j1;IF1hOfOok)*&ssbJgsQ4*j^h fHTB-(UjhsO70va`nLbf_00000NkvXXu0mjf!4DZe literal 0 HcmV?d00001 diff --git a/src/com/gitblit/wicket/resources/gitblit.css b/src/com/gitblit/wicket/resources/gitblit.css index 3200381b..ce3be676 100644 --- a/src/com/gitblit/wicket/resources/gitblit.css +++ b/src/com/gitblit/wicket/resources/gitblit.css @@ -72,20 +72,27 @@ div.repositories_message { line-height: inherit; } -div.header { +div.header, div.commitHeader { background-color: #D2C3AF; padding: 3px; border: 1px solid #808080; +} + +div.header { border-radius: 3px 3px 0 0; } -div.header a { +div.commitHeader { + border-radius: 3px; +} + +div.header a, div.commitHeader a { color: black; text-decoration: none; font-weight: bold; } -div.header a:hover { +div.header a:hover, div.commitHeader a:hover { text-decoration: underline; } @@ -558,14 +565,15 @@ span.sha1, span.sha1 a, span.sha1 a span { } td.mode { + text-align: right; font-family: monospace; - width:90px; + width: 8em; padding-right:15px; } td.size { text-align: right; - width:100px; + width: 8em; padding-right:15px; } @@ -573,6 +581,11 @@ td.rightAlign { text-align: right; } +td.treeLinks { + text-align: right; + width: 13em; +} + span .tagRef, span .headRef, span .remoteRef, span .otherRef { padding: 0px 3px; margin-right:2px; diff --git a/src/com/gitblit/wicket/resources/welcome.mkd b/src/com/gitblit/wicket/resources/welcome.mkd index a38cbb54..7f744068 100644 --- a/src/com/gitblit/wicket/resources/welcome.mkd +++ b/src/com/gitblit/wicket/resources/welcome.mkd @@ -2,4 +2,4 @@ A quick and easy way to host your own Git repositories. -Built with [JGit](http://eclipse.org/jgit) [Wicket](http://wicket.apache.org) [WicketStuff GoogleCharts](https://github.com/wicketstuff/core/wiki/GoogleCharts) [MarkdownPapers](http://markdown.tautua.org) [Jetty](http://eclipse.org/jetty) [SLF4J](http://www.slf4j.org) [Log4j](http://logging.apache.org/log4j) [google-code-prettify](http://code.google.com/p/google-code-prettify) [JCommander](http://jcommander.org) \ No newline at end of file +Built with [JGit](http://eclipse.org/jgit), [Wicket](http://wicket.apache.org), [WicketStuff GoogleCharts](https://github.com/wicketstuff/core/wiki/GoogleCharts), [markitup](http://markitup.jaysalvat.com), [MarkdownPapers](http://markdown.tautua.org), [Jetty](http://eclipse.org/jetty), [SLF4J](http://www.slf4j.org), [Log4j](http://logging.apache.org/log4j), [google-code-prettify](http://code.google.com/p/google-code-prettify), [JCommander](http://jcommander.org), Most icons courtesy of [FatCow Hosting](http://www.fatcow.com/free-icons) \ No newline at end of file -- 2.39.5