From 7847af6e63e7adef6ec8d99a1809e91472d2bc2d Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Thu, 05 Sep 2013 09:14:22 -0400 Subject: [PATCH] Restore blockpush and localclone hooks to binaries (issue-303) --- src/main/java/com/gitblit/ConfigUserService.java | 27 +++++++++++++++++++++++++++ 1 files changed, 27 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/gitblit/ConfigUserService.java b/src/main/java/com/gitblit/ConfigUserService.java index 7aa0998..8a6c92f 100644 --- a/src/main/java/com/gitblit/ConfigUserService.java +++ b/src/main/java/com/gitblit/ConfigUserService.java @@ -37,6 +37,7 @@ import com.gitblit.Constants.AccessPermission; import com.gitblit.models.TeamModel; import com.gitblit.models.UserModel; +import com.gitblit.models.UserRepositoryPreferences; import com.gitblit.utils.ArrayUtils; import com.gitblit.utils.DeepCopier; import com.gitblit.utils.StringUtils; @@ -88,6 +89,10 @@ private static final String PRERECEIVE = "preReceiveScript"; private static final String POSTRECEIVE = "postReceiveScript"; + + private static final String STARRED = "starred"; + + private static final String LOCALE = "locale"; private final File realmFile; @@ -846,6 +851,11 @@ if (!StringUtils.isEmpty(model.countryCode)) { config.setString(USER, model.username, COUNTRYCODE, model.countryCode); } + if (model.getPreferences() != null) { + if (!StringUtils.isEmpty(model.getPreferences().locale)) { + config.setString(USER, model.username, LOCALE, model.getPreferences().locale); + } + } // user roles List<String> roles = new ArrayList<String>(); @@ -878,6 +888,14 @@ } } config.setStringList(USER, model.username, REPOSITORY, permissions); + } + + // user preferences + if (model.getPreferences() != null) { + List<String> starred = model.getPreferences().getStarredRepositories(); + if (starred.size() > 0) { + config.setStringList(USER, model.username, STARRED, starred); + } } } @@ -999,6 +1017,7 @@ 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); } @@ -1021,6 +1040,14 @@ } } + // starred repositories + Set<String> starred = new HashSet<String>(Arrays.asList(config + .getStringList(USER, username, STARRED))); + for (String repository : starred) { + UserRepositoryPreferences prefs = user.getPreferences().getRepositoryPreferences(repository); + prefs.starred = true; + } + // update cache users.put(user.username, user); if (!StringUtils.isEmpty(user.cookie)) { -- Gitblit v1.9.1