From 9af47c10c6a268877c1d232c8d71ee6df4f8a7ab Mon Sep 17 00:00:00 2001
From: Jeroen Baten <jeroen@jeroenbaten.nl>
Date: Fri, 04 Jan 2013 05:18:37 -0500
Subject: [PATCH] Dutch translation before spellcheck

---
 src/com/gitblit/RedmineUserService.java |   24 +++++++++++++-----------
 1 files changed, 13 insertions(+), 11 deletions(-)

diff --git a/src/com/gitblit/RedmineUserService.java b/src/com/gitblit/RedmineUserService.java
index 6ff61c7..b890f21 100644
--- a/src/com/gitblit/RedmineUserService.java
+++ b/src/com/gitblit/RedmineUserService.java
@@ -11,6 +11,7 @@
 
 import com.gitblit.models.UserModel;
 import com.gitblit.utils.ConnectionUtils;
+import com.gitblit.utils.StringUtils;
 import com.google.gson.Gson;
 
 /**
@@ -72,11 +73,6 @@
     }
 
     @Override
-    public boolean supportsCookies() {
-        return false;
-    }
-
-    @Override
     public UserModel authenticate(String username, char[] password) {
         String urlText = this.settings.getString(Keys.realm.redmine.url, "");
         if (!urlText.endsWith("/")) {
@@ -90,14 +86,20 @@
             RedmineCurrent current = new Gson().fromJson(jsonString, RedmineCurrent.class);
             String login = current.user.login;
 
-            if (username.equalsIgnoreCase(login)) {
-                UserModel userModel = new UserModel(login);
-                userModel.displayName = current.user.firstname + " " + current.user.lastname;
-                userModel.emailAddress = current.user.mail;
-                userModel.canAdmin = true;
-                return userModel;
+            boolean canAdmin = true;
+            // non admin user can not get login name
+            if (StringUtils.isEmpty(login)) {
+                canAdmin = false;
+                login = current.user.mail;
             }
 
+            UserModel userModel = new UserModel(login);
+            userModel.canAdmin = canAdmin;
+            userModel.displayName = current.user.firstname + " " + current.user.lastname;
+            userModel.emailAddress = current.user.mail;
+            userModel.cookie = StringUtils.getSHA1(userModel.username + new String(password));
+
+            return userModel;
         } catch (IOException e) {
             logger.error("authenticate", e);
         }

--
Gitblit v1.9.1