From cbe6840efecf87e53a687cdce6fbdf84c6ab8a46 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Thu, 19 Sep 2013 08:40:59 -0400
Subject: [PATCH] Documentation
---
src/main/java/com/gitblit/wicket/pages/RootPage.java | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 57 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/gitblit/wicket/pages/RootPage.java b/src/main/java/com/gitblit/wicket/pages/RootPage.java
index f4ac907..ec4e9b4 100644
--- a/src/main/java/com/gitblit/wicket/pages/RootPage.java
+++ b/src/main/java/com/gitblit/wicket/pages/RootPage.java
@@ -33,6 +33,9 @@
import org.apache.wicket.MarkupContainer;
import org.apache.wicket.PageParameters;
+import org.apache.wicket.behavior.HeaderContributor;
+import org.apache.wicket.markup.html.IHeaderContributor;
+import org.apache.wicket.markup.html.IHeaderResponse;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.form.PasswordTextField;
import org.apache.wicket.markup.html.form.TextField;
@@ -48,6 +51,7 @@
import com.gitblit.models.RepositoryModel;
import com.gitblit.models.TeamModel;
import com.gitblit.models.UserModel;
+import com.gitblit.utils.ModelUtils;
import com.gitblit.utils.StringUtils;
import com.gitblit.wicket.GitBlitWebSession;
import com.gitblit.wicket.PageRegistration;
@@ -83,6 +87,50 @@
@Override
protected void setupPage(String repositoryName, String pageName) {
+
+ // CSS header overrides
+ add(new HeaderContributor(new IHeaderContributor() {
+ private static final long serialVersionUID = 1L;
+
+ public void renderHead(IHeaderResponse response) {
+ StringBuilder buffer = new StringBuilder();
+ buffer.append("<style type=\"text/css\">\n");
+ buffer.append(".navbar-inner {\n");
+ final String headerBackground = GitBlit.getString(Keys.web.headerBackgroundColor, null);
+ if (!StringUtils.isEmpty(headerBackground)) {
+ buffer.append(MessageFormat.format("background-color: {0};\n", headerBackground));
+ }
+ final String headerBorder = GitBlit.getString(Keys.web.headerBorderColor, null);
+ if (!StringUtils.isEmpty(headerBorder)) {
+ buffer.append(MessageFormat.format("border-bottom: 1px solid {0} !important;\n", headerBorder));
+ }
+ buffer.append("}\n");
+ final String headerBorderFocus = GitBlit.getString(Keys.web.headerBorderFocusColor, null);
+ if (!StringUtils.isEmpty(headerBorderFocus)) {
+ buffer.append(".navbar ul li:focus, .navbar .active {\n");
+ buffer.append(MessageFormat.format("border-bottom: 4px solid {0};\n", headerBorderFocus));
+ buffer.append("}\n");
+ }
+ final String headerForeground = GitBlit.getString(Keys.web.headerForegroundColor, null);
+ if (!StringUtils.isEmpty(headerForeground)) {
+ buffer.append(".navbar ul.nav li a {\n");
+ buffer.append(MessageFormat.format("color: {0};\n", headerForeground));
+ buffer.append("}\n");
+ buffer.append(".navbar ul.nav .active a {\n");
+ buffer.append(MessageFormat.format("color: {0};\n", headerForeground));
+ buffer.append("}\n");
+ }
+ final String headerHover = GitBlit.getString(Keys.web.headerHoverColor, null);
+ if (!StringUtils.isEmpty(headerHover)) {
+ buffer.append(".navbar ul.nav li a:hover {\n");
+ buffer.append(MessageFormat.format("color: {0} !important;\n", headerHover));
+ buffer.append("}\n");
+ }
+ buffer.append("</style>\n");
+ response.renderString(buffer.toString());
+ }
+ }));
+
boolean authenticateView = GitBlit.getBoolean(Keys.web.authenticateViewPages, false);
boolean authenticateAdmin = GitBlit.getBoolean(Keys.web.authenticateAdminPages, true);
boolean allowAdmin = GitBlit.getBoolean(Keys.web.allowAdministration, true);
@@ -298,8 +346,12 @@
protected List<DropDownMenuItem> getTimeFilterItems(PageParameters params) {
// days back choices - additive parameters
int daysBack = GitBlit.getInteger(Keys.web.activityDuration, 7);
+ int maxDaysBack = GitBlit.getInteger(Keys.web.activityDurationMaximum, 30);
if (daysBack < 1) {
daysBack = 7;
+ }
+ if (daysBack > maxDaysBack) {
+ daysBack = maxDaysBack;
}
PageParameters clonedParams;
if (params == null) {
@@ -342,7 +394,7 @@
String userName = WicketUtils.getUsername(params);
if (StringUtils.isEmpty(projectName)) {
if (!StringUtils.isEmpty(userName)) {
- projectName = "~" + userName;
+ projectName = ModelUtils.getPersonalPath(userName);
}
}
String repositoryName = WicketUtils.getRepositoryName(params);
@@ -350,6 +402,7 @@
String regex = WicketUtils.getRegEx(params);
String team = WicketUtils.getTeam(params);
int daysBack = params.getInt("db", 0);
+ int maxDaysBack = GitBlit.getInteger(Keys.web.activityDurationMaximum, 30);
List<RepositoryModel> availableModels = getRepositoryModels();
Set<RepositoryModel> models = new HashSet<RepositoryModel>();
@@ -440,6 +493,9 @@
// time-filter the list
if (daysBack > 0) {
+ if (maxDaysBack > 0 && daysBack > maxDaysBack) {
+ daysBack = maxDaysBack;
+ }
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
--
Gitblit v1.9.1