CCM NG:
- Form for editing user details - Form for adding a new password git-svn-id: https://svn.libreccm.org/ccm/ccm_ng@3966 8810af33-2d31-482b-a856-94f89814c4dfpull/2/head
parent
e6fab036f4
commit
7d86a6db4c
|
|
@ -23,6 +23,7 @@ import com.arsdigita.bebop.BoxPanel;
|
||||||
import com.arsdigita.bebop.Component;
|
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.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;
|
||||||
|
|
@ -35,6 +36,8 @@ import com.arsdigita.bebop.event.TableActionEvent;
|
||||||
import com.arsdigita.bebop.event.TableActionListener;
|
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.OptionGroup;
|
||||||
|
import com.arsdigita.bebop.form.Password;
|
||||||
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;
|
||||||
|
|
@ -44,6 +47,7 @@ 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 com.arsdigita.mail.Mail;
|
||||||
|
import com.arsdigita.ui.login.UserForm;
|
||||||
|
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
|
@ -76,6 +80,8 @@ public class UserAdmin extends BoxPanel {
|
||||||
private final UsersTable usersTable;
|
private final UsersTable usersTable;
|
||||||
private final ActionLink backToUsersTable;
|
private final ActionLink backToUsersTable;
|
||||||
private final PropertySheet userProperties;
|
private final PropertySheet userProperties;
|
||||||
|
private final Form userEditForm;
|
||||||
|
private final Form passwordSetForm;
|
||||||
private final BoxPanel actionLinks;
|
private final BoxPanel actionLinks;
|
||||||
// private final UserDetails userDetails;
|
// private final UserDetails userDetails;
|
||||||
private final BoxPanel userDetails;
|
private final BoxPanel userDetails;
|
||||||
|
|
@ -144,12 +150,173 @@ public class UserAdmin extends BoxPanel {
|
||||||
userProperties.setIdAttr("userProperties");
|
userProperties.setIdAttr("userProperties");
|
||||||
userDetails.add(userProperties);
|
userDetails.add(userProperties);
|
||||||
|
|
||||||
|
userEditForm = new Form("userEditForm");
|
||||||
|
final TextField username = new TextField("username");
|
||||||
|
username.setLabel(new GlobalizedMessage(
|
||||||
|
"ui.admin.user_edit.username.label", ADMIN_BUNDLE));
|
||||||
|
username.addValidationListener(new NotEmptyValidationListener(
|
||||||
|
new GlobalizedMessage("ui.admin.user_edit.username.error.not_empty",
|
||||||
|
ADMIN_BUNDLE)));
|
||||||
|
userEditForm.add(username);
|
||||||
|
final TextField familyName = new TextField("familyName");
|
||||||
|
familyName.setLabel(new GlobalizedMessage(
|
||||||
|
"ui.admin.user_edit.familyname.label", ADMIN_BUNDLE));
|
||||||
|
familyName.addValidationListener(new NotEmptyValidationListener(
|
||||||
|
new GlobalizedMessage(
|
||||||
|
"ui.admin.user_edit.familyname.error_not_empty",
|
||||||
|
ADMIN_BUNDLE)));
|
||||||
|
userEditForm.add(familyName);
|
||||||
|
final TextField givenName = new TextField("givenName");
|
||||||
|
givenName.setLabel(new GlobalizedMessage(
|
||||||
|
"ui.admin.user_edit.givenname.label", ADMIN_BUNDLE));
|
||||||
|
givenName.addValidationListener(new NotEmptyValidationListener(
|
||||||
|
new GlobalizedMessage(
|
||||||
|
"ui.admin.user_edit.givenname.error.not_empty",
|
||||||
|
ADMIN_BUNDLE)));
|
||||||
|
userEditForm.add(givenName);
|
||||||
|
final CheckboxGroup banned = new CheckboxGroup("banned");
|
||||||
|
banned.addOption(new Option(
|
||||||
|
"banned",
|
||||||
|
new Label(new GlobalizedMessage("ui.admin.user_edit.banned.label",
|
||||||
|
ADMIN_BUNDLE))));
|
||||||
|
userEditForm.add(banned);
|
||||||
|
final CheckboxGroup passwordResetRequired = new CheckboxGroup(
|
||||||
|
"password_reset_required");
|
||||||
|
passwordResetRequired.addOption(new Option(
|
||||||
|
"password_reset_required",
|
||||||
|
new Label(new GlobalizedMessage(
|
||||||
|
"ui.admin.user_edit.password_reset_required.label",
|
||||||
|
ADMIN_BUNDLE))
|
||||||
|
));
|
||||||
|
userEditForm.add(passwordResetRequired);
|
||||||
|
final SaveCancelSection userEditFormSaveCancel = new SaveCancelSection();
|
||||||
|
userEditForm.add(userEditFormSaveCancel);
|
||||||
|
userEditForm.addInitListener(e -> {
|
||||||
|
final PageState state = e.getPageState();
|
||||||
|
|
||||||
|
final String userIdStr = selectedUserId.getSelectedKey(state);
|
||||||
|
final UserRepository userRepository = CdiUtil.createCdiUtil()
|
||||||
|
.findBean(UserRepository.class);
|
||||||
|
final User user = userRepository.findById(Long.parseLong(userIdStr));
|
||||||
|
|
||||||
|
username.setValue(state, user.getName());
|
||||||
|
familyName.setValue(state, user.getFamilyName());
|
||||||
|
givenName.setValue(state, user.getGivenName());
|
||||||
|
if (user.isBanned()) {
|
||||||
|
banned.setValue(state, "banned");
|
||||||
|
}
|
||||||
|
if (user.isPasswordResetRequired()) {
|
||||||
|
passwordResetRequired.setValue(state,
|
||||||
|
"password_reset_required");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
userEditForm.addProcessListener(e -> {
|
||||||
|
final PageState state = e.getPageState();
|
||||||
|
|
||||||
|
if (userEditFormSaveCancel.getSaveButton().isSelected(state)) {
|
||||||
|
final String userIdStr = selectedUserId.getSelectedKey(state);
|
||||||
|
final UserRepository userRepository = CdiUtil.createCdiUtil()
|
||||||
|
.findBean(UserRepository.class);
|
||||||
|
final User user = userRepository.findById(Long.parseLong(
|
||||||
|
userIdStr));
|
||||||
|
|
||||||
|
if (!user.getName().equals(username.getValue(state))) {
|
||||||
|
user.setName((String) username.getValue(state));
|
||||||
|
}
|
||||||
|
if (!user.getFamilyName().equals(familyName.getValue(state))) {
|
||||||
|
user.setFamilyName((String) familyName.getValue(state));
|
||||||
|
}
|
||||||
|
if (!user.getGivenName().equals(givenName.getValue(state))) {
|
||||||
|
user.setGivenName((String) familyName.getValue(state));
|
||||||
|
}
|
||||||
|
|
||||||
|
if ("banned".equals(banned.getValue(state)) && !user.isBanned()) {
|
||||||
|
user.setBanned(true);
|
||||||
|
} else {
|
||||||
|
user.setBanned(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ("password_reset_required".equals(passwordResetRequired
|
||||||
|
.getValue(
|
||||||
|
state))
|
||||||
|
&& !user.isPasswordResetRequired()) {
|
||||||
|
user.setPasswordResetRequired(true);
|
||||||
|
} else {
|
||||||
|
user.setPasswordResetRequired(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
userRepository.save(user);
|
||||||
|
}
|
||||||
|
closeUserEditForm(state);
|
||||||
|
});
|
||||||
|
add(userEditForm);
|
||||||
|
|
||||||
|
passwordSetForm = new Form("password_set_form");
|
||||||
|
final Password newPassword = new Password("new_password");
|
||||||
|
newPassword.setLabel(new GlobalizedMessage(
|
||||||
|
"ui.admin.user_set_password.new_password.label", ADMIN_BUNDLE));
|
||||||
|
newPassword.addValidationListener(new NotEmptyValidationListener(
|
||||||
|
new GlobalizedMessage(
|
||||||
|
"ui.admin.set_password.new_password.error.not_empty",
|
||||||
|
ADMIN_BUNDLE)));
|
||||||
|
passwordSetForm.add(newPassword);
|
||||||
|
final Password passwordConfirm = new Password("password_confirm");
|
||||||
|
passwordConfirm.addValidationListener(new NotEmptyValidationListener(
|
||||||
|
new GlobalizedMessage(
|
||||||
|
"ui.admin.set_password.password_confirm.error.not_empty",
|
||||||
|
ADMIN_BUNDLE)));
|
||||||
|
passwordSetForm.add(newPassword);
|
||||||
|
passwordConfirm.setLabel(new GlobalizedMessage(
|
||||||
|
"ui.admin.user_set_password.confirm_password.label",
|
||||||
|
ADMIN_BUNDLE
|
||||||
|
));
|
||||||
|
passwordSetForm.add(passwordConfirm);
|
||||||
|
final SaveCancelSection passwordSetFormSaveCancel
|
||||||
|
= new SaveCancelSection();
|
||||||
|
passwordSetForm.add(passwordSetFormSaveCancel);
|
||||||
|
passwordSetForm.addValidationListener(e -> {
|
||||||
|
final PageState state = e.getPageState();
|
||||||
|
|
||||||
|
if (passwordSetFormSaveCancel.getSaveButton().isSelected(state)) {
|
||||||
|
final FormData formData = e.getFormData();
|
||||||
|
|
||||||
|
final String password = (String) newPassword.getValue(state);
|
||||||
|
final String confirm = (String) passwordConfirm.getValue(state);
|
||||||
|
|
||||||
|
if (!password.equals(confirm)) {
|
||||||
|
formData.addError(new GlobalizedMessage(
|
||||||
|
"ui.admin.user_set_password.error.do_not_match",
|
||||||
|
ADMIN_BUNDLE));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
passwordSetForm.addProcessListener(e -> {
|
||||||
|
final PageState state = e.getPageState();
|
||||||
|
|
||||||
|
if (passwordSetFormSaveCancel.getSaveButton().isSelected(state)) {
|
||||||
|
final String userIdStr = selectedUserId.getSelectedKey(state);
|
||||||
|
final String password = (String) newPassword.getValue(state);
|
||||||
|
|
||||||
|
final UserRepository userRepository = CdiUtil.createCdiUtil()
|
||||||
|
.findBean(UserRepository.class);
|
||||||
|
final User user = userRepository.findById(Long.parseLong(
|
||||||
|
userIdStr));
|
||||||
|
|
||||||
|
final UserManager userManager = CdiUtil.createCdiUtil()
|
||||||
|
.findBean(
|
||||||
|
UserManager.class);
|
||||||
|
userManager.updatePassword(user, password);
|
||||||
|
}
|
||||||
|
closePasswordSetForm(state);
|
||||||
|
});
|
||||||
|
add(passwordSetForm);
|
||||||
|
|
||||||
actionLinks = new BoxPanel(BoxPanel.HORIZONTAL);
|
actionLinks = new BoxPanel(BoxPanel.HORIZONTAL);
|
||||||
actionLinks.setIdAttr("userDetailsActionLinks");
|
actionLinks.setIdAttr("userDetailsActionLinks");
|
||||||
final ActionLink editUserDetailsLink = new ActionLink(
|
final ActionLink editUserDetailsLink = new ActionLink(
|
||||||
new GlobalizedMessage("ui.admin.user_details.edit", ADMIN_BUNDLE));
|
new GlobalizedMessage("ui.admin.user_details.edit", ADMIN_BUNDLE));
|
||||||
editUserDetailsLink.addActionListener(e -> {
|
editUserDetailsLink.addActionListener(e -> {
|
||||||
//ToDo
|
showUserEditForm(e.getPageState());
|
||||||
});
|
});
|
||||||
actionLinks.add(editUserDetailsLink);
|
actionLinks.add(editUserDetailsLink);
|
||||||
actionLinks.add(new Text(" | "));
|
actionLinks.add(new Text(" | "));
|
||||||
|
|
@ -158,7 +325,7 @@ public class UserAdmin extends BoxPanel {
|
||||||
new GlobalizedMessage("ui.admin.user_details.set_password",
|
new GlobalizedMessage("ui.admin.user_details.set_password",
|
||||||
ADMIN_BUNDLE));
|
ADMIN_BUNDLE));
|
||||||
setPasswordLink.addActionListener(e -> {
|
setPasswordLink.addActionListener(e -> {
|
||||||
//ToDo
|
showPasswordSetForm(e.getPageState());
|
||||||
});
|
});
|
||||||
actionLinks.add(setPasswordLink);
|
actionLinks.add(setPasswordLink);
|
||||||
actionLinks.add(new Text(" | "));
|
actionLinks.add(new Text(" | "));
|
||||||
|
|
@ -170,7 +337,8 @@ public class UserAdmin extends BoxPanel {
|
||||||
"ui.admin.user_details.generate_password.confirm",
|
"ui.admin.user_details.generate_password.confirm",
|
||||||
ADMIN_BUNDLE));
|
ADMIN_BUNDLE));
|
||||||
generatePasswordLink.addActionListener(e -> {
|
generatePasswordLink.addActionListener(e -> {
|
||||||
final UserRepository userRepository = CdiUtil.createCdiUtil().findBean(UserRepository.class);
|
final UserRepository userRepository = CdiUtil.createCdiUtil()
|
||||||
|
.findBean(UserRepository.class);
|
||||||
final User user = userRepository.findById(Long.parseLong(
|
final User user = userRepository.findById(Long.parseLong(
|
||||||
selectedUserId.getSelectedKey(e.getPageState())));
|
selectedUserId.getSelectedKey(e.getPageState())));
|
||||||
|
|
||||||
|
|
@ -508,12 +676,16 @@ public class UserAdmin extends BoxPanel {
|
||||||
|
|
||||||
page.setVisibleDefault(usersTablePanel, true);
|
page.setVisibleDefault(usersTablePanel, true);
|
||||||
page.setVisibleDefault(userDetails, false);
|
page.setVisibleDefault(userDetails, false);
|
||||||
|
page.setVisibleDefault(userEditForm, false);
|
||||||
|
page.setVisibleDefault(passwordSetForm, false);
|
||||||
page.setVisibleDefault(emailForm, false);
|
page.setVisibleDefault(emailForm, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void showUserDetails(final PageState state) {
|
protected void showUserDetails(final PageState state) {
|
||||||
usersTablePanel.setVisible(state, false);
|
usersTablePanel.setVisible(state, false);
|
||||||
userDetails.setVisible(state, true);
|
userDetails.setVisible(state, true);
|
||||||
|
userEditForm.setVisible(state, false);
|
||||||
|
passwordSetForm.setVisible(state, false);
|
||||||
emailForm.setVisible(state, false);
|
emailForm.setVisible(state, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -521,12 +693,48 @@ public class UserAdmin extends BoxPanel {
|
||||||
selectedUserId.clearSelection(state);
|
selectedUserId.clearSelection(state);
|
||||||
usersTablePanel.setVisible(state, true);
|
usersTablePanel.setVisible(state, true);
|
||||||
userDetails.setVisible(state, false);
|
userDetails.setVisible(state, false);
|
||||||
|
userEditForm.setVisible(state, false);
|
||||||
|
passwordSetForm.setVisible(state, false);
|
||||||
|
emailForm.setVisible(state, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void showUserEditForm(final PageState state) {
|
||||||
|
usersTablePanel.setVisible(state, false);
|
||||||
|
userDetails.setVisible(state, false);
|
||||||
|
userEditForm.setVisible(state, true);
|
||||||
|
passwordSetForm.setVisible(state, false);
|
||||||
|
emailForm.setVisible(state, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void closeUserEditForm(final PageState state) {
|
||||||
|
usersTablePanel.setVisible(state, false);
|
||||||
|
userDetails.setVisible(state, true);
|
||||||
|
userEditForm.setVisible(state, false);
|
||||||
|
passwordSetForm.setVisible(state, false);
|
||||||
|
emailForm.setVisible(state, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void showPasswordSetForm(final PageState state) {
|
||||||
|
usersTablePanel.setVisible(state, false);
|
||||||
|
userDetails.setVisible(state, false);
|
||||||
|
userEditForm.setVisible(state, false);
|
||||||
|
passwordSetForm.setVisible(state, true);
|
||||||
|
emailForm.setVisible(state, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void closePasswordSetForm(final PageState state) {
|
||||||
|
usersTablePanel.setVisible(state, false);
|
||||||
|
userDetails.setVisible(state, true);
|
||||||
|
userEditForm.setVisible(state, false);
|
||||||
|
passwordSetForm.setVisible(state, false);
|
||||||
emailForm.setVisible(state, false);
|
emailForm.setVisible(state, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void showEmailForm(final PageState state) {
|
protected void showEmailForm(final PageState state) {
|
||||||
usersTablePanel.setVisible(state, false);
|
usersTablePanel.setVisible(state, false);
|
||||||
userDetails.setVisible(state, false);
|
userDetails.setVisible(state, false);
|
||||||
|
userEditForm.setVisible(state, false);
|
||||||
|
passwordSetForm.setVisible(state, false);
|
||||||
emailForm.setVisible(state, true);
|
emailForm.setVisible(state, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -534,6 +742,8 @@ public class UserAdmin extends BoxPanel {
|
||||||
selectedEmailAddress.clearSelection(state);
|
selectedEmailAddress.clearSelection(state);
|
||||||
usersTablePanel.setVisible(state, false);
|
usersTablePanel.setVisible(state, false);
|
||||||
userDetails.setVisible(state, true);
|
userDetails.setVisible(state, true);
|
||||||
|
userEditForm.setVisible(state, false);
|
||||||
|
passwordSetForm.setVisible(state, false);
|
||||||
emailForm.setVisible(state, false);
|
emailForm.setVisible(state, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -237,7 +237,7 @@ public class User extends Party implements Serializable {
|
||||||
return banned;
|
return banned;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void setBanned(final boolean banned) {
|
public void setBanned(final boolean banned) {
|
||||||
this.banned = banned;
|
this.banned = banned;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -253,7 +253,7 @@ public class User extends Party implements Serializable {
|
||||||
return passwordResetRequired;
|
return passwordResetRequired;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void setPasswordResetRequired(final boolean passwordResetRequired) {
|
public void setPasswordResetRequired(final boolean passwordResetRequired) {
|
||||||
this.passwordResetRequired = passwordResetRequired;
|
this.passwordResetRequired = passwordResetRequired;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -202,3 +202,16 @@ ui.admin.user.email_form.bouncing=Bouncing
|
||||||
ui.admin.user.email_form.address.not_empty=Email address can't be empty.
|
ui.admin.user.email_form.address.not_empty=Email address can't be empty.
|
||||||
ui.admin.user.email_addresses.delete.confirm=Are sure to delete this email address?
|
ui.admin.user.email_addresses.delete.confirm=Are sure to delete this email address?
|
||||||
ui.admin.user_details.generate_password.confirm=Are you sure to reset this users password?
|
ui.admin.user_details.generate_password.confirm=Are you sure to reset this users password?
|
||||||
|
ui.admin.user_edit.username.label=User name
|
||||||
|
ui.admin.user_edit.familyname.label=Familyname
|
||||||
|
ui.admin.user_edit.givenname.label=Given name
|
||||||
|
ui.admin.user_edit.banned.label=Banned?
|
||||||
|
ui.admin.user_edit.password_reset_required.label=Password reset required?
|
||||||
|
ui.admin.user_edit.username.error.not_empty=User name can't be empty
|
||||||
|
ui.admin.user_edit.familyname.error.not_empty=Familyname can't be empty
|
||||||
|
ui.admin.user_edit.givenname.error.not_empty=Given name can't be empty
|
||||||
|
ui.admin.user_set_password.new_password.label=Password
|
||||||
|
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.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
|
||||||
|
|
|
||||||
|
|
@ -202,3 +202,16 @@ ui.admin.user.email_form.bouncing=Wird zur\u00fcckgewiesen
|
||||||
ui.admin.user.email_form.address.not_empty=Die E-Mail-Adresse darf nicht leer sein.
|
ui.admin.user.email_form.address.not_empty=Die E-Mail-Adresse darf nicht leer sein.
|
||||||
ui.admin.user.email_addresses.delete.confirm=Sind Sie sicher, dass Sie diese E-Mail-Adresse l\u00f6schen wollen?
|
ui.admin.user.email_addresses.delete.confirm=Sind Sie sicher, dass Sie diese E-Mail-Adresse l\u00f6schen wollen?
|
||||||
ui.admin.user_details.generate_password.confirm=Sind Sie sicher, dass Sie das Passwort dieses Benutzers zur\u00fccksetzen wollen?
|
ui.admin.user_details.generate_password.confirm=Sind Sie sicher, dass Sie das Passwort dieses Benutzers zur\u00fccksetzen wollen?
|
||||||
|
ui.admin.user_edit.username.label=Benutzername
|
||||||
|
ui.admin.user_edit.familyname.label=Familienname
|
||||||
|
ui.admin.user_edit.givenname.label=Vorname
|
||||||
|
ui.admin.user_edit.banned.label=Gesperrt?
|
||||||
|
ui.admin.user_edit.password_reset_required.label=Neues Passwort erforderlich?
|
||||||
|
ui.admin.user_edit.username.error.not_empty=Benutzername darf nicht leer sein
|
||||||
|
ui.admin.user_edit.familyname.error.not_empty=Familienname darf nicht leer sein
|
||||||
|
ui.admin.user_edit.givenname.error.not_empty=Vorname darf nicht leer sein
|
||||||
|
ui.admin.user_set_password.new_password.label=Passwort
|
||||||
|
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.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
|
||||||
|
|
|
||||||
|
|
@ -175,3 +175,16 @@ ui.admin.user.email_form.bouncing=Bouncing
|
||||||
ui.admin.user.email_form.address.not_empty=Email address can't be empty.
|
ui.admin.user.email_form.address.not_empty=Email address can't be empty.
|
||||||
ui.admin.user.email_addresses.delete.confirm=Are sure to delete this email address?
|
ui.admin.user.email_addresses.delete.confirm=Are sure to delete this email address?
|
||||||
ui.admin.user_details.generate_password.confirm=Are you sure to reset this users password?
|
ui.admin.user_details.generate_password.confirm=Are you sure to reset this users password?
|
||||||
|
ui.admin.user_edit.username.label=User name
|
||||||
|
ui.admin.user_edit.familyname.label=Familyname
|
||||||
|
ui.admin.user_edit.givenname.label=Given name
|
||||||
|
ui.admin.user_edit.banned.label=Banned?
|
||||||
|
ui.admin.user_edit.password_reset_required.label=Password reset required?
|
||||||
|
ui.admin.user_edit.username.error.not_empty=User name can't be empty
|
||||||
|
ui.admin.user_edit.familyname.error.not_empty=Familyname can't be empty
|
||||||
|
ui.admin.user_edit.givenname.error.not_empty=Given name can't be empty
|
||||||
|
ui.admin.user_set_password.new_password.label=Password
|
||||||
|
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.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
|
||||||
|
|
|
||||||
|
|
@ -166,3 +166,16 @@ ui.admin.user.email_form.bouncing=Bouncing
|
||||||
ui.admin.user.email_form.address.not_empty=Email address can't be empty.
|
ui.admin.user.email_form.address.not_empty=Email address can't be empty.
|
||||||
ui.admin.user.email_addresses.delete.confirm=Are sure to delete this email address?
|
ui.admin.user.email_addresses.delete.confirm=Are sure to delete this email address?
|
||||||
ui.admin.user_details.generate_password.confirm=Are you sure to reset this users password?
|
ui.admin.user_details.generate_password.confirm=Are you sure to reset this users password?
|
||||||
|
ui.admin.user_edit.username.label=User name
|
||||||
|
ui.admin.user_edit.familyname.label=Familyname
|
||||||
|
ui.admin.user_edit.givenname.label=Given name
|
||||||
|
ui.admin.user_edit.banned.label=Banned?
|
||||||
|
ui.admin.user_edit.password_reset_required.label=Password reset required?
|
||||||
|
ui.admin.user_edit.username.error.not_empty=User name can't be empty
|
||||||
|
ui.admin.user_edit.familyname.error.not_empty=Familyname can't be empty
|
||||||
|
ui.admin.user_edit.givenname.error.not_empty=Given name can't be empty
|
||||||
|
ui.admin.user_set_password.new_password.label=Password
|
||||||
|
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.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
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue