From c8a833a2ea7d03a5c29ebcd1cf7e2e05c96f3e70 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Sat, 01 Mar 2014 09:21:32 -0500 Subject: [PATCH] Add the No Docs page if there are no root documents --- src/main/java/com/gitblit/wicket/pages/DocsPage.java | 3 + src/main/java/com/gitblit/wicket/pages/NoDocsPage.java | 39 +++++++++++++++++++ src/main/resources/gitblit.css | 12 ++++++ src/main/java/com/gitblit/wicket/GitBlitWebApp.properties | 3 + src/main/java/com/gitblit/wicket/pages/NoDocsPage.html | 22 +++++++++++ 5 files changed, 78 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/gitblit/wicket/GitBlitWebApp.properties b/src/main/java/com/gitblit/wicket/GitBlitWebApp.properties index 23cb649..8f3a6aa 100644 --- a/src/main/java/com/gitblit/wicket/GitBlitWebApp.properties +++ b/src/main/java/com/gitblit/wicket/GitBlitWebApp.properties @@ -509,3 +509,6 @@ gb.isMirror = this repository is a mirror gb.mirrorOf = mirror of {0} gb.mirrorWarning = this repository is a mirror and can not receive pushes +gb.docsWelcome1 = You can use docs to document your repository. +gb.docsWelcome2 = Commit a README.md or a HOME.md file to get started. +gb.createReadme = create a README \ No newline at end of file diff --git a/src/main/java/com/gitblit/wicket/pages/DocsPage.java b/src/main/java/com/gitblit/wicket/pages/DocsPage.java index 85c19e2..907dd6e 100644 --- a/src/main/java/com/gitblit/wicket/pages/DocsPage.java +++ b/src/main/java/com/gitblit/wicket/pages/DocsPage.java @@ -59,8 +59,9 @@ List<MarkupDocument> roots = processor.getRootDocs(r, repositoryName, commitId); Fragment fragment = null; if (roots.isEmpty()) { - // no identified root documents just show the standard document list + // no identified root documents fragment = new Fragment("docs", "noIndexFragment", this); + setResponsePage(NoDocsPage.class, params); } else { // root documents, use tabbed ui of index/root and document list fragment = new Fragment("docs", "tabsFragment", this); diff --git a/src/main/java/com/gitblit/wicket/pages/NoDocsPage.html b/src/main/java/com/gitblit/wicket/pages/NoDocsPage.html new file mode 100644 index 0000000..0672e94 --- /dev/null +++ b/src/main/java/com/gitblit/wicket/pages/NoDocsPage.html @@ -0,0 +1,22 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" + xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.3-strict.dtd" + xml:lang="en" + lang="en"> + +<wicket:extend> + <!-- No tickets --> + <div class="featureWelcome"> + <div class="row"> + <div class="icon span2"><i class="fa fa-book"></i></div> + <div class="span9"> + <h1><wicket:message key="gb.docs"></wicket:message></h1> + <p><wicket:message key="gb.docsWelcome1"></wicket:message></p> + <p><wicket:message key="gb.docsWelcome2"></wicket:message></p> + <p></p> + <!-- <a wicket:id="newreadme" class="btn btn-appmenu"><wicket:message key="gb.createReadme"></wicket:message></a>--> + </div> + </div> + </div> +</wicket:extend> +</html> \ No newline at end of file diff --git a/src/main/java/com/gitblit/wicket/pages/NoDocsPage.java b/src/main/java/com/gitblit/wicket/pages/NoDocsPage.java new file mode 100644 index 0000000..868e5d0 --- /dev/null +++ b/src/main/java/com/gitblit/wicket/pages/NoDocsPage.java @@ -0,0 +1,39 @@ +/* + * Copyright 2014 gitblit.com. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.gitblit.wicket.pages; + +import org.apache.wicket.PageParameters; + +public class NoDocsPage extends RepositoryPage { + + public NoDocsPage(PageParameters params) { + super(params); + + //UserModel user = GitBlitWebSession.get().getUser(); + //boolean isAuthenticated = user != null && user.isAuthenticated; + //add(new BookmarkablePageLink<Void>("newreadme", NewTicketPage.class, WicketUtils.newRepositoryParameter(repositoryName)).setVisible(isAuthenticated)); + } + + @Override + protected String getPageName() { + return getString("gb.docs"); + } + + @Override + protected Class<? extends BasePage> getRepoNavPageClass() { + return DocsPage.class; + } +} diff --git a/src/main/resources/gitblit.css b/src/main/resources/gitblit.css index 91825f7..cd5c57b 100644 --- a/src/main/resources/gitblit.css +++ b/src/main/resources/gitblit.css @@ -520,6 +520,18 @@ text-align: left; } +div.featureWelcome { + padding: 15px; + background-color: #fbfbfb; + border: 1px solid #ccc; + border-radius: 5px; +} + +div.featureWelcome div.icon { + color: #ccc; + font-size: 144px; +} + div.sourceview { overflow: hidden; } -- Gitblit v1.9.1