diff options
author | James Moger <james.moger@gitblit.com> | 2014-06-16 17:36:12 -0400 |
---|---|---|
committer | James Moger <james.moger@gitblit.com> | 2014-06-16 17:36:12 -0400 |
commit | 6b18b0761b726fd9aef1ebcc21b760378f7d4b5c (patch) | |
tree | 4bdb208cede00e637ce4704d942aa045f5af5ed9 /src/main/java/com/gitblit/ConfigUserService.java | |
parent | 07eb0963cae3a403f8774f65afa20c940ce7124f (diff) | |
parent | 9b575e8fac8d5e17e77cc284092abd856ddec8ac (diff) | |
download | gitblit-6b18b0761b726fd9aef1ebcc21b760378f7d4b5c.tar.gz gitblit-6b18b0761b726fd9aef1ebcc21b760378f7d4b5c.zip |
Merge release 1.6.0
Diffstat (limited to 'src/main/java/com/gitblit/ConfigUserService.java')
-rw-r--r-- | src/main/java/com/gitblit/ConfigUserService.java | 29 |
1 files changed, 26 insertions, 3 deletions
diff --git a/src/main/java/com/gitblit/ConfigUserService.java b/src/main/java/com/gitblit/ConfigUserService.java index 9b4dd7f1..d7d6c14f 100644 --- a/src/main/java/com/gitblit/ConfigUserService.java +++ b/src/main/java/com/gitblit/ConfigUserService.java @@ -24,6 +24,7 @@ import java.util.Collection; import java.util.Collections;
import java.util.HashSet;
import java.util.List;
+import java.util.Locale;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
@@ -36,6 +37,7 @@ import org.slf4j.LoggerFactory; import com.gitblit.Constants.AccessPermission;
import com.gitblit.Constants.AccountType;
+import com.gitblit.Constants.Transport;
import com.gitblit.manager.IRuntimeManager;
import com.gitblit.models.TeamModel;
import com.gitblit.models.UserModel;
@@ -96,6 +98,10 @@ public class ConfigUserService implements IUserService { private static final String LOCALE = "locale";
+ private static final String EMAILONMYTICKETCHANGES = "emailMeOnMyTicketChanges";
+
+ private static final String TRANSPORT = "transport";
+
private static final String ACCOUNTTYPE = "accountType";
private static final String DISABLED = "disabled";
@@ -707,8 +713,21 @@ public class ConfigUserService implements IUserService { config.setBoolean(USER, model.username, DISABLED, true);
}
if (model.getPreferences() != null) {
- if (!StringUtils.isEmpty(model.getPreferences().locale)) {
- config.setString(USER, model.username, LOCALE, model.getPreferences().locale);
+ Locale locale = model.getPreferences().getLocale();
+ if (locale != null) {
+ String val;
+ if (StringUtils.isEmpty(locale.getCountry())) {
+ val = locale.getLanguage();
+ } else {
+ val = locale.getLanguage() + "_" + locale.getCountry();
+ }
+ config.setString(USER, model.username, LOCALE, val);
+ }
+
+ config.setBoolean(USER, model.username, EMAILONMYTICKETCHANGES, model.getPreferences().isEmailMeOnMyTicketChanges());
+
+ if (model.getPreferences().getTransport() != null) {
+ config.setString(USER, model.username, TRANSPORT, model.getPreferences().getTransport().name());
}
}
@@ -880,11 +899,15 @@ public class ConfigUserService implements IUserService { user.stateProvince = config.getString(USER, username, STATEPROVINCE);
user.countryCode = config.getString(USER, username, COUNTRYCODE);
user.cookie = config.getString(USER, username, COOKIE);
- user.getPreferences().locale = config.getString(USER, username, LOCALE);
if (StringUtils.isEmpty(user.cookie) && !StringUtils.isEmpty(user.password)) {
user.cookie = StringUtils.getSHA1(user.username + user.password);
}
+ // preferences
+ user.getPreferences().setLocale(config.getString(USER, username, LOCALE));
+ user.getPreferences().setEmailMeOnMyTicketChanges(config.getBoolean(USER, username, EMAILONMYTICKETCHANGES, true));
+ user.getPreferences().setTransport(Transport.fromString(config.getString(USER, username, TRANSPORT)));
+
// user roles
Set<String> roles = new HashSet<String>(Arrays.asList(config.getStringList(
USER, username, ROLE)));
|