From 79d3240ea489067f3eb1af5e535b3687c507a249 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Thu, 30 May 2013 23:13:48 -0400 Subject: [PATCH] Added simple star/unstar function --- src/main/java/com/gitblit/ConfigUserService.java | 21 ++++++++++++++++++++- 1 files changed, 20 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/gitblit/ConfigUserService.java b/src/main/java/com/gitblit/ConfigUserService.java index 7aa0998..f2bd7b8 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,7 +89,9 @@ private static final String PRERECEIVE = "preReceiveScript"; private static final String POSTRECEIVE = "postReceiveScript"; - + + private static final String STARRED = "starred"; + private final File realmFile; private final Logger logger = LoggerFactory.getLogger(ConfigUserService.class); @@ -879,6 +882,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); + } + } } // write teams @@ -1021,6 +1032,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