gravity settings

This commit is contained in:
2021-10-06 11:13:33 +02:00
parent b12c7c77a5
commit 46e642be51
7 changed files with 43 additions and 62 deletions
@@ -57,10 +57,13 @@ public class UserManager implements UserDetailsService, SmartInitializingSinglet
@Value("${bstly.board.ranking.gravity:1.2}")
private double GRAVITY;
/*
* @see org.springframework.security.core.userdetails.UserDetailsService#loadUserByUsername(java.lang.String)
*/
/*
* @see org.springframework.security.core.userdetails.UserDetailsService#
* loadUserByUsername(java.lang.String)
*/
@Override
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
LocalUser localUser = getByUsername(username);
@@ -83,25 +86,16 @@ public class UserManager implements UserDetailsService, SmartInitializingSinglet
}
LocalUserDetails userDetails = new LocalUserDetails(username, passwordHash, authorities);
userDetails.setGravity(GRAVITY);
if (localUser.getSettings().containsKey("gravity")) {
try {
userDetails.setGravity(Double.parseDouble(localUser.getSettings().get("gravity")));
} catch (Exception e) {
}
}
userDetails.setKarma(getKarma(username));
return userDetails;
}
/*
* @see org.springframework.beans.factory.SmartInitializingSingleton#afterSingletonsInstantiated()
*/
/*
* @see org.springframework.beans.factory.SmartInitializingSingleton#
* afterSingletonsInstantiated()
*/
@Override
public void afterSingletonsInstantiated() {
if (!localUserRepository.exists(qLocalUser.roles.contains("ROLE_ADMIN"))) {
@@ -213,6 +207,7 @@ public class UserManager implements UserDetailsService, SmartInitializingSinglet
if (user.getUsername().equalsIgnoreCase(username)
&& !user.getMetadata().containsKey("self")) {
user.getMetadata().put("self", true);
user.getMetadata().put("defaultGravity", GRAVITY);
}
if (!user.getMetadata().containsKey("points")) {