Password Reset application internationalization - SSO

The user interface and email internalization texts are defined in resources_xx.properties files, located in the ubilogin/custom/password-reset –folder (where xx represents a locale defined in the SSO UI template, e.g. ubilogin/custom/password-reset/resources_en.properties for English). Initially this folder is empty, and properties files for required locales should be created as part of installation process. A template properties file for English is available for reference as described below.

The set of supported locales is defined in the SSO Server application UI template and the language selection links are generated using client-side JavaScript. If a resource_xx.properties file for some locale can't be found, or a specific key of a specific language is missing, then the Password Reset application will fall back to looking up the key in the resources.properties file, (i.e. without an ISO-639-1 language identifier in the filename.)

Note that the SMS and email messages sent by the Password Reset are localized in these resource properties by using parameters otp.sms-mt-otp.message.body for the SMS and otp.smtp-otp.message.title and otp.smtp-otp.message.body for the email. The respective parameters in SSO UI messages are not used with Password Reset application.

Messages

Below is the default message resources for English locale. Most up-to-date version of it can be found in ubilogin/custom_templates/password-reset/resources_en.properties, and can be copied as is under the ubilogin/custom/password-reset. Please note that if new message parameters are introduced in future versions, the ubilogin/custom_templates/password-reset/resources_xx.properties will get updated accordingly, but the corresponding files in ubilogin/custom/password-reset/ will need to be manually updated.

resources_en.properties
# begin.jsp
begin.title = Reset password
begin.label.username = Username:
begin.label.mail = E-mail address:
begin.button.cancel = Cancel
begin.button.submit = Next
begin.introtitle = Welcome
begin.introtext = You can reset your password in this application 
begin.helptitle = Help
begin.helptext = Please enter username and e-mail address. You will receive a one-time code to either your email or mobile phone using which you will be allowed to change your password.
begin.optitle = Enter account details
begin.optext = Please enter your username and email address
begin.usernameplaceholder = 
begin.mailplaceholder = 

# otp.jsp
otp.label.otp = One time password:
otp.button.cancel = Cancel
otp.button.submit = Next

# otp.jsp / SMS verification
otp.sms-mt-otp.title = Reset password
otp.sms-mt-otp.sent = A one-time code was sent to your mobile number.
otp.sms-mt-otp.introtitle = Welcome
otp.sms-mt-otp.introtext = You can reset your password in this application.
otp.sms-mt-otp.helptitle = Help
otp.sms-mt-otp.helptext = Please enter the code sent to your mobile phone.
otp.sms-mt-otp.optitle = Mobile verification
otp.sms-mt-otp.optext = A verification code was sent to your mobile phone.

# SMS message 
otp.sms-mt-otp.message.body = The verification code for password reset: {0}

# SMS verification error messages
error.otp.sms-mt-otp.code.missing = Type the verification code you received by SMS
error.otp.sms-mt-otp.code.invalid = Invalid verification code
error.otp.sms-mt-otp.code.expired = The verification code has expired
error.otp.sms-mt-otp.account.locked = Invalid verification code has been given too many times. Try again after a while.
error.otp.sms-mt-otp.unknown = System error

# otp.jsp / Email verification
otp.smtp-otp.title = Reset password
otp.smtp-otp.sent = A one-time code was sent to your email address.
otp.smtp-otp.introtitle = Welcome
otp.smtp-otp.introtext = You can reset your password in this application.
otp.smtp-otp.helptitle = Help
otp.smtp-otp.helptext = Please enter the one time password sent to your email address.
otp.smtp-otp.optitle = Email verification
otp.smtp-otp.optext = A verification code was sent to your email.

# Email message
otp.smtp-otp.message.title = Password reset email verification 
otp.smtp-otp.message.body = The verification code for password reset: {0}
otp.smtp-otp.message.contenttype = text/plain

# Email verification error messages 
error.otp.smtp-otp.code.missing = Type the verification code you received by email
error.otp.smtp-otp.code.invalid = Invalid verification code
error.otp.smtp-otp.code.expired = The verification code has expired
error.otp.smtp-otp.account.locked = Invalid verification code has been given too many times. Try again after a while.
error.otp.smtp-otp.unknown = System error

# input-password.jsp
input-password.title = Reset password
input-password.label.username = Username:
input-password.label.newpassword = Enter new password:
input-password.label.newpasswordconfirm = Confirm new password:
input-password.button.cancel = Cancel
input-password.button.submit = Next
input-password.introtitle = Welcome
input-password.introtext = You can reset your password in this application
input-password.helptitle = Help
input-password.helptext = Specify new password and confirm it
input-password.optitle = Enter credentials
input-password.optext = 

# show-password.jsp
show-password.title = Password reset 
show-password.label.password = New password:
show-password.button.submit = Continue
show-password.introtitle = Welcome
show-password.introtext = You can reset your password in this application.
show-password.helptitle = Help
show-password.helptext = Password was reset. Copy the new password.
show-password.optitle = Your new password
show-password.optext = Your password was reset successfully.

# reset/completed.jsp
completed.title = Password reset 
completed.button.close = Continue
completed.introtitle = Welcome
completed.introtext = You can reset your password in this application
completed.helptitle = Help
completed.helptext = Password was reset.
completed.optitle = Password reset completed
completed.optext = Password was reset successfully.

# noreturn.jsp
noreturn.title = Password reset 
noreturn.introtitle = Action has been canceled.
noreturn.introtext = Password reset terminated, but couldn't continue to target application.
noreturn.helptitle = Help
noreturn.helptext = You can now close this window and browse again to target application.

# Error messages 
error.username.missing = Username is required
error.mail.missing = E-mail address is required
error.account.not-found = User not found
error.account.invalid = User was found but the account is invalid
error.mail.invalid = Invalid e-mail address
error.disabled = The password can not be reset at this time
error.expired = The password has already been changed or reset since this password token was issued 
error.failed = Password reset failed
error.method.not-set = System error. Password method is not set.
error.method.invalid = System error. Password method is invalid.
error.passwords.mismatch = Password did not match confirmed password
error.passwords.undefined = Password field is empty
error.new-password.denied = The new password does not confirm to password policy

Views

Password Reset UI flow depends on how the password method is configured - i.e. if the method allows users to reset a password themselves or alternatively have the system generate a password instead.