CCM NG: Add form for creating new users to /ccm/admin/
git-svn-id: https://svn.libreccm.org/ccm/ccm_ng@3975 8810af33-2d31-482b-a856-94f89814c4dfpull/2/head
parent
4bd63b1b45
commit
ce1be1e87e
|
|
@ -49,8 +49,8 @@ import java.util.ArrayList;
|
||||||
class UserAdministrationTab extends LayoutPanel {
|
class UserAdministrationTab extends LayoutPanel {
|
||||||
|
|
||||||
private final List sections;
|
private final List sections;
|
||||||
private final java.util.List<Component> components = new ArrayList<Component>();
|
private final java.util.List<Component> components = new ArrayList<>();
|
||||||
private final java.util.List<Label> keys = new ArrayList<Label>();
|
private final java.util.List<Label> keys = new ArrayList<>();
|
||||||
private final GlobalizedMessage title = USER_NAVBAR_TITLE;
|
private final GlobalizedMessage title = USER_NAVBAR_TITLE;
|
||||||
|
|
||||||
public UserAdministrationTab(final TabbedPane parent, final GroupAdministrationTab groupAdminTab) {
|
public UserAdministrationTab(final TabbedPane parent, final GroupAdministrationTab groupAdminTab) {
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,8 @@ import com.arsdigita.bebop.Component;
|
||||||
import com.arsdigita.bebop.ControlLink;
|
import com.arsdigita.bebop.ControlLink;
|
||||||
import com.arsdigita.bebop.Form;
|
import com.arsdigita.bebop.Form;
|
||||||
import com.arsdigita.bebop.FormData;
|
import com.arsdigita.bebop.FormData;
|
||||||
|
import com.arsdigita.bebop.FormProcessException;
|
||||||
|
import com.arsdigita.bebop.FormSection;
|
||||||
import com.arsdigita.bebop.Label;
|
import com.arsdigita.bebop.Label;
|
||||||
import com.arsdigita.bebop.Page;
|
import com.arsdigita.bebop.Page;
|
||||||
import com.arsdigita.bebop.PageState;
|
import com.arsdigita.bebop.PageState;
|
||||||
|
|
@ -37,15 +39,16 @@ import com.arsdigita.bebop.event.TableActionListener;
|
||||||
import com.arsdigita.bebop.form.CheckboxGroup;
|
import com.arsdigita.bebop.form.CheckboxGroup;
|
||||||
import com.arsdigita.bebop.form.Option;
|
import com.arsdigita.bebop.form.Option;
|
||||||
import com.arsdigita.bebop.form.Password;
|
import com.arsdigita.bebop.form.Password;
|
||||||
|
import com.arsdigita.bebop.form.RadioGroup;
|
||||||
import com.arsdigita.bebop.form.Submit;
|
import com.arsdigita.bebop.form.Submit;
|
||||||
import com.arsdigita.bebop.form.TextField;
|
import com.arsdigita.bebop.form.TextField;
|
||||||
import com.arsdigita.bebop.parameters.NotEmptyValidationListener;
|
import com.arsdigita.bebop.parameters.NotEmptyValidationListener;
|
||||||
|
import com.arsdigita.bebop.parameters.StringLengthValidationListener;
|
||||||
import com.arsdigita.bebop.parameters.StringParameter;
|
import com.arsdigita.bebop.parameters.StringParameter;
|
||||||
import com.arsdigita.bebop.table.TableCellRenderer;
|
import com.arsdigita.bebop.table.TableCellRenderer;
|
||||||
import com.arsdigita.bebop.table.TableColumn;
|
import com.arsdigita.bebop.table.TableColumn;
|
||||||
import com.arsdigita.bebop.table.TableColumnModel;
|
import com.arsdigita.bebop.table.TableColumnModel;
|
||||||
import com.arsdigita.globalization.GlobalizedMessage;
|
import com.arsdigita.globalization.GlobalizedMessage;
|
||||||
import com.arsdigita.mail.Mail;
|
|
||||||
|
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
|
@ -56,8 +59,6 @@ import org.libreccm.security.User;
|
||||||
import org.libreccm.security.UserManager;
|
import org.libreccm.security.UserManager;
|
||||||
import org.libreccm.security.UserRepository;
|
import org.libreccm.security.UserRepository;
|
||||||
|
|
||||||
import java.util.logging.Level;
|
|
||||||
|
|
||||||
import javax.mail.MessagingException;
|
import javax.mail.MessagingException;
|
||||||
|
|
||||||
import static com.arsdigita.ui.admin.AdminUiConstants.*;
|
import static com.arsdigita.ui.admin.AdminUiConstants.*;
|
||||||
|
|
@ -85,11 +86,12 @@ public class UserAdmin extends BoxPanel {
|
||||||
// private final UserDetails userDetails;
|
// private final UserDetails userDetails;
|
||||||
private final BoxPanel userDetails;
|
private final BoxPanel userDetails;
|
||||||
private final Form emailForm;
|
private final Form emailForm;
|
||||||
|
private final Form newUserForm;
|
||||||
|
|
||||||
public UserAdmin() {
|
public UserAdmin() {
|
||||||
super();
|
super();
|
||||||
|
|
||||||
setIdAttr("userAdmin");
|
setBasicProperties();
|
||||||
|
|
||||||
usersTablePanel = new BoxPanel();
|
usersTablePanel = new BoxPanel();
|
||||||
usersTablePanel.setIdAttr("usersTablePanel");
|
usersTablePanel.setIdAttr("usersTablePanel");
|
||||||
|
|
@ -121,6 +123,13 @@ public class UserAdmin extends BoxPanel {
|
||||||
usersTable = new UsersTable(this, usersTableFilter, selectedUserId);
|
usersTable = new UsersTable(this, usersTableFilter, selectedUserId);
|
||||||
usersTablePanel.add(usersTable);
|
usersTablePanel.add(usersTable);
|
||||||
|
|
||||||
|
final ActionLink addNewUserLink = new ActionLink(new GlobalizedMessage(
|
||||||
|
"ui.admin.new_user.link", ADMIN_BUNDLE));
|
||||||
|
addNewUserLink.addActionListener(e -> {
|
||||||
|
showNewUserForm(e.getPageState());
|
||||||
|
});
|
||||||
|
usersTablePanel.add(addNewUserLink);
|
||||||
|
|
||||||
add(usersTablePanel);
|
add(usersTablePanel);
|
||||||
|
|
||||||
// final Text text = new Text();
|
// final Text text = new Text();
|
||||||
|
|
@ -264,7 +273,6 @@ public class UserAdmin extends BoxPanel {
|
||||||
new GlobalizedMessage(
|
new GlobalizedMessage(
|
||||||
"ui.admin.set_password.password_confirm.error.not_empty",
|
"ui.admin.set_password.password_confirm.error.not_empty",
|
||||||
ADMIN_BUNDLE)));
|
ADMIN_BUNDLE)));
|
||||||
passwordSetForm.add(newPassword);
|
|
||||||
passwordConfirm.setLabel(new GlobalizedMessage(
|
passwordConfirm.setLabel(new GlobalizedMessage(
|
||||||
"ui.admin.user_set_password.confirm_password.label",
|
"ui.admin.user_set_password.confirm_password.label",
|
||||||
ADMIN_BUNDLE
|
ADMIN_BUNDLE
|
||||||
|
|
@ -660,6 +668,207 @@ public class UserAdmin extends BoxPanel {
|
||||||
|
|
||||||
add(userDetails);
|
add(userDetails);
|
||||||
|
|
||||||
|
newUserForm = buildNewUserForm();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setBasicProperties() {
|
||||||
|
setIdAttr("userAdmin");
|
||||||
|
}
|
||||||
|
|
||||||
|
private Form buildNewUserForm() {
|
||||||
|
final Form form = new Form("new_user_form");
|
||||||
|
|
||||||
|
final String username = "username";
|
||||||
|
final TextField usernameField = new TextField(username);
|
||||||
|
usernameField.setLabel(new GlobalizedMessage(
|
||||||
|
"ui.admin.new_user_form.username.label", ADMIN_BUNDLE));
|
||||||
|
usernameField.setSize(32);
|
||||||
|
usernameField.setMaxLength(32);
|
||||||
|
usernameField.addValidationListener(new NotEmptyValidationListener());
|
||||||
|
usernameField.addValidationListener(new StringLengthValidationListener(
|
||||||
|
32));
|
||||||
|
form.add(usernameField);
|
||||||
|
|
||||||
|
final String givenName = "givenname";
|
||||||
|
final TextField givenNameField = new TextField(givenName);
|
||||||
|
givenNameField.setLabel(new GlobalizedMessage(
|
||||||
|
"ui.admin.new_user_form.givenname.label", ADMIN_BUNDLE));
|
||||||
|
givenNameField.setSize(32);
|
||||||
|
givenNameField.setMaxLength(256);
|
||||||
|
givenNameField.addValidationListener(new NotEmptyValidationListener());
|
||||||
|
givenNameField.addValidationListener(new StringLengthValidationListener(
|
||||||
|
256));
|
||||||
|
form.add(givenNameField);
|
||||||
|
|
||||||
|
final String familyName = "familyName";
|
||||||
|
final TextField familyNameField = new TextField(familyName);
|
||||||
|
familyNameField.setLabel(new GlobalizedMessage(
|
||||||
|
"ui.admin.new_user_form.familyname.label", ADMIN_BUNDLE));
|
||||||
|
familyNameField.setSize(32);
|
||||||
|
familyNameField.setMaxLength(256);
|
||||||
|
familyNameField.addValidationListener(new NotEmptyValidationListener());
|
||||||
|
familyNameField.addValidationListener(
|
||||||
|
new StringLengthValidationListener(256));
|
||||||
|
form.add(familyNameField);
|
||||||
|
|
||||||
|
final String email = "email";
|
||||||
|
final TextField emailField = new TextField(email);
|
||||||
|
emailField.setLabel(new GlobalizedMessage(
|
||||||
|
"ui.admin.new_user_form.email.label", ADMIN_BUNDLE));
|
||||||
|
emailField.setSize(48);
|
||||||
|
emailField.setMaxLength(256);
|
||||||
|
emailField.addValidationListener(new NotEmptyValidationListener());
|
||||||
|
emailField
|
||||||
|
.addValidationListener(new StringLengthValidationListener(256));
|
||||||
|
form.add(emailField);
|
||||||
|
|
||||||
|
final FormSection setPasswordSection = new FormSection(new BoxPanel(
|
||||||
|
BoxPanel.VERTICAL));
|
||||||
|
setPasswordSection.setLabel(new GlobalizedMessage(
|
||||||
|
"ui.admin.new_user_form.password_options.set_password.label",
|
||||||
|
ADMIN_BUNDLE));
|
||||||
|
final String password = "password";
|
||||||
|
final String passwordConfirmation = "passwordConfirmation";
|
||||||
|
final Password passwordField = new Password(password);
|
||||||
|
passwordField.setLabel(new GlobalizedMessage(
|
||||||
|
"ui.admin.new_user_form.password_options.set_password.password.label",
|
||||||
|
ADMIN_BUNDLE));
|
||||||
|
passwordField.setMaxLength(256);
|
||||||
|
passwordField.setSize(32);
|
||||||
|
passwordField.addValidationListener(new NotEmptyValidationListener());
|
||||||
|
passwordField.addValidationListener(new StringLengthValidationListener(
|
||||||
|
256));
|
||||||
|
setPasswordSection.add(passwordField);
|
||||||
|
final Password passwordConfirmationField = new Password(
|
||||||
|
passwordConfirmation);
|
||||||
|
passwordConfirmationField.setLabel(new GlobalizedMessage(
|
||||||
|
"ui.admin.new_user_form.password_options.set_password.password_confirmation.label",
|
||||||
|
ADMIN_BUNDLE));
|
||||||
|
passwordConfirmationField.setMaxLength(256);
|
||||||
|
passwordConfirmationField.setSize(32);
|
||||||
|
passwordConfirmationField.addValidationListener(
|
||||||
|
new NotEmptyValidationListener());
|
||||||
|
passwordConfirmationField.addValidationListener(
|
||||||
|
new StringLengthValidationListener(256));
|
||||||
|
setPasswordSection.add(passwordConfirmationField);
|
||||||
|
|
||||||
|
final String passwordOptions = "passwordOptions";
|
||||||
|
final String optionSetPassword = "setPassword";
|
||||||
|
final String optionSendPassword = "sendPassword";
|
||||||
|
final RadioGroup passwordOptionsGroup = new RadioGroup(passwordOptions);
|
||||||
|
// final Option setPasswordOption = new Option(
|
||||||
|
// optionSetPassword,
|
||||||
|
// new Label(new GlobalizedMessage(
|
||||||
|
// "ui.admin.new_user_form.password_options.set_password",
|
||||||
|
// ADMIN_BUNDLE)));
|
||||||
|
final Option setPasswordOption = new Option(
|
||||||
|
optionSetPassword, setPasswordSection);
|
||||||
|
passwordOptionsGroup.addOption(setPasswordOption);
|
||||||
|
final Option sendPasswordOption = new Option(
|
||||||
|
optionSendPassword,
|
||||||
|
new Label(new GlobalizedMessage(
|
||||||
|
"ui.admin.new_user_form.password_options.send_password.label",
|
||||||
|
ADMIN_BUNDLE)));
|
||||||
|
passwordOptionsGroup.addOption(sendPasswordOption);
|
||||||
|
newUserForm.add(passwordOptionsGroup);
|
||||||
|
|
||||||
|
final SaveCancelSection saveCancelSection = new SaveCancelSection();
|
||||||
|
newUserForm.add(saveCancelSection);
|
||||||
|
|
||||||
|
newUserForm.addValidationListener(e -> {
|
||||||
|
final PageState state = e.getPageState();
|
||||||
|
|
||||||
|
if (saveCancelSection.getSaveButton().isSelected(state)) {
|
||||||
|
final FormData data = e.getFormData();
|
||||||
|
|
||||||
|
final String usernameData = data.getString(username);
|
||||||
|
final String emailData = data.getString(email);
|
||||||
|
final String selectedPasswordOption = data.getString(
|
||||||
|
passwordOptions);
|
||||||
|
|
||||||
|
final CdiUtil cdiUtil = CdiUtil.createCdiUtil();
|
||||||
|
final UserRepository userRepository = cdiUtil.findBean(
|
||||||
|
UserRepository.class);
|
||||||
|
|
||||||
|
if (userRepository.findByName(usernameData) != null) {
|
||||||
|
data.addError(new GlobalizedMessage(
|
||||||
|
"ui.admin.new_user_form.error.username_already_in_use",
|
||||||
|
ADMIN_BUNDLE));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (userRepository.findByEmailAddress(emailData) != null) {
|
||||||
|
data.addError(new GlobalizedMessage(
|
||||||
|
"ui.admin.new_user_form.error.email_already_in_use",
|
||||||
|
ADMIN_BUNDLE));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (optionSetPassword.equals(selectedPasswordOption)) {
|
||||||
|
final String passwordData = data.getString(password);
|
||||||
|
final String passwordConfirmData = data.getString(
|
||||||
|
passwordConfirmation);
|
||||||
|
|
||||||
|
if (!passwordData.equals(passwordConfirmData)) {
|
||||||
|
data.addError(new GlobalizedMessage(
|
||||||
|
"ui.admin.new_user_form.error.password_do_not_match",
|
||||||
|
ADMIN_BUNDLE));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
form.addProcessListener(e -> {
|
||||||
|
final PageState state = e.getPageState();
|
||||||
|
|
||||||
|
if (saveCancelSection.getSaveButton().isSelected(state)) {
|
||||||
|
final FormData data = e.getFormData();
|
||||||
|
|
||||||
|
final CdiUtil cdiUtil = CdiUtil.createCdiUtil();
|
||||||
|
final UserManager userManager = cdiUtil.findBean(
|
||||||
|
UserManager.class);
|
||||||
|
|
||||||
|
final String dataUserName = data.getString(username);
|
||||||
|
final String dataFamilyName = data.getString(familyName);
|
||||||
|
final String dataGivenName = data.getString(givenName);
|
||||||
|
final String dataEmail = data.getString(email);
|
||||||
|
final String dataSelectedPasswordOption = data.getString(
|
||||||
|
passwordOptions);
|
||||||
|
|
||||||
|
final String dataPassword;
|
||||||
|
if (optionSetPassword.equals(dataSelectedPasswordOption)) {
|
||||||
|
dataPassword = data.getString(password);
|
||||||
|
} else {
|
||||||
|
dataPassword = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
final User user = userManager.createUser(dataGivenName,
|
||||||
|
dataFamilyName,
|
||||||
|
dataUserName,
|
||||||
|
dataEmail,
|
||||||
|
dataPassword);
|
||||||
|
|
||||||
|
if (optionSendPassword.equals(dataSelectedPasswordOption)) {
|
||||||
|
final ChallengeManager challengeManager = cdiUtil.findBean(
|
||||||
|
ChallengeManager.class);
|
||||||
|
|
||||||
|
try {
|
||||||
|
challengeManager.sendPasswordRecover(user);
|
||||||
|
} catch (MessagingException ex) {
|
||||||
|
throw new FormProcessException(
|
||||||
|
"Failed to send password challenge to new user.",
|
||||||
|
new GlobalizedMessage(
|
||||||
|
"ui.admin.new_user_form.error.failed_to_send_password",
|
||||||
|
ADMIN_BUNDLE),
|
||||||
|
ex);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
closeNewUserForm(state);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
return newUserForm;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -674,6 +883,7 @@ public class UserAdmin extends BoxPanel {
|
||||||
page.setVisibleDefault(userEditForm, false);
|
page.setVisibleDefault(userEditForm, false);
|
||||||
page.setVisibleDefault(passwordSetForm, false);
|
page.setVisibleDefault(passwordSetForm, false);
|
||||||
page.setVisibleDefault(emailForm, false);
|
page.setVisibleDefault(emailForm, false);
|
||||||
|
page.setVisibleDefault(newUserForm, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void showUserDetails(final PageState state) {
|
protected void showUserDetails(final PageState state) {
|
||||||
|
|
@ -682,6 +892,7 @@ public class UserAdmin extends BoxPanel {
|
||||||
userEditForm.setVisible(state, false);
|
userEditForm.setVisible(state, false);
|
||||||
passwordSetForm.setVisible(state, false);
|
passwordSetForm.setVisible(state, false);
|
||||||
emailForm.setVisible(state, false);
|
emailForm.setVisible(state, false);
|
||||||
|
newUserForm.setVisible(state, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void closeUserDetails(final PageState state) {
|
protected void closeUserDetails(final PageState state) {
|
||||||
|
|
@ -691,6 +902,7 @@ public class UserAdmin extends BoxPanel {
|
||||||
userEditForm.setVisible(state, false);
|
userEditForm.setVisible(state, false);
|
||||||
passwordSetForm.setVisible(state, false);
|
passwordSetForm.setVisible(state, false);
|
||||||
emailForm.setVisible(state, false);
|
emailForm.setVisible(state, false);
|
||||||
|
newUserForm.setVisible(state, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void showUserEditForm(final PageState state) {
|
protected void showUserEditForm(final PageState state) {
|
||||||
|
|
@ -699,6 +911,7 @@ public class UserAdmin extends BoxPanel {
|
||||||
userEditForm.setVisible(state, true);
|
userEditForm.setVisible(state, true);
|
||||||
passwordSetForm.setVisible(state, false);
|
passwordSetForm.setVisible(state, false);
|
||||||
emailForm.setVisible(state, false);
|
emailForm.setVisible(state, false);
|
||||||
|
newUserForm.setVisible(state, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void closeUserEditForm(final PageState state) {
|
protected void closeUserEditForm(final PageState state) {
|
||||||
|
|
@ -707,6 +920,7 @@ public class UserAdmin extends BoxPanel {
|
||||||
userEditForm.setVisible(state, false);
|
userEditForm.setVisible(state, false);
|
||||||
passwordSetForm.setVisible(state, false);
|
passwordSetForm.setVisible(state, false);
|
||||||
emailForm.setVisible(state, false);
|
emailForm.setVisible(state, false);
|
||||||
|
newUserForm.setVisible(state, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void showPasswordSetForm(final PageState state) {
|
protected void showPasswordSetForm(final PageState state) {
|
||||||
|
|
@ -715,6 +929,7 @@ public class UserAdmin extends BoxPanel {
|
||||||
userEditForm.setVisible(state, false);
|
userEditForm.setVisible(state, false);
|
||||||
passwordSetForm.setVisible(state, true);
|
passwordSetForm.setVisible(state, true);
|
||||||
emailForm.setVisible(state, false);
|
emailForm.setVisible(state, false);
|
||||||
|
newUserForm.setVisible(state, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void closePasswordSetForm(final PageState state) {
|
protected void closePasswordSetForm(final PageState state) {
|
||||||
|
|
@ -723,6 +938,7 @@ public class UserAdmin extends BoxPanel {
|
||||||
userEditForm.setVisible(state, false);
|
userEditForm.setVisible(state, false);
|
||||||
passwordSetForm.setVisible(state, false);
|
passwordSetForm.setVisible(state, false);
|
||||||
emailForm.setVisible(state, false);
|
emailForm.setVisible(state, false);
|
||||||
|
newUserForm.setVisible(state, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void showEmailForm(final PageState state) {
|
protected void showEmailForm(final PageState state) {
|
||||||
|
|
@ -731,6 +947,7 @@ public class UserAdmin extends BoxPanel {
|
||||||
userEditForm.setVisible(state, false);
|
userEditForm.setVisible(state, false);
|
||||||
passwordSetForm.setVisible(state, false);
|
passwordSetForm.setVisible(state, false);
|
||||||
emailForm.setVisible(state, true);
|
emailForm.setVisible(state, true);
|
||||||
|
newUserForm.setVisible(state, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void closeEmailForm(final PageState state) {
|
protected void closeEmailForm(final PageState state) {
|
||||||
|
|
@ -740,6 +957,27 @@ public class UserAdmin extends BoxPanel {
|
||||||
userEditForm.setVisible(state, false);
|
userEditForm.setVisible(state, false);
|
||||||
passwordSetForm.setVisible(state, false);
|
passwordSetForm.setVisible(state, false);
|
||||||
emailForm.setVisible(state, false);
|
emailForm.setVisible(state, false);
|
||||||
|
newUserForm.setVisible(state, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void showNewUserForm(final PageState state) {
|
||||||
|
selectedEmailAddress.clearSelection(state);
|
||||||
|
usersTablePanel.setVisible(state, false);
|
||||||
|
userDetails.setVisible(state, false);
|
||||||
|
userEditForm.setVisible(state, false);
|
||||||
|
passwordSetForm.setVisible(state, false);
|
||||||
|
emailForm.setVisible(state, false);
|
||||||
|
newUserForm.setVisible(state, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void closeNewUserForm(final PageState state) {
|
||||||
|
selectedEmailAddress.clearSelection(state);
|
||||||
|
usersTablePanel.setVisible(state, true);
|
||||||
|
userDetails.setVisible(state, false);
|
||||||
|
userEditForm.setVisible(state, false);
|
||||||
|
passwordSetForm.setVisible(state, false);
|
||||||
|
emailForm.setVisible(state, false);
|
||||||
|
newUserForm.setVisible(state, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -96,10 +96,10 @@ public class UserNewForm extends Form {
|
||||||
"login.form.new_user.username.label", LOGIN_BUNDLE));
|
"login.form.new_user.username.label", LOGIN_BUNDLE));
|
||||||
userName.setHint(new GlobalizedMessage(
|
userName.setHint(new GlobalizedMessage(
|
||||||
"login.form.new_user.username.hint", LOGIN_BUNDLE));
|
"login.form.new_user.username.hint", LOGIN_BUNDLE));
|
||||||
userName.setMaxLength(256);
|
userName.setMaxLength(32);
|
||||||
userName.setSize(32);
|
userName.setSize(32);
|
||||||
userName.addValidationListener(new NotEmptyValidationListener());
|
userName.addValidationListener(new NotEmptyValidationListener());
|
||||||
userName.addValidationListener(new StringLengthValidationListener(256));
|
userName.addValidationListener(new StringLengthValidationListener(32));
|
||||||
formPanel.add(userName);
|
formPanel.add(userName);
|
||||||
|
|
||||||
givenName = new TextField(GIVEN_NAME);
|
givenName = new TextField(GIVEN_NAME);
|
||||||
|
|
@ -199,8 +199,7 @@ public class UserNewForm extends Form {
|
||||||
UserRepository.class);
|
UserRepository.class);
|
||||||
//check if there is already an account for the provided email
|
//check if there is already an account for the provided email
|
||||||
if (userRepository.findByEmailAddress((String) data.get(
|
if (userRepository.findByEmailAddress((String) data.get(
|
||||||
EMAIL))
|
EMAIL)) != null) {
|
||||||
!= null) {
|
|
||||||
data.addError(new GlobalizedMessage(
|
data.addError(new GlobalizedMessage(
|
||||||
"login.form.new_user.error.email_already_registered",
|
"login.form.new_user.error.email_already_registered",
|
||||||
LOGIN_BUNDLE));
|
LOGIN_BUNDLE));
|
||||||
|
|
|
||||||
|
|
@ -215,3 +215,16 @@ ui.admin.user_set_password.confirm_password.label=Repeat password
|
||||||
ui.admin.user_set_password.error.do_not_match=Passwords do not match
|
ui.admin.user_set_password.error.do_not_match=Passwords do not match
|
||||||
ui.admin.set_password.new_password.error.not_empty=Password can't be empty
|
ui.admin.set_password.new_password.error.not_empty=Password can't be empty
|
||||||
ui.admin.set_password.password_confirm.error.not_empty=Password confirmation can't be empty
|
ui.admin.set_password.password_confirm.error.not_empty=Password confirmation can't be empty
|
||||||
|
ui.admin.new_user.link=Add new user
|
||||||
|
ui.admin.new_user_form.username.label=User name
|
||||||
|
ui.admin.new_user_form.givenname.label=Given name
|
||||||
|
ui.admin.new_user_form.familyname.label=Family name
|
||||||
|
ui.admin.new_user_form.email.label=Email
|
||||||
|
ui.admin.new_user_form.password_options.set_password.label=Set password
|
||||||
|
ui.admin.new_user_form.password_options.set_password.password.label=Password
|
||||||
|
ui.admin.new_user_form.password_options.set_password.password_confirmation.label=Confirm password
|
||||||
|
ui.admin.new_user_form.password_options.send_password.label=Send password
|
||||||
|
ui.admin.new_user_form.error.username_already_in_use=The provided user name is already in use.
|
||||||
|
ui.admin.new_user_form.error.email_already_in_use=The provided email address is already assigned with an user account.
|
||||||
|
ui.admin.new_user_form.error.password_do_not_match=Passwords do not match.
|
||||||
|
ui.admin.new_user_form.error.failed_to_send_password=Failed to send password to new user.
|
||||||
|
|
|
||||||
|
|
@ -215,3 +215,16 @@ ui.admin.user_set_password.confirm_password.label=Passwort wiederholen
|
||||||
ui.admin.user_set_password.error.do_not_match=Passw\u00f6rter sind nicht gleich
|
ui.admin.user_set_password.error.do_not_match=Passw\u00f6rter sind nicht gleich
|
||||||
ui.admin.set_password.new_password.error.not_empty=Passwort darf nicht leer sein
|
ui.admin.set_password.new_password.error.not_empty=Passwort darf nicht leer sein
|
||||||
ui.admin.set_password.password_confirm.error.not_empty=Passwortbest\u00e4tigung darf nicht leer sein
|
ui.admin.set_password.password_confirm.error.not_empty=Passwortbest\u00e4tigung darf nicht leer sein
|
||||||
|
ui.admin.new_user.link=Neuen Benutzer hinzuf\u00fcgen
|
||||||
|
ui.admin.new_user_form.username.label=Benutzername
|
||||||
|
ui.admin.new_user_form.givenname.label=Vorname
|
||||||
|
ui.admin.new_user_form.familyname.label=Familienname
|
||||||
|
ui.admin.new_user_form.email.label=E-Mail
|
||||||
|
ui.admin.new_user_form.password_options.set_password.label=Passwort setzen
|
||||||
|
ui.admin.new_user_form.password_options.set_password.password.label=Passwort
|
||||||
|
ui.admin.new_user_form.password_options.set_password.password_confirmation.label=Passwort best\u00e4tigen
|
||||||
|
ui.admin.new_user_form.password_options.send_password.label=Passwort senden
|
||||||
|
ui.admin.new_user_form.error.username_already_in_use=Der angegebene Benutzername wird bereits verwendet.
|
||||||
|
ui.admin.new_user_form.error.email_already_in_use=Die angegebene E-Mail-Adresse ist bereits mit einem Benutzerkonto verbunden.
|
||||||
|
ui.admin.new_user_form.error.password_do_not_match=Die eingegebenen Passw\u00f6rter stimmen nicht \u00fcberein.
|
||||||
|
ui.admin.new_user_form.error.failed_to_send_password=Fehler beim Senden des Passworts an den neuen Benutzer.
|
||||||
|
|
|
||||||
|
|
@ -188,3 +188,16 @@ ui.admin.user_set_password.confirm_password.label=Repeat password
|
||||||
ui.admin.user_set_password.error.do_not_match=Passwords do not match
|
ui.admin.user_set_password.error.do_not_match=Passwords do not match
|
||||||
ui.admin.set_password.new_password.error.not_empty=Password can't be empty
|
ui.admin.set_password.new_password.error.not_empty=Password can't be empty
|
||||||
ui.admin.set_password.password_confirm.error.not_empty=Password confirmation can't be empty
|
ui.admin.set_password.password_confirm.error.not_empty=Password confirmation can't be empty
|
||||||
|
ui.admin.new_user.link=Add new user
|
||||||
|
ui.admin.new_user_form.username.label=User name
|
||||||
|
ui.admin.new_user_form.givenname.label=Given name
|
||||||
|
ui.admin.new_user_form.familyname.label=Family name
|
||||||
|
ui.admin.new_user_form.email.label=Email
|
||||||
|
ui.admin.new_user_form.password_options.set_password.label=Set password
|
||||||
|
ui.admin.new_user_form.password_options.set_password.password.label=Password
|
||||||
|
ui.admin.new_user_form.password_options.set_password.password_confirmation.label=Confirm password
|
||||||
|
ui.admin.new_user_form.password_options.send_password.label=Send password
|
||||||
|
ui.admin.new_user_form.error.username_already_in_use=The provided user name is already in use.
|
||||||
|
ui.admin.new_user_form.error.email_already_in_use=The provided email address is already assigned with an user account.
|
||||||
|
ui.admin.new_user_form.error.password_do_not_match=Passwords do not match.
|
||||||
|
ui.admin.new_user_form.error.failed_to_send_password=Failed to send password to new user.
|
||||||
|
|
|
||||||
|
|
@ -179,3 +179,16 @@ ui.admin.user_set_password.confirm_password.label=Repeat password
|
||||||
ui.admin.user_set_password.error.do_not_match=Passwords do not match
|
ui.admin.user_set_password.error.do_not_match=Passwords do not match
|
||||||
ui.admin.set_password.new_password.error.not_empty=Password can't be empty
|
ui.admin.set_password.new_password.error.not_empty=Password can't be empty
|
||||||
ui.admin.set_password.password_confirm.error.not_empty=Password confirmation can't be empty
|
ui.admin.set_password.password_confirm.error.not_empty=Password confirmation can't be empty
|
||||||
|
ui.admin.new_user.link=Add new user
|
||||||
|
ui.admin.new_user_form.username.label=User name
|
||||||
|
ui.admin.new_user_form.givenname.label=Given name
|
||||||
|
ui.admin.new_user_form.familyname.label=Family name
|
||||||
|
ui.admin.new_user_form.email.label=Email
|
||||||
|
ui.admin.new_user_form.password_options.set_password.label=Set password
|
||||||
|
ui.admin.new_user_form.password_options.set_password.password.label=Password
|
||||||
|
ui.admin.new_user_form.password_options.set_password.password_confirmation.label=Confirm password
|
||||||
|
ui.admin.new_user_form.password_options.send_password.label=Send password
|
||||||
|
ui.admin.new_user_form.error.username_already_in_use=The provided user name is already in use.
|
||||||
|
ui.admin.new_user_form.error.email_already_in_use=The provided email address is already assigned with an user account.
|
||||||
|
ui.admin.new_user_form.error.password_do_not_match=Passwords do not match.
|
||||||
|
ui.admin.new_user_form.error.failed_to_send_password=Failed to send password to new user.
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue