added i18n for UserDetailsView

This commit is contained in:
Axel Uhl committed 2014-10-15 09:09:38 +02:00
1 parent eb53b06e30
commit 340f722d80
8 files changed
+49 -32

No files matched your search

@@ -63,7 +63,6 @@ public class StringListEditorComposite extends ListEditorComposite<String> {
public ExpandedUi(StringMessages stringMessages, ImageResource removeImage, List<String> suggestValues) {
super(stringMessages, removeImage, /*canRemoveItems*/true);
this.inputOracle = new MultiWordSuggestOracle();
inputOracle.addAll(suggestValues);
}
@@ -77,12 +76,10 @@ public class StringListEditorComposite extends ListEditorComposite<String> {
protected Widget createAddWidget() {
final SuggestBox inputBox = new SuggestBox(inputOracle);
inputBox.ensureDebugId("InputSuggestBox");
final Button addButton = new Button(stringMessages.add());
addButton.ensureDebugId("AddButton");
addButton.setEnabled(false);
addButton.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
addValue(inputBox.getValue());
@@ -90,13 +87,11 @@ public class StringListEditorComposite extends ListEditorComposite<String> {
}
});
inputBox.addKeyUpHandler(new KeyUpHandler() {
@Override
public void onKeyUp(KeyUpEvent event) {
addButton.setEnabled(!inputBox.getValue().isEmpty());
}
});
HorizontalPanel panel = new HorizontalPanel();
panel.add(inputBox);
panel.add(addButton);
@@ -61,8 +61,8 @@ public class StringListInlineEditorComposite extends StringListEditorComposite {
public static class ExpandedUi extends ExpandedListEditorUi<String> {
protected final MultiWordSuggestOracle inputOracle;
protected int textBoxSize;
private final MultiWordSuggestOracle inputOracle;
private final int textBoxSize;
public ExpandedUi(StringMessages stringMessages, ImageResource removeImage, List<String> suggestValues, int textBoxSize) {
super(stringMessages, removeImage, /*canRemoveItems*/true);
@@ -62,4 +62,16 @@ public interface StringMessages extends Messages {
String couldNotCreateUser(String message);
String changePassword();
String userDetails();
String deleteUser();
String deleteUserQuestion();
String doYouReallyWantToDeleteUser(String username);
String errorDeletingUser();
}
@@ -25,4 +25,10 @@ email=e-mail
usernameMustHaveAtLeastNCharacters=User name must have at least {0} characters
passwordMustHaveAtLeastNCharacters=Password must have at least {0} characters
passwordsDontMatch=Passwords don''t match
couldNotCreateUser=Could not create user: {0}
couldNotCreateUser=Could not create user: {0}
changePassword=Change password
userDetails=User details
deleteUser=Delete user
deleteUserQuestion=Delete user?
doYouReallyWantToDeleteUser=Do you really want to delete user {0}?
errorDeletingUser=An error happened while deleting the user
@@ -25,4 +25,10 @@ email=e-Mail
usernameMustHaveAtLeastNCharacters=Benutzername muss mindestens {0} Zeichen haben
passwordMustHaveAtLeastNCharacters=Passwort muss mindestens {0} Zeichen haben
passwordsDontMatch=Passwort und Passwortwiederholung stimmen nicht überein
couldNotCreateUser=Benutzer konnte nicht angelegt werden: {0}
couldNotCreateUser=Benutzer konnte nicht angelegt werden: {0}
changePassword=Passwort ändern
userDetails=Benutzer-Details
deleteUser=Benutzer löschen
deleteUserQuestion=Benutzer löschen?
doYouReallyWantToDeleteUser=Wollen Sie Benutzer {0} wirklich löschen?
errorDeletingUser=Fehler beim Löschen des Benutzers
@@ -22,6 +22,7 @@ import com.google.gwt.user.client.ui.ImageResourceRenderer;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.sap.sse.security.ui.client.Resources;
import com.sap.sse.security.ui.client.StringMessages;
import com.sap.sse.security.ui.client.UserChangeEventHandler;
import com.sap.sse.security.ui.oauth.client.SocialUserDTO;
import com.sap.sse.security.ui.shared.AccountDTO;
@@ -35,7 +36,10 @@ public class UserDetailsView extends FlowPanel {
private List<UserChangeEventHandler> handlers = new ArrayList<>();
public UserDetailsView(UserManagementServiceAsync userManagementService, UserDTO user) {
private final StringMessages stringMessages;
public UserDetailsView(UserManagementServiceAsync userManagementService, UserDTO user, StringMessages stringMessages) {
this.stringMessages = stringMessages;
this.userManagementService = userManagementService;
addStyleName("userDetailsView");
updateUser(user);
@@ -43,7 +47,7 @@ public class UserDetailsView extends FlowPanel {
public void updateUser(final UserDTO user) {
this.clear();
Label title = new Label("User details");
Label title = new Label(stringMessages.userDetails());
if (user == null) {
return;
}
@@ -56,9 +60,9 @@ public class UserDetailsView extends FlowPanel {
ImageResourceRenderer renderer = new ImageResourceRenderer();
final ImageResource userImageResource = Resources.INSTANCE.userSmall();
fp.add(new HTML(renderer.render(userImageResource)));
Label name = new Label("Name: " + user.getName());
Label name = new Label(stringMessages.name() + ": " + user.getName());
fp.add(name);
Label email = new Label("Email: " + user.getEmail());
Label email = new Label(stringMessages.email() + ": " + user.getEmail());
fp.add(email);
for (AccountDTO a : user.getAccounts()){
@@ -67,7 +71,7 @@ public class UserDetailsView extends FlowPanel {
accountPanelDecorator.setWidget(accountPanelContent);
accountPanelContent.add(new Label(a.getAccountType() + "-Account"));
if (a instanceof UsernamePasswordAccountDTO){
accountPanelContent.add(new Label("Change password:"));
accountPanelContent.add(new Label(stringMessages.changePassword()));
}
else if (a instanceof SocialUserDTO){
SocialUserDTO sua = (SocialUserDTO) a;
@@ -90,7 +94,6 @@ public class UserDetailsView extends FlowPanel {
RolesList rolesList = new RolesList(userManagementService, user);
rolesList.addUserChangeEventHandler(new UserChangeEventHandler() {
@Override
public void onUserChange(UserDTO user) {
for (UserChangeEventHandler handler : handlers){
@@ -99,12 +102,11 @@ public class UserDetailsView extends FlowPanel {
}
});
this.add(rolesList);
Button delete = new Button("Delete user", new ClickHandler() {
Button delete = new Button(stringMessages.deleteUser(), new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
final DeleteUserConfimDialog deleteUserConfimDialog = new DeleteUserConfimDialog(userManagementService,
user.getName());
user.getName(), stringMessages);
Scheduler.get().scheduleDeferred(new Scheduler.ScheduledCommand() {
public void execute() {
deleteUserConfimDialog.center();
@@ -120,20 +122,17 @@ public class UserDetailsView extends FlowPanel {
}
private static class DeleteUserConfimDialog extends DialogBox {
public DeleteUserConfimDialog(final UserManagementServiceAsync userManagementService, final String username) {
setText("Delete user?");
public DeleteUserConfimDialog(final UserManagementServiceAsync userManagementService, final String username, final StringMessages stringMessages) {
setText(stringMessages.deleteUserQuestion());
setAnimationEnabled(true);
setGlassEnabled(true);
VerticalPanel vp = new VerticalPanel();
vp.add(new Label("Do you really want to delete \"" + username + "\"?"));
vp.add(new Label(stringMessages.doYouReallyWantToDeleteUser(username)));
HorizontalPanel hp = new HorizontalPanel();
Button ok = new Button("OK");
Button ok = new Button(stringMessages.ok());
ok.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
userManagementService.deleteUser(username, new AsyncCallback<SuccessInfo>() {
@Override
public void onSuccess(SuccessInfo result) {
Window.alert(result.getMessage());
@@ -141,15 +140,14 @@ public class UserDetailsView extends FlowPanel {
@Override
public void onFailure(Throwable caught) {
Window.alert("An error happened while deleting the user.");
Window.alert(stringMessages.errorDeletingUser());
}
});
DeleteUserConfimDialog.this.hide();
}
});
hp.add(ok);
Button cancel = new Button("cancel", new ClickHandler() {
Button cancel = new Button(stringMessages.cancel(), new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
DeleteUserConfimDialog.this.hide();
@@ -19,7 +19,7 @@ public class UserList extends CellList<UserDTO> {
return;
}
ImageResourceRenderer renderer = new ImageResourceRenderer();
final ImageResource userImageResource = com.sap.sse.security.ui.client.Resources.INSTANCE.userSmall();
final ImageResource userImageResource = com.sap.sse.security.ui.client.Resources.INSTANCE.userIcon();
sb.appendHtmlConstant("<table>");
sb.appendHtmlConstant("<tr>");
sb.appendHtmlConstant("<td>");
@@ -45,7 +45,7 @@ public class UserManagementPanel extends DockPanel {
west.add(createButton);
final UserList userList = new UserList();
userList.setSelectionModel(singleSelectionModel);
final UserDetailsView userDetailsView = new UserDetailsView(userManagementService, singleSelectionModel.getSelectedObject());
final UserDetailsView userDetailsView = new UserDetailsView(userManagementService, singleSelectionModel.getSelectedObject(), stringMessages);
add(userDetailsView, DockPanel.CENTER);
userDetailsView.addUserChangeEventHandler(new UserChangeEventHandler() {
@Override
@@ -59,11 +59,11 @@ public class UserManagementPanel extends DockPanel {
userDetailsView.updateUser(singleSelectionModel.getSelectedObject());
}
});
userList.setPageSize(4);
userList.setPageSize(20);
TextBox filterBox = new TextBox();
userListDataProvider = new UserListDataProvider(userManagementService, filterBox);
userListDataProvider.addDataDisplay(userList);
SimplePager pager = new SimplePager(TextLocation.CENTER, false, 10, true);
SimplePager pager = new SimplePager(TextLocation.CENTER, false, /* fast forward step size */ 50, true);
pager.setDisplay(userList);
ScrollPanel scrollPanel = new ScrollPanel(userList);
filterBox.addChangeHandler(new ChangeHandler() {