From fc948cacef9c9b8c0a1e84cbc082ca67cd5f68d9 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Thu, 14 Apr 2011 18:29:10 -0400 Subject: [PATCH] Authenticate the webapp against the same realm as the git servlet. --- src/com/gitblit/wicket/BasePage.java | 67 +++++++++------------------------ 1 files changed, 18 insertions(+), 49 deletions(-) diff --git a/src/com/gitblit/wicket/BasePage.java b/src/com/gitblit/wicket/BasePage.java index a1cd413..8084b33 100644 --- a/src/com/gitblit/wicket/BasePage.java +++ b/src/com/gitblit/wicket/BasePage.java @@ -1,10 +1,9 @@ package com.gitblit.wicket; -import java.util.Date; +import java.util.TimeZone; import javax.servlet.http.HttpServletRequest; -import org.apache.wicket.Component; import org.apache.wicket.PageParameters; import org.apache.wicket.markup.html.WebPage; import org.apache.wicket.markup.html.basic.Label; @@ -14,9 +13,7 @@ import com.gitblit.Constants; import com.gitblit.StoredSettings; -import com.gitblit.utils.Utils; import com.gitblit.wicket.pages.SummaryPage; - public abstract class BasePage extends WebPage { @@ -37,16 +34,30 @@ add(new Label("title", getServerName())); } // header - add(new Label("siteName", StoredSettings.getString("siteName", Constants.NAME))); - add(new LinkPanel("repositoryName", null, repositoryName, SummaryPage.class, new PageParameters("p=" + repositoryName))); + String siteName = StoredSettings.getString("siteName", Constants.NAME); + if (siteName == null || siteName.trim().length() == 0) { + siteName = Constants.NAME; + } + add(new Label("siteName", siteName)); + add(new LinkPanel("repositoryName", null, repositoryName, SummaryPage.class, WicketUtils.newRepositoryParameter(repositoryName))); add(new Label("pageName", pageName)); // footer - add(new Label("footerText", "")); + User user = null; + if (StoredSettings.getBoolean("authenticateWebUI", true)) { + user = GitBlitWebSession.get().getUser(); + add(new Label("userText", "Logout " + user.toString())); + } else { + add(new Label("userText", "")); + } add(new Label("gbVersion", "v" + Constants.VERSION)); if (StoredSettings.getBoolean("aggressiveHeapManagement", false)) { System.gc(); } + } + + protected TimeZone getTimeZone() { + return StoredSettings.getBoolean("useClientTimezone", false) ? GitBlitWebSession.get().getTimezone() : TimeZone.getDefault(); } protected String getServerName() { @@ -54,49 +65,7 @@ HttpServletRequest req = servletWebRequest.getHttpServletRequest(); return req.getServerName(); } - - protected Label createAuthorLabel(String wicketId, String author) { - Label label = new Label(wicketId, author); - WicketUtils.setHtmlTitle(label, author); - return label; - } - - protected Label createDateLabel(String wicketId, Date date) { - Label label = new Label(wicketId, GitBlitWebSession.get().formatDate(date)); - WicketUtils.setCssClass(label, Utils.timeAgoCss(date)); - WicketUtils.setHtmlTitle(label, Utils.timeAgo(date)); - return label; - } - - protected Label createShortlogDateLabel(String wicketId, Date date) { - String dateString = GitBlitWebSession.get().formatDate(date); - String title = Utils.timeAgo(date); - if ((System.currentTimeMillis() - date.getTime()) < 10 * 24 * 60 * 60 * 1000l) { - dateString = title; - title = GitBlitWebSession.get().formatDate(date); - } - Label label = new Label(wicketId, dateString); - WicketUtils.setCssClass(label, Utils.timeAgoCss(date)); - WicketUtils.setHtmlTitle(label, title); - return label; - } - - protected void setAlternatingBackground(Component c, int i) { - String clazz = i % 2 == 0 ? "dark" : "light"; - WicketUtils.setCssClass(c, clazz); - } - - protected String trimShortLog(String string) { - return trimString(string, 60); - } - protected String trimString(String value, int max) { - if (value.length() <= max) { - return value; - } - return value.substring(0, max - 3) + "..."; - } - public void error(String message, Throwable t) { super.error(message); logger.error(message, t); -- Gitblit v1.9.1