From a502d96a860456ec5e8c96761db70f7cabb74751 Mon Sep 17 00:00:00 2001 From: Paul Martin <paul@paulsputer.com> Date: Sat, 30 Apr 2016 04:19:14 -0400 Subject: [PATCH] Merge pull request #1073 from gitblit/1062-DocEditorUpdates --- src/main/java/com/gitblit/wicket/GitBlitWebSession.java | 33 +++++++++++++++++++-------------- 1 files changed, 19 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/gitblit/wicket/GitBlitWebSession.java b/src/main/java/com/gitblit/wicket/GitBlitWebSession.java index 5195a1f..31ccf1f 100644 --- a/src/main/java/com/gitblit/wicket/GitBlitWebSession.java +++ b/src/main/java/com/gitblit/wicket/GitBlitWebSession.java @@ -15,6 +15,7 @@ */ package com.gitblit.wicket; +import java.util.Locale; import java.util.Map; import java.util.TimeZone; import java.util.concurrent.atomic.AtomicBoolean; @@ -29,7 +30,6 @@ import org.apache.wicket.protocol.http.WebSession; import org.apache.wicket.protocol.http.request.WebClientInfo; -import com.gitblit.Constants.AuthenticationType; import com.gitblit.models.UserModel; public final class GitBlitWebSession extends WebSession { @@ -41,27 +41,25 @@ private UserModel user; private String errorMessage; - + private String requestUrl; - + private AtomicBoolean isForking; - - public AuthenticationType authenticationType; - + public GitBlitWebSession(Request request) { super(request); isForking = new AtomicBoolean(); - authenticationType = AuthenticationType.CREDENTIALS; } + @Override public void invalidate() { super.invalidate(); user = null; } - + /** * Cache the requested protected resource pending successful authentication. - * + * * @param pageClass */ public void cacheRequest(Class<? extends Page> pageClass) { @@ -80,14 +78,14 @@ bind(); } } - + /** * Continue any cached request. This is used when a request for a protected * resource is aborted/redirected pending proper authentication. Gitblit * no longer uses Wicket's built-in mechanism for this because of Wicket's * failure to properly handle parameters with forward-slashes. This is a * constant source of headaches with Wicket. - * + * * @return false if there is no cached request to process */ public boolean continueRequest() { @@ -109,7 +107,7 @@ } return user.canAdmin(); } - + public String getUsername() { return user == null ? "anonymous" : user.username; } @@ -120,6 +118,13 @@ public void setUser(UserModel user) { this.user = user; + if (user != null) { + Locale preferredLocale = user.getPreferences().getLocale(); + if (preferredLocale != null) { + // set the user's preferred locale + setLocale(preferredLocale); + } + } } public TimeZone getTimezone() { @@ -142,11 +147,11 @@ errorMessage = null; return msg; } - + public boolean isForking() { return isForking.get(); } - + public void isForking(boolean val) { isForking.set(val); } -- Gitblit v1.9.1