diff options
author | mallowlabs <mallowlabs@gmail.com> | 2012-09-09 00:00:01 +0900 |
---|---|---|
committer | mallowlabs <mallowlabs@gmail.com> | 2012-09-09 00:00:03 +0900 |
commit | 1684e001f76fae8675defb81fc993efea766f110 (patch) | |
tree | c62be07efb25aba70ba33fec1b6394a4e408e1c1 /src/com/gitblit/RedmineUserService.java | |
parent | 7cb82b858b853ef3d09d85853573ec91b038547a (diff) | |
download | gitblit-1684e001f76fae8675defb81fc993efea766f110.tar.gz gitblit-1684e001f76fae8675defb81fc993efea766f110.zip |
Fixed non admin user could not login with Redmine
Diffstat (limited to 'src/com/gitblit/RedmineUserService.java')
-rw-r--r-- | src/com/gitblit/RedmineUserService.java | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/com/gitblit/RedmineUserService.java b/src/com/gitblit/RedmineUserService.java index 47bb80a5..b890f21b 100644 --- a/src/com/gitblit/RedmineUserService.java +++ b/src/com/gitblit/RedmineUserService.java @@ -86,15 +86,20 @@ public class RedmineUserService extends GitblitUserService { 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;
- userModel.cookie = StringUtils.getSHA1(userModel.username + new String(password));
- 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);
}
|