diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/UserManagementService.java b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/UserManagementService.java index 48b0ada4f0a..51707bb9fd0 100644 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/UserManagementService.java +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/UserManagementService.java @@ -31,7 +31,7 @@ public interface UserManagementService extends RemoteService { void updateSimpleUserEmail(String username, String newEmail, String validationBaseURL) throws UserManagementException, MailException; - void updateUserProperties(String username, String fullName, String company) throws UserManagementException; + void updateUserProperties(String username, String fullName, String company, String localeName) throws UserManagementException; void resetPassword(String username, String eMailAddress, String baseURL) throws UserManagementException, MailException; diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/UserManagementServiceAsync.java b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/UserManagementServiceAsync.java index 159a67a00ff..a27a905f451 100644 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/UserManagementServiceAsync.java +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/UserManagementServiceAsync.java @@ -28,7 +28,7 @@ public interface UserManagementServiceAsync { void updateSimpleUserEmail(String username, String newEmail, String validationBaseURL, AsyncCallback callback); - void updateUserProperties(String username, String fullName, String company, AsyncCallback callback); + void updateUserProperties(String username, String fullName, String company, String localeName, AsyncCallback callback); void getFilteredSortedUserList(String filter, AsyncCallback> callback); diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/server/UserManagementServiceImpl.java b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/server/UserManagementServiceImpl.java index 2f4a83f6121..b1ad90064a8 100644 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/server/UserManagementServiceImpl.java +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/server/UserManagementServiceImpl.java @@ -6,6 +6,7 @@ import java.util.Collections; import java.util.Comparator; import java.util.HashSet; import java.util.List; +import java.util.Locale; import java.util.Map; import java.util.Map.Entry; import java.util.Set; @@ -166,11 +167,12 @@ public class UserManagementServiceImpl extends RemoteServiceServlet implements U } @Override - public void updateUserProperties(final String username, String fullName, String company) throws UserManagementException { + public void updateUserProperties(final String username, String fullName, String company, String localeName) throws UserManagementException { final Subject subject = SecurityUtils.getSubject(); // the signed-in subject has role ADMIN or is changing own user if (subject.hasRole(DefaultRoles.ADMIN.getRolename()) || username.equals(subject.getPrincipal().toString())) { - getSecurityService().updateUserProperties(username, fullName, company); + getSecurityService().updateUserProperties(username, fullName, company, + localeName == null || localeName.isEmpty() ? null : Locale.forLanguageTag(localeName)); } else { throw new UserManagementException(UserManagementException.INVALID_CREDENTIALS); } diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/userprofile/shared/userdetails/UserDetailsPresenter.java b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/userprofile/shared/userdetails/UserDetailsPresenter.java index fa50245238b..51ddb0c7dad 100644 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/userprofile/shared/userdetails/UserDetailsPresenter.java +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/userprofile/shared/userdetails/UserDetailsPresenter.java @@ -44,7 +44,8 @@ public class UserDetailsPresenter implements AbstractUserDetails.Presenter { @Override public void handleSaveChangesRequest(String fullName, String company) { final String username = authenticationManager.getAuthenticationContext().getCurrentUser().getName(); - userManagementService.updateUserProperties(username, fullName, company, + // FIXME set locale + userManagementService.updateUserProperties(username, fullName, company, null, new AsyncCallback() { @Override public void onSuccess(Void result) { diff --git a/java/com.sap.sse.security/src/com/sap/sse/security/SecurityService.java b/java/com.sap.sse.security/src/com/sap/sse/security/SecurityService.java index d9e34b171ef..7382c68cda6 100644 --- a/java/com.sap.sse.security/src/com/sap/sse/security/SecurityService.java +++ b/java/com.sap.sse.security/src/com/sap/sse/security/SecurityService.java @@ -1,5 +1,6 @@ package com.sap.sse.security; +import java.util.Locale; import java.util.Map; import java.util.UUID; @@ -57,7 +58,7 @@ public interface SecurityService extends ReplicableWithObjectInputStreams.internalStoreUser(user)); }