From: James Moger Date: Fri, 22 Apr 2011 01:46:47 +0000 (-0400) Subject: Use markdown for welcome message. Simplify login page appearance. X-Git-Tag: v0.5.0~68 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=c3f4f124f1b9e45d7696f3c16f958d1c81ff280a;p=gitblit.git Use markdown for welcome message. Simplify login page appearance. --- diff --git a/gitblit.properties b/gitblit.properties index 48515a15..427a9d52 100644 --- a/gitblit.properties +++ b/gitblit.properties @@ -47,8 +47,9 @@ web.siteName = web.allowAdministration = true # This is the message display above the repositories table. -# This can point to a file with HTML content. -web.repositoriesMessage = Welcome to Git:Blit!
A quick and easy way to host your own Git repositories.
Built with JGit, Wicket, WicketStuff googlecharts, MarkdownPapers, Jetty, SLF4J, Log4j, google-code-prettify, and JCommander. +# This can point to a file with Markdown content. +# specifying "gitblit" uses the internal welcome message. +web.repositoriesMessage = gitblit # Use the client timezone when formatting dates. # This uses AJAX to determine the browser's timezone and enables Wicket diff --git a/src/com/gitblit/wicket/LoginPage.html b/src/com/gitblit/wicket/LoginPage.html index 41e2a267..f38e01dd 100644 --- a/src/com/gitblit/wicket/LoginPage.html +++ b/src/com/gitblit/wicket/LoginPage.html @@ -15,11 +15,11 @@
-
+
- Git:Blit
+ Git:Blit
- [name]
+
[name]
diff --git a/src/com/gitblit/wicket/pages/RepositoriesPage.html b/src/com/gitblit/wicket/pages/RepositoriesPage.html index 9bcb9b80..798836e0 100644 --- a/src/com/gitblit/wicket/pages/RepositoriesPage.html +++ b/src/com/gitblit/wicket/pages/RepositoriesPage.html @@ -3,12 +3,17 @@ xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.3-strict.dtd" xml:lang="en" lang="en"> + + + + +
[admin links]
-
[repositories message]
+
[repositories message]
diff --git a/src/com/gitblit/wicket/pages/RepositoriesPage.java b/src/com/gitblit/wicket/pages/RepositoriesPage.java index a0f7299f..3ab63667 100644 --- a/src/com/gitblit/wicket/pages/RepositoriesPage.java +++ b/src/com/gitblit/wicket/pages/RepositoriesPage.java @@ -1,10 +1,16 @@ package com.gitblit.wicket.pages; +import java.io.File; +import java.io.FileReader; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.StringWriter; import java.util.Collections; import java.util.Comparator; import java.util.Iterator; import java.util.List; +import org.apache.wicket.Component; import org.apache.wicket.PageParameters; import org.apache.wicket.extensions.markup.html.repeater.data.sort.OrderByBorder; import org.apache.wicket.extensions.markup.html.repeater.util.SortParam; @@ -16,9 +22,12 @@ import org.apache.wicket.markup.repeater.Item; import org.apache.wicket.markup.repeater.data.DataView; import org.apache.wicket.model.IModel; import org.apache.wicket.model.Model; +import org.apache.wicket.resource.ContextRelativeResource; +import org.tautua.markdownpapers.Markdown; import com.gitblit.GitBlit; import com.gitblit.Keys; +import com.gitblit.utils.StringUtils; import com.gitblit.utils.TimeUtils; import com.gitblit.wicket.BasePage; import com.gitblit.wicket.GitBlitWebSession; @@ -45,7 +54,52 @@ public class RepositoriesPage extends BasePage { adminLinks.add(new BookmarkablePageLink("newUser", RepositoriesPage.class)); add(adminLinks.setVisible(showAdmin)); - add(new Label("repositoriesMessage", GitBlit.self().settings().getString(Keys.web.repositoriesMessage, "")).setEscapeModelStrings(false)); + // Load the markdown welcome message + String messageSource = GitBlit.self().settings().getString(Keys.web.repositoriesMessage, "gitblit"); + String message = ""; + if (messageSource.equalsIgnoreCase("gitblit")) { + // Read default welcome message + try { + ContextRelativeResource res = new ContextRelativeResource("/com/gitblit/wicket/resources/welcome.mkd"); + InputStream is = res.getResourceStream().getInputStream(); + InputStreamReader reader = new InputStreamReader(is); + StringWriter writer = new StringWriter(); + Markdown markdown = new Markdown(); + markdown.transform(reader, writer); + message = writer.toString().trim(); + reader.close(); + writer.close(); + } catch (Throwable t) { + message = "Failed to read default welcome message!"; + error(message, t); + } + } else { + // Read user-supplied welcome message + if (!StringUtils.isEmpty(messageSource)) { + File file = new File(messageSource); + if (file.exists()) { + try { + FileReader reader = new FileReader(file); + StringWriter writer = new StringWriter(); + Markdown markdown = new Markdown(); + markdown.transform(reader, writer); + message = writer.toString().trim(); + reader.close(); + writer.close(); + } catch (Throwable t) { + message = "Failed to read " + file; + error(message, t); + } + } else { + message = messageSource + " is not a valid file."; + } + } + } + Component repositoriesMessage = new Label("repositoriesMessage", message).setEscapeModelStrings(false); + if (!showAdmin) { + WicketUtils.setCssStyle(repositoriesMessage, "padding-top:10px"); + } + add(repositoriesMessage); List rows = GitBlit.self().getRepositories(getRequest()); DataProvider dp = new DataProvider(rows); diff --git a/src/com/gitblit/wicket/resources/welcome.mkd b/src/com/gitblit/wicket/resources/welcome.mkd new file mode 100644 index 00000000..a38cbb54 --- /dev/null +++ b/src/com/gitblit/wicket/resources/welcome.mkd @@ -0,0 +1,5 @@ +## Welcome to Git:Blit ## + +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