From 2a189307eb0a6693a8d64b62e3845ca87c58d1eb Mon Sep 17 00:00:00 2001 From: ftimme <ft@falkotimme.com> Date: Fri, 18 May 2012 12:34:18 +0000 Subject: [PATCH] - Added "Repeat Password" field to all forms where a password has to be set. --- interface/web/admin/lib/lang/de_remote_user.lng | 3 +++ interface/web/admin/lib/lang/de_users.lng | 3 +++ interface/web/admin/lib/lang/en_remote_user.lng | 3 +++ interface/web/admin/lib/lang/en_users.lng | 3 +++ .../web/admin/templates/remote_user_edit.htm | 8 +++++++- .../web/admin/templates/users_user_edit.htm | 8 +++++++- interface/web/client/lib/lang/de_client.lng | 3 +++ interface/web/client/lib/lang/de_reseller.lng | 3 +++ interface/web/client/lib/lang/en_client.lng | 3 +++ interface/web/client/lib/lang/en_reseller.lng | 3 +++ .../client/templates/client_edit_address.htm | 8 +++++++- .../client/templates/reseller_edit_address.htm | 8 +++++++- interface/web/js/scrigo.js.php | 17 +++++++++++++++++ .../web/mail/lib/lang/de_mail_mailinglist.lng | 3 +++ interface/web/mail/lib/lang/de_mail_user.lng | 7 +++++-- .../web/mail/lib/lang/en_mail_mailinglist.lng | 3 +++ interface/web/mail/lib/lang/en_mail_user.lng | 3 +++ .../mail/templates/mail_mailinglist_edit.htm | 8 +++++++- .../mail/templates/mail_user_mailbox_edit.htm | 8 +++++++- .../mailuser/lib/lang/en_mail_user_password.lng | 4 ++++ .../templates/mail_user_password_edit.htm | 8 +++++++- interface/web/sites/lib/lang/de_database.lng | 2 ++ interface/web/sites/lib/lang/de_ftp_user.lng | 3 +++ interface/web/sites/lib/lang/de_shell_user.lng | 3 +++ interface/web/sites/lib/lang/de_web_domain.lng | 3 +++ .../web/sites/lib/lang/de_web_folder_user.lng | 3 +++ interface/web/sites/lib/lang/de_webdav_user.lng | 3 +++ interface/web/sites/lib/lang/en_database.lng | 3 +++ interface/web/sites/lib/lang/en_ftp_user.lng | 3 +++ interface/web/sites/lib/lang/en_shell_user.lng | 3 +++ interface/web/sites/lib/lang/en_web_domain.lng | 3 +++ .../web/sites/lib/lang/en_web_folder_user.lng | 3 +++ interface/web/sites/lib/lang/en_webdav_user.lng | 3 +++ interface/web/sites/templates/database_edit.htm | 8 +++++++- interface/web/sites/templates/ftp_user_edit.htm | 8 +++++++- .../web/sites/templates/shell_user_edit.htm | 8 +++++++- .../web/sites/templates/web_domain_stats.htm | 8 +++++++- .../sites/templates/web_folder_user_edit.htm | 8 +++++++- .../web/sites/templates/webdav_user_edit.htm | 8 +++++++- .../web/themes/default/css/screen/uni-form.css | 4 ++-- .../web/tools/lib/lang/de_usersettings.lng | 3 +++ .../web/tools/lib/lang/en_usersettings.lng | 3 +++ interface/web/tools/templates/user_settings.htm | 12 +++++++----- interface/web/tools/user_settings.php | 2 +- interface/web/vm/lib/lang/de_openvz_vm.lng | 1 - interface/web/vm/lib/lang/en_openvz_vm.lng | 1 - interface/web/vm/templates/openvz_vm_edit.htm | 2 +- 47 files changed, 202 insertions(+), 26 deletions(-) diff --git a/interface/web/admin/lib/lang/de_remote_user.lng b/interface/web/admin/lib/lang/de_remote_user.lng index 3bf7e62197..036eda2c69 100644 --- a/interface/web/admin/lib/lang/de_remote_user.lng +++ b/interface/web/admin/lib/lang/de_remote_user.lng @@ -41,4 +41,7 @@ $wb['DNS srv functions'] = 'DNS srv Funktionen'; $wb['DNS txt functions'] = 'DNS txt Funktionen'; $wb['Mail mailing list functions'] = 'Mail mailinglist functions'; $wb['generate_password_txt'] = 'Passwort erzeugen'; +$wb['repeat_password_txt'] = 'Passwort wiederholen'; +$wb['password_mismatch_txt'] = 'Die Passwörter stimmen nicht überein.'; +$wb['password_match_txt'] = 'Die Passwörter stimmen überein.'; ?> diff --git a/interface/web/admin/lib/lang/de_users.lng b/interface/web/admin/lib/lang/de_users.lng index 6145d1f6a8..1ead952e53 100644 --- a/interface/web/admin/lib/lang/de_users.lng +++ b/interface/web/admin/lib/lang/de_users.lng @@ -26,4 +26,7 @@ $wb['username_unique'] = 'Es gibt bereits einen Benutzer mit diesem Namen'; $wb['startmodule_err'] = 'Start Modul ist nicht innerhalb der Module.'; $wb['password_strength_txt'] = 'Passwortkomplexität'; $wb['generate_password_txt'] = 'Passwort erzeugen'; +$wb['repeat_password_txt'] = 'Passwort wiederholen'; +$wb['password_mismatch_txt'] = 'Die Passwörter stimmen nicht überein.'; +$wb['password_match_txt'] = 'Die Passwörter stimmen überein.'; ?> diff --git a/interface/web/admin/lib/lang/en_remote_user.lng b/interface/web/admin/lib/lang/en_remote_user.lng index 6883c11deb..c488f65516 100644 --- a/interface/web/admin/lib/lang/en_remote_user.lng +++ b/interface/web/admin/lib/lang/en_remote_user.lng @@ -41,4 +41,7 @@ $wb['DNS rp functions'] = 'DNS rp functions'; $wb['DNS srv functions'] = 'DNS srv functions'; $wb['DNS txt functions'] = 'DNS txt functions'; $wb['generate_password_txt'] = 'Generate Password'; +$wb['repeat_password_txt'] = 'Repeat Password'; +$wb['password_mismatch_txt'] = 'The passwords do not match.'; +$wb['password_match_txt'] = 'The passwords do match.'; ?> diff --git a/interface/web/admin/lib/lang/en_users.lng b/interface/web/admin/lib/lang/en_users.lng index 573f18a67b..c6a418e0f3 100644 --- a/interface/web/admin/lib/lang/en_users.lng +++ b/interface/web/admin/lib/lang/en_users.lng @@ -26,4 +26,7 @@ $wb["groups_txt"] = 'Groups'; $wb["default_group_txt"] = 'Default Group'; $wb["startmodule_err"] = 'Start module is not within modules.'; $wb['generate_password_txt'] = 'Generate Password'; +$wb['repeat_password_txt'] = 'Repeat Password'; +$wb['password_mismatch_txt'] = 'The passwords do not match.'; +$wb['password_match_txt'] = 'The passwords do match.'; ?> diff --git a/interface/web/admin/templates/remote_user_edit.htm b/interface/web/admin/templates/remote_user_edit.htm index 945a297148..6aa3a31b39 100644 --- a/interface/web/admin/templates/remote_user_edit.htm +++ b/interface/web/admin/templates/remote_user_edit.htm @@ -13,13 +13,19 @@ <div class="ctrlHolder"> <label for="remote_password">{tmpl_var name='password_txt'}</label> - <input name="remote_password" id="password" value="{tmpl_var name='remote_password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value)" /> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> + <input name="remote_password" id="password" value="{tmpl_var name='remote_password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" /> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> </div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='password_strength_txt'}</p> <div id="passBar"></div> <p class="formHint"><span id="passText"> </span></p> </div> + <div class="ctrlHolder"> + <label for="repeat_password">{tmpl_var name='repeat_password_txt'}</label> + <input name="repeat_password" id="repeat_password" value="" size="15" maxlength="100" type="password" class="textInput" style="width:100px;" onkeyup="checkPassMatch('password','repeat_password');" /> + </div> + <div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div> + <div id="confirmpasswordOK" style="display:none;" class="confirmpasswordok">{tmpl_var name='password_match_txt'}</div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='function_txt'}</p> <div class="multiField"> diff --git a/interface/web/admin/templates/users_user_edit.htm b/interface/web/admin/templates/users_user_edit.htm index 40622ef255..fffb766bbb 100644 --- a/interface/web/admin/templates/users_user_edit.htm +++ b/interface/web/admin/templates/users_user_edit.htm @@ -11,13 +11,19 @@ </div> <div class="ctrlHolder"> <label for="passwort">{tmpl_var name='passwort_txt'}</label> - <input name="passwort" id="passwort" value="{tmpl_var name='passwort'}" size="15" maxlength="100" type="password" class="textInput" onkeyup="pass_check(this.value)"/> <a href="javascript:void(0);" onClick="generatePassword('passwort');">{tmpl_var name='generate_password_txt'}</a> + <input name="passwort" id="passwort" value="{tmpl_var name='passwort'}" size="15" maxlength="100" type="password" class="textInput" onkeyup="pass_check(this.value);checkPassMatch('passwort','repeat_password');"/> <a href="javascript:void(0);" onClick="generatePassword('passwort');">{tmpl_var name='generate_password_txt'}</a> </div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='password_strength_txt'}</p> <div id="passBar"></div> <p class="formHint"><span id="passText"> </span></p> </div> + <div class="ctrlHolder"> + <label for="repeat_password">{tmpl_var name='repeat_password_txt'}</label> + <input name="repeat_password" id="repeat_password" value="" size="15" maxlength="100" type="password" class="textInput" style="width:100px;" onkeyup="checkPassMatch('passwort','repeat_password');" /> + </div> + <div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div> + <div id="confirmpasswordOK" style="display:none;" class="confirmpasswordok">{tmpl_var name='password_match_txt'}</div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='modules_txt'}</p> <div class="multiField"> diff --git a/interface/web/client/lib/lang/de_client.lng b/interface/web/client/lib/lang/de_client.lng index 88adbff4b8..d2b5201db9 100644 --- a/interface/web/client/lib/lang/de_client.lng +++ b/interface/web/client/lib/lang/de_client.lng @@ -119,4 +119,7 @@ $wb["cron_job_limits_txt"] = 'Cron Job-Limits'; $wb["dns_limits_txt"] = 'DNS-Limits'; $wb["virtualization_limits_txt"] = 'Virtualisierungs-Limits'; $wb['generate_password_txt'] = 'Passwort erzeugen'; +$wb['repeat_password_txt'] = 'Passwort wiederholen'; +$wb['password_mismatch_txt'] = 'Die Passwörter stimmen nicht überein.'; +$wb['password_match_txt'] = 'Die Passwörter stimmen überein.'; ?> diff --git a/interface/web/client/lib/lang/de_reseller.lng b/interface/web/client/lib/lang/de_reseller.lng index e938cde186..8fe5e42648 100644 --- a/interface/web/client/lib/lang/de_reseller.lng +++ b/interface/web/client/lib/lang/de_reseller.lng @@ -114,4 +114,7 @@ $wb["cron_job_limits_txt"] = 'Cron Job-Limits'; $wb["dns_limits_txt"] = 'DNS-Limits'; $wb["virtualization_limits_txt"] = 'Virtualisierungs-Limits'; $wb['generate_password_txt'] = 'Passwort erzeugen'; +$wb['repeat_password_txt'] = 'Passwort wiederholen'; +$wb['password_mismatch_txt'] = 'Die Passwörter stimmen nicht überein.'; +$wb['password_match_txt'] = 'Die Passwörter stimmen überein.'; ?> diff --git a/interface/web/client/lib/lang/en_client.lng b/interface/web/client/lib/lang/en_client.lng index d8b3c2c88c..d809fcb642 100644 --- a/interface/web/client/lib/lang/en_client.lng +++ b/interface/web/client/lib/lang/en_client.lng @@ -122,4 +122,7 @@ $wb["cron_job_limits_txt"] = 'Cron Job Limits'; $wb["dns_limits_txt"] = 'DNS Limits'; $wb["virtualization_limits_txt"] = 'Virtualization Limits'; $wb['generate_password_txt'] = 'Generate Password'; +$wb['repeat_password_txt'] = 'Repeat Password'; +$wb['password_mismatch_txt'] = 'The passwords do not match.'; +$wb['password_match_txt'] = 'The passwords do match.'; ?> diff --git a/interface/web/client/lib/lang/en_reseller.lng b/interface/web/client/lib/lang/en_reseller.lng index ba2e7bbdd0..433721605e 100644 --- a/interface/web/client/lib/lang/en_reseller.lng +++ b/interface/web/client/lib/lang/en_reseller.lng @@ -116,4 +116,7 @@ $wb["cron_job_limits_txt"] = 'Cron Job Limits'; $wb["dns_limits_txt"] = 'DNS Limits'; $wb["virtualization_limits_txt"] = 'Virtualization Limits'; $wb['generate_password_txt'] = 'Generate Password'; +$wb['repeat_password_txt'] = 'Repeat Password'; +$wb['password_mismatch_txt'] = 'The passwords do not match.'; +$wb['password_match_txt'] = 'The passwords do match.'; ?> diff --git a/interface/web/client/templates/client_edit_address.htm b/interface/web/client/templates/client_edit_address.htm index 5799d863da..2c37a97df8 100644 --- a/interface/web/client/templates/client_edit_address.htm +++ b/interface/web/client/templates/client_edit_address.htm @@ -23,13 +23,19 @@ </div> <div class="ctrlHolder"> <label for="password">{tmpl_var name='password_txt'}</label> - <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value)" /> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> + <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" /> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> </div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='password_strength_txt'}</p> <div id="passBar"></div> <p class="formHint"><span id="passText"> </span></p> </div> + <div class="ctrlHolder"> + <label for="repeat_password">{tmpl_var name='repeat_password_txt'}</label> + <input name="repeat_password" id="repeat_password" value="" size="15" maxlength="100" type="password" class="textInput" style="width:100px;" onkeyup="checkPassMatch('password','repeat_password');" /> + </div> + <div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div> + <div id="confirmpasswordOK" style="display:none;" class="confirmpasswordok">{tmpl_var name='password_match_txt'}</div> <div class="ctrlHolder"> <label for="language">{tmpl_var name='language_txt'}</label> <select name="language" id="language" class="selectInput withicons"> diff --git a/interface/web/client/templates/reseller_edit_address.htm b/interface/web/client/templates/reseller_edit_address.htm index 0458aa8d30..bccb22f93c 100644 --- a/interface/web/client/templates/reseller_edit_address.htm +++ b/interface/web/client/templates/reseller_edit_address.htm @@ -23,13 +23,19 @@ </div> <div class="ctrlHolder"> <label for="password">{tmpl_var name='password_txt'}</label> - <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value)" /> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> + <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" /> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> </div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='password_strength_txt'}</p> <div id="passBar"></div> <p class="formHint"><span id="passText"> </span></p> </div> + <div class="ctrlHolder"> + <label for="repeat_password">{tmpl_var name='repeat_password_txt'}</label> + <input name="repeat_password" id="repeat_password" value="" size="15" maxlength="100" type="password" class="textInput" style="width:100px;" onkeyup="checkPassMatch('password','repeat_password');" /> + </div> + <div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div> + <div id="confirmpasswordOK" style="display:none;" class="confirmpasswordok">{tmpl_var name='password_match_txt'}</div> <div class="ctrlHolder"> <label for="language">{tmpl_var name='language_txt'}</label> <select name="language" id="language" class="selectInput withicons"> diff --git a/interface/web/js/scrigo.js.php b/interface/web/js/scrigo.js.php index cc6a80f9d6..7e01c7d236 100644 --- a/interface/web/js/scrigo.js.php +++ b/interface/web/js/scrigo.js.php @@ -558,6 +558,23 @@ function generatePassword(passwordFieldID){ newPWField.attr('id', passwordFieldID).val(password(10, true)).trigger('keyup'); } +function checkPassMatch(pwField1,pwField2){ + var rpass = jQuery('#'+pwField2).val(); + var npass = jQuery('#'+pwField1).val(); + if(npass!= rpass) { + jQuery('#confirmpasswordOK').hide(); + jQuery('#confirmpasswordError').show(); + jQuery('button.positive').attr('disabled','disabled'); + jQuery('.tabbox_tabs ul li a').attr('onclick','return false;'); + return false; + } else { + jQuery('#confirmpasswordError').hide(); + jQuery('#confirmpasswordOK').show(); + jQuery('button.positive').removeAttr('disabled'); + jQuery('.tabbox_tabs ul li a').removeAttr('onclick'); + } +} + function getRandomInt(min, max){ return Math.floor(Math.random() * (max - min + 1)) + min; } diff --git a/interface/web/mail/lib/lang/de_mail_mailinglist.lng b/interface/web/mail/lib/lang/de_mail_mailinglist.lng index b9dbb7def0..460d4f8670 100644 --- a/interface/web/mail/lib/lang/de_mail_mailinglist.lng +++ b/interface/web/mail/lib/lang/de_mail_mailinglist.lng @@ -13,4 +13,7 @@ $wb['client_txt'] = 'Client'; $wb['email_txt'] = 'Email'; $wb['password_txt'] = 'Password'; $wb['generate_password_txt'] = 'Passwort erzeugen'; +$wb['repeat_password_txt'] = 'Passwort wiederholen'; +$wb['password_mismatch_txt'] = 'Die Passwörter stimmen nicht überein.'; +$wb['password_match_txt'] = 'Die Passwörter stimmen überein.'; ?> diff --git a/interface/web/mail/lib/lang/de_mail_user.lng b/interface/web/mail/lib/lang/de_mail_user.lng index a85637bdb8..38cfc9c53c 100644 --- a/interface/web/mail/lib/lang/de_mail_user.lng +++ b/interface/web/mail/lib/lang/de_mail_user.lng @@ -32,7 +32,7 @@ $wb['autoresponder_end_date_isgreater'] = 'Enddatum muss angegeben werden und mu $wb['move_junk_txt'] = 'Spam E-Mails in den Junk Ordner verschieben'; $wb['name_txt'] = 'Name'; $wb['name_optional_txt'] = '(optional)'; -$wb['autoresponder_active'] = 'Enable the autoresponder'; +$wb['autoresponder_active'] = 'Autoresponder aktivieren'; $wb['cc_txt'] = 'Send copy to'; $wb['cc_error_isemail'] = 'The Send copy to field does not conatin a valid email address'; $wb['login_error_unique'] = 'Login wird bereits verwendet.'; @@ -40,6 +40,9 @@ $wb['login_error_regex'] = 'Zulässige Zeichen sind A-Z, a-z, 0-9, ., _ und -.'; $wb['login_txt'] = 'Login'; $wb['error_login_email_txt'] = 'Dieser Loginname ist nicht zulässig. Bitte verwenden Sie einen anderen Loginnamen oder die E-Mail-Adresse als Login.'; $wb['domain_txt'] = 'Domain'; -$wb['now_txt'] = 'Now'; +$wb['now_txt'] = 'Jetzt'; $wb['generate_password_txt'] = 'Passwort erzeugen'; +$wb['repeat_password_txt'] = 'Passwort wiederholen'; +$wb['password_mismatch_txt'] = 'Die Passwörter stimmen nicht überein.'; +$wb['password_match_txt'] = 'Die Passwörter stimmen überein.'; ?> diff --git a/interface/web/mail/lib/lang/en_mail_mailinglist.lng b/interface/web/mail/lib/lang/en_mail_mailinglist.lng index 57c6fbb1b5..d42c71be4c 100644 --- a/interface/web/mail/lib/lang/en_mail_mailinglist.lng +++ b/interface/web/mail/lib/lang/en_mail_mailinglist.lng @@ -13,4 +13,7 @@ $wb["client_txt"] = 'Client'; $wb["email_txt"] = 'Email'; $wb["password_txt"] = 'Password'; $wb['generate_password_txt'] = 'Generate Password'; +$wb['repeat_password_txt'] = 'Repeat Password'; +$wb['password_mismatch_txt'] = 'The passwords do not match.'; +$wb['password_match_txt'] = 'The passwords do match.'; ?> \ No newline at end of file diff --git a/interface/web/mail/lib/lang/en_mail_user.lng b/interface/web/mail/lib/lang/en_mail_user.lng index b154973435..f180deea83 100644 --- a/interface/web/mail/lib/lang/en_mail_user.lng +++ b/interface/web/mail/lib/lang/en_mail_user.lng @@ -44,4 +44,7 @@ $wb['login_error_regex'] = 'Valid characters are A-Z, a-z, 0-9, ., _ and -.'; $wb['login_txt'] = 'Login'; $wb['error_login_email_txt'] = 'This login is not allowed. Please enter a different login or use the mail address as login.'; $wb['generate_password_txt'] = 'Generate Password'; +$wb['repeat_password_txt'] = 'Repeat Password'; +$wb['password_mismatch_txt'] = 'The passwords do not match.'; +$wb['password_match_txt'] = 'The passwords do match.'; ?> diff --git a/interface/web/mail/templates/mail_mailinglist_edit.htm b/interface/web/mail/templates/mail_mailinglist_edit.htm index 5072240238..b7f31ef8d9 100644 --- a/interface/web/mail/templates/mail_mailinglist_edit.htm +++ b/interface/web/mail/templates/mail_mailinglist_edit.htm @@ -60,13 +60,19 @@ </tmpl_if> <div class="ctrlHolder"> <label for="password">{tmpl_var name='password_txt'}</label> - <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value)" /> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> + <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" /> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> </div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='password_strength_txt'}</p> <div id="passBar"></div> <p class="formHint"><span id="passText"> </span></p> </div> + <div class="ctrlHolder"> + <label for="repeat_password">{tmpl_var name='repeat_password_txt'}</label> + <input name="repeat_password" id="repeat_password" value="" size="15" maxlength="100" type="password" class="textInput" style="width:100px;" onkeyup="checkPassMatch('password','repeat_password');" /> + </div> + <div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div> + <div id="confirmpasswordOK" style="display:none;" class="confirmpasswordok">{tmpl_var name='password_match_txt'}</div> </fieldset> <input type="hidden" name="id" value="{tmpl_var name='id'}"> diff --git a/interface/web/mail/templates/mail_user_mailbox_edit.htm b/interface/web/mail/templates/mail_user_mailbox_edit.htm index 9a89f1e7fd..0bc7d87d0d 100644 --- a/interface/web/mail/templates/mail_user_mailbox_edit.htm +++ b/interface/web/mail/templates/mail_user_mailbox_edit.htm @@ -23,13 +23,19 @@ </div></tmpl_if> <div class="ctrlHolder"> <label for="password">{tmpl_var name='password_txt'}</label> - <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value)" /> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> + <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" /> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> </div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='password_strength_txt'}</p> <div id="passBar"></div> <p class="formHint"><span id="passText"> </span></p> </div> + <div class="ctrlHolder"> + <label for="repeat_password">{tmpl_var name='repeat_password_txt'}</label> + <input name="repeat_password" id="repeat_password" value="" size="15" maxlength="100" type="password" class="textInput" style="width:100px;" onkeyup="checkPassMatch('password','repeat_password');" /> + </div> + <div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div> + <div id="confirmpasswordOK" style="display:none;" class="confirmpasswordok">{tmpl_var name='password_match_txt'}</div> <div class="ctrlHolder"> <label for="quota">{tmpl_var name='quota_txt'}</label> <input name="quota" id="quota" value="{tmpl_var name='quota'}" size="30" maxlength="255" type="text" class="textInput formLengthLimit" /><p class="formInputUnity"> MB</p> diff --git a/interface/web/mailuser/lib/lang/en_mail_user_password.lng b/interface/web/mailuser/lib/lang/en_mail_user_password.lng index 77e68419d3..43c114a81c 100644 --- a/interface/web/mailuser/lib/lang/en_mail_user_password.lng +++ b/interface/web/mailuser/lib/lang/en_mail_user_password.lng @@ -3,4 +3,8 @@ $wb["mailbox_password_txt"] = 'Mailbox password'; $wb["password_txt"] = 'Password'; $wb["password_strength_txt"] = 'Password strength'; $wb["email_txt"] = 'Email'; +$wb['generate_password_txt'] = 'Generate Password'; +$wb['repeat_password_txt'] = 'Repeat Password'; +$wb['password_mismatch_txt'] = 'The passwords do not match.'; +$wb['password_match_txt'] = 'The passwords do match.'; ?> \ No newline at end of file diff --git a/interface/web/mailuser/templates/mail_user_password_edit.htm b/interface/web/mailuser/templates/mail_user_password_edit.htm index c8f5ba9b82..ed1d7ce757 100644 --- a/interface/web/mailuser/templates/mail_user_password_edit.htm +++ b/interface/web/mailuser/templates/mail_user_password_edit.htm @@ -11,13 +11,19 @@ </div> <div class="ctrlHolder"> <label for="password">{tmpl_var name='password_txt'}</label> - <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value)" /> + <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" /> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> </div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='password_strength_txt'}</p> <div id="passBar"></div> <p class="formHint"><span id="passText"> </span></p> </div> + <div class="ctrlHolder"> + <label for="repeat_password">{tmpl_var name='repeat_password_txt'}</label> + <input name="repeat_password" id="repeat_password" value="" size="15" maxlength="100" type="password" class="textInput" style="width:100px;" onkeyup="checkPassMatch('password','repeat_password');" /> + </div> + <div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div> + <div id="confirmpasswordOK" style="display:none;" class="confirmpasswordok">{tmpl_var name='password_match_txt'}</div> </fieldset> <input type="hidden" name="id" value="{tmpl_var name='id'}"> diff --git a/interface/web/sites/lib/lang/de_database.lng b/interface/web/sites/lib/lang/de_database.lng index dce54bb3c1..778346eb1e 100644 --- a/interface/web/sites/lib/lang/de_database.lng +++ b/interface/web/sites/lib/lang/de_database.lng @@ -23,4 +23,6 @@ $wb['password_strength_txt'] = 'Passwortkomplexität'; $wb['database_name_error_len'] = 'Datenbank Name - {db} - zu lang. Die max. Datenbank Namen Länge inkl. Präfix ist 64 Zeichen.'; $wb['database_user_error_len'] = 'Datenbank Benutzername - {user}- zu lang. Die max. Datenbank Benutzernamen Länge inkl. Präfix ist 16 Zeichen.'; $wb['generate_password_txt'] = 'Passwort erzeugen'; +$wb["btn_save_txt"] = 'Speichern'; +$wb["btn_cancel_txt"] = 'Abbrechen'; ?> diff --git a/interface/web/sites/lib/lang/de_ftp_user.lng b/interface/web/sites/lib/lang/de_ftp_user.lng index 13af049247..c977b658f2 100644 --- a/interface/web/sites/lib/lang/de_ftp_user.lng +++ b/interface/web/sites/lib/lang/de_ftp_user.lng @@ -28,4 +28,7 @@ $wb['quota_size_error_regex'] = 'Quota: Geben Sie -1 ein für unlimitiert oder e $wb['dir_dot_error'] = 'Kein .. im Pfad erlaubt.'; $wb['dir_slashdot_error'] = 'Kein ./ im Pfad erlaubt.'; $wb['generate_password_txt'] = 'Passwort erzeugen'; +$wb['repeat_password_txt'] = 'Passwort wiederholen'; +$wb['password_mismatch_txt'] = 'Die Passwörter stimmen nicht überein.'; +$wb['password_match_txt'] = 'Die Passwörter stimmen überein.'; ?> diff --git a/interface/web/sites/lib/lang/de_shell_user.lng b/interface/web/sites/lib/lang/de_shell_user.lng index fb0a330388..ccf204b76c 100644 --- a/interface/web/sites/lib/lang/de_shell_user.lng +++ b/interface/web/sites/lib/lang/de_shell_user.lng @@ -23,4 +23,7 @@ $wb['ssh_rsa_txt'] = 'SSH-RSA Public Key (für key-basierte Logins)'; $wb['dir_dot_error'] = 'Kein .. im Pfad erlaubt.'; $wb['dir_slashdot_error'] = 'Kein ./ im Pfad erlaubt.'; $wb['generate_password_txt'] = 'Passwort erzeugen'; +$wb['repeat_password_txt'] = 'Passwort wiederholen'; +$wb['password_mismatch_txt'] = 'Die Passwörter stimmen nicht überein.'; +$wb['password_match_txt'] = 'Die Passwörter stimmen überein.'; ?> diff --git a/interface/web/sites/lib/lang/de_web_domain.lng b/interface/web/sites/lib/lang/de_web_domain.lng index 4fb8bed331..15d7d1987c 100644 --- a/interface/web/sites/lib/lang/de_web_domain.lng +++ b/interface/web/sites/lib/lang/de_web_domain.lng @@ -99,4 +99,7 @@ $wb["pm_process_idle_timeout_error_regex"] = 'PHP-FPM pm.process_idle_timeout mu $wb["pm_max_requests_error_regex"] = 'PHP-FPM pm.max_requests muß eine ganze Zahl >= 0 sein.'; $wb["pm_ondemand_hint_txt"] = 'Bitte beachten Sie, daß Ihre PHP-Version >= 5.3.9 sein muß, wenn Sie den ondemand Process-Manager nutzen möchten. Wenn Sie ondemand für eine ältere PHP-Version auswählen, wird PHP nicht mehr starten!'; $wb['generate_password_txt'] = 'Passwort erzeugen'; +$wb['repeat_password_txt'] = 'Passwort wiederholen'; +$wb['password_mismatch_txt'] = 'Die Passwörter stimmen nicht überein.'; +$wb['password_match_txt'] = 'Die Passwörter stimmen überein.'; ?> diff --git a/interface/web/sites/lib/lang/de_web_folder_user.lng b/interface/web/sites/lib/lang/de_web_folder_user.lng index e53e007331..1bea0dc86e 100644 --- a/interface/web/sites/lib/lang/de_web_folder_user.lng +++ b/interface/web/sites/lib/lang/de_web_folder_user.lng @@ -5,4 +5,7 @@ $wb['password_txt'] = 'Passwort'; $wb['active_txt'] = 'Aktiv'; $wb['folder_error_empty'] = 'Kein Web-Ordner ausgewählt.'; $wb['generate_password_txt'] = 'Passwort erzeugen'; +$wb['repeat_password_txt'] = 'Passwort wiederholen'; +$wb['password_mismatch_txt'] = 'Die Passwörter stimmen nicht überein.'; +$wb['password_match_txt'] = 'Die Passwörter stimmen überein.'; ?> diff --git a/interface/web/sites/lib/lang/de_webdav_user.lng b/interface/web/sites/lib/lang/de_webdav_user.lng index e698775566..6eef2e7ba0 100644 --- a/interface/web/sites/lib/lang/de_webdav_user.lng +++ b/interface/web/sites/lib/lang/de_webdav_user.lng @@ -15,4 +15,7 @@ $wb['parent_domain_id_error_empty'] = 'Keine Website ausgewählt.'; $wb['dir_dot_error'] = 'Kein .. im Pfad erlaubt.'; $wb['dir_slashdot_error'] = 'Kein ./ im Pfad erlaubt.'; $wb['generate_password_txt'] = 'Passwort erzeugen'; +$wb['repeat_password_txt'] = 'Passwort wiederholen'; +$wb['password_mismatch_txt'] = 'Die Passwörter stimmen nicht überein.'; +$wb['password_match_txt'] = 'Die Passwörter stimmen überein.'; ?> diff --git a/interface/web/sites/lib/lang/en_database.lng b/interface/web/sites/lib/lang/en_database.lng index 8c12d11018..3d21df9d0e 100644 --- a/interface/web/sites/lib/lang/en_database.lng +++ b/interface/web/sites/lib/lang/en_database.lng @@ -28,4 +28,7 @@ $wb["select_site_txt"] = '- Select Site -'; $wb["btn_save_txt"] = 'Save'; $wb["btn_cancel_txt"] = 'Cancel'; $wb['generate_password_txt'] = 'Generate Password'; +$wb['repeat_password_txt'] = 'Repeat Password'; +$wb['password_mismatch_txt'] = 'The passwords do not match.'; +$wb['password_match_txt'] = 'The passwords do match.'; ?> diff --git a/interface/web/sites/lib/lang/en_ftp_user.lng b/interface/web/sites/lib/lang/en_ftp_user.lng index 580f8294d4..a515cf843c 100644 --- a/interface/web/sites/lib/lang/en_ftp_user.lng +++ b/interface/web/sites/lib/lang/en_ftp_user.lng @@ -29,4 +29,7 @@ $wb["quota_size_error_regex"] = 'Quota: enter a -1 for unlimited or a number > 0 $wb['dir_dot_error'] = 'No .. in path allowed.'; $wb['dir_slashdot_error'] = 'No ./ in path allowed.'; $wb['generate_password_txt'] = 'Generate Password'; +$wb['repeat_password_txt'] = 'Repeat Password'; +$wb['password_mismatch_txt'] = 'The passwords do not match.'; +$wb['password_match_txt'] = 'The passwords do match.'; ?> diff --git a/interface/web/sites/lib/lang/en_shell_user.lng b/interface/web/sites/lib/lang/en_shell_user.lng index 1f7d61e406..296019a7da 100644 --- a/interface/web/sites/lib/lang/en_shell_user.lng +++ b/interface/web/sites/lib/lang/en_shell_user.lng @@ -24,4 +24,7 @@ $wb["ssh_rsa_txt"] = 'SSH-RSA Public Key (for key-based logins)'; $wb['dir_dot_error'] = 'No .. in path allowed.'; $wb['dir_slashdot_error'] = 'No ./ in path allowed.'; $wb['generate_password_txt'] = 'Generate Password'; +$wb['repeat_password_txt'] = 'Repeat Password'; +$wb['password_mismatch_txt'] = 'The passwords do not match.'; +$wb['password_match_txt'] = 'The passwords do match.'; ?> diff --git a/interface/web/sites/lib/lang/en_web_domain.lng b/interface/web/sites/lib/lang/en_web_domain.lng index a6169ce909..49a38d1856 100644 --- a/interface/web/sites/lib/lang/en_web_domain.lng +++ b/interface/web/sites/lib/lang/en_web_domain.lng @@ -99,4 +99,7 @@ $wb["pm_process_idle_timeout_error_regex"] = 'PHP-FPM pm.process_idle_timeout mu $wb["pm_max_requests_error_regex"] = 'PHP-FPM pm.max_requests must be an integer value >= 0.'; $wb["pm_ondemand_hint_txt"] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!'; $wb['generate_password_txt'] = 'Generate Password'; +$wb['repeat_password_txt'] = 'Repeat Password'; +$wb['password_mismatch_txt'] = 'The passwords do not match.'; +$wb['password_match_txt'] = 'The passwords do match.'; ?> \ No newline at end of file diff --git a/interface/web/sites/lib/lang/en_web_folder_user.lng b/interface/web/sites/lib/lang/en_web_folder_user.lng index 684c0e92f0..c2a67105e1 100644 --- a/interface/web/sites/lib/lang/en_web_folder_user.lng +++ b/interface/web/sites/lib/lang/en_web_folder_user.lng @@ -5,4 +5,7 @@ $wb["password_txt"] = 'Password'; $wb["active_txt"] = 'Active'; $wb["folder_error_empty"] = 'No web folder selecetd.'; $wb['generate_password_txt'] = 'Generate Password'; +$wb['repeat_password_txt'] = 'Repeat Password'; +$wb['password_mismatch_txt'] = 'The passwords do not match.'; +$wb['password_match_txt'] = 'The passwords do match.'; ?> \ No newline at end of file diff --git a/interface/web/sites/lib/lang/en_webdav_user.lng b/interface/web/sites/lib/lang/en_webdav_user.lng index af84617f8b..099226c1cf 100644 --- a/interface/web/sites/lib/lang/en_webdav_user.lng +++ b/interface/web/sites/lib/lang/en_webdav_user.lng @@ -16,4 +16,7 @@ $wb['password_strength_txt'] = 'Password strength'; $wb['dir_dot_error'] = 'No .. in path allowed.'; $wb['dir_slashdot_error'] = 'No ./ in path allowed.'; $wb['generate_password_txt'] = 'Generate Password'; +$wb['repeat_password_txt'] = 'Repeat Password'; +$wb['password_mismatch_txt'] = 'The passwords do not match.'; +$wb['password_match_txt'] = 'The passwords do match.'; ?> diff --git a/interface/web/sites/templates/database_edit.htm b/interface/web/sites/templates/database_edit.htm index 9b0cd22eba..558e31110f 100644 --- a/interface/web/sites/templates/database_edit.htm +++ b/interface/web/sites/templates/database_edit.htm @@ -50,13 +50,19 @@ </div> <div class="ctrlHolder"> <label for="database_password">{tmpl_var name='database_password_txt'}</label> - <input name="database_password" id="database_password" value="{tmpl_var name='database_password'}" size="30" maxlength="255" type="password" class="textInput formLengthHalf" onkeyup="pass_check(this.value)" /> <a href="javascript:void(0);" onClick="generatePassword('database_password');">{tmpl_var name='generate_password_txt'}</a> + <input name="database_password" id="database_password" value="{tmpl_var name='database_password'}" size="30" maxlength="255" type="password" class="textInput formLengthHalf" onkeyup="pass_check(this.value);checkPassMatch('database_password','repeat_password');" /> <a href="javascript:void(0);" onClick="generatePassword('database_password');">{tmpl_var name='generate_password_txt'}</a> </div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='password_strength_txt'}</p> <div id="passBar"></div> <p class="formHint"><span id="passText"> </span></p> </div> + <div class="ctrlHolder"> + <label for="repeat_password">{tmpl_var name='repeat_password_txt'}</label> + <input name="repeat_password" id="repeat_password" value="" size="15" maxlength="100" type="password" class="textInput" style="width:100px;" onkeyup="checkPassMatch('database_password','repeat_password');" /> + </div> + <div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div> + <div id="confirmpasswordOK" style="display:none;" class="confirmpasswordok">{tmpl_var name='password_match_txt'}</div> <div class="ctrlHolder"> <tmpl_if name="edit_disabled"> <label for="database_charset_disabled">{tmpl_var name='database_charset_txt'}</label> diff --git a/interface/web/sites/templates/ftp_user_edit.htm b/interface/web/sites/templates/ftp_user_edit.htm index e07526fe2a..9f9c6b1d87 100644 --- a/interface/web/sites/templates/ftp_user_edit.htm +++ b/interface/web/sites/templates/ftp_user_edit.htm @@ -18,13 +18,19 @@ </div> <div class="ctrlHolder"> <label for="password">{tmpl_var name='password_txt'}</label> - <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value)" /> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> + <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" /> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> </div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='password_strength_txt'}</p> <div id="passBar"></div> <p class="formHint"><span id="passText"> </span></p> </div> + <div class="ctrlHolder"> + <label for="repeat_password">{tmpl_var name='repeat_password_txt'}</label> + <input name="repeat_password" id="repeat_password" value="" size="15" maxlength="100" type="password" class="textInput" style="width:100px;" onkeyup="checkPassMatch('password','repeat_password');" /> + </div> + <div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div> + <div id="confirmpasswordOK" style="display:none;" class="confirmpasswordok">{tmpl_var name='password_match_txt'}</div> <div class="ctrlHolder"> <label for="quota_size">{tmpl_var name='quota_size_txt'}</label> <input name="quota_size" id="quota_size" value="{tmpl_var name='quota_size'}" size="7" maxlength="7" type="text" class="textInput formLengthLimit" /><p class="formInputUnity"> MB</p> diff --git a/interface/web/sites/templates/shell_user_edit.htm b/interface/web/sites/templates/shell_user_edit.htm index 0f2bc11f3c..c138a8620e 100644 --- a/interface/web/sites/templates/shell_user_edit.htm +++ b/interface/web/sites/templates/shell_user_edit.htm @@ -26,13 +26,19 @@ </div> <div class="ctrlHolder"> <label for="password">{tmpl_var name='password_txt'}</label> - <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value)"/> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> + <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');"/> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> </div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='password_strength_txt'}</p> <div id="passBar"></div> <p class="formHint"><span id="passText"> </span></p> </div> + <div class="ctrlHolder"> + <label for="repeat_password">{tmpl_var name='repeat_password_txt'}</label> + <input name="repeat_password" id="repeat_password" value="" size="15" maxlength="100" type="password" class="textInput" style="width:100px;" onkeyup="checkPassMatch('password','repeat_password');" /> + </div> + <div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div> + <div id="confirmpasswordOK" style="display:none;" class="confirmpasswordok">{tmpl_var name='password_match_txt'}</div> <div class="ctrlHolder"> <label for="chroot">{tmpl_var name='chroot_txt'}</label> <select name="chroot" id="chroot" class="selectInput formLengthHalf"> diff --git a/interface/web/sites/templates/web_domain_stats.htm b/interface/web/sites/templates/web_domain_stats.htm index 200cda24bf..7252a775f0 100644 --- a/interface/web/sites/templates/web_domain_stats.htm +++ b/interface/web/sites/templates/web_domain_stats.htm @@ -10,9 +10,15 @@ </div> <div class="ctrlHolder"> <label for="stats_password">{tmpl_var name='stats_password_txt'}</label> - <input name="stats_password" id="stats_password" value="{tmpl_var name='stats_password'}" size="30" maxlength="255" type="password" class="textInput" /> <a href="javascript:void(0);" onClick="generatePassword('stats_password');">{tmpl_var name='generate_password_txt'}</a> + <input name="stats_password" id="stats_password" value="{tmpl_var name='stats_password'}" size="15" maxlength="100" type="password" class="textInput" style="width:100px;" onkeyup="checkPassMatch('stats_password','repeat_password');" /> <a href="javascript:void(0);" onClick="generatePassword('stats_password');">{tmpl_var name='generate_password_txt'}</a> </div> <div class="ctrlHolder"> + <label for="repeat_password">{tmpl_var name='repeat_password_txt'}</label> + <input name="repeat_password" id="repeat_password" value="" size="15" maxlength="100" type="password" class="textInput" style="width:100px;" onkeyup="checkPassMatch('stats_password','repeat_password');" /> + </div> + <div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div> + <div id="confirmpasswordOK" style="display:none;" class="confirmpasswordok">{tmpl_var name='password_match_txt'}</div> + <div class="ctrlHolder"> <label for="stats_type">{tmpl_var name='stats_type_txt'}</label> <select name="stats_type" id="stats_type" class="selectInput" > {tmpl_var name='stats_type'} diff --git a/interface/web/sites/templates/web_folder_user_edit.htm b/interface/web/sites/templates/web_folder_user_edit.htm index f466e5252b..8908493498 100644 --- a/interface/web/sites/templates/web_folder_user_edit.htm +++ b/interface/web/sites/templates/web_folder_user_edit.htm @@ -17,8 +17,14 @@ </div> <div class="ctrlHolder"> <label for="password">{tmpl_var name='password_txt'}</label> - <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" /> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> + <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="checkPassMatch('password','repeat_password');" /> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> </div> + <div class="ctrlHolder"> + <label for="repeat_password">{tmpl_var name='repeat_password_txt'}</label> + <input name="repeat_password" id="repeat_password" value="" size="15" maxlength="100" type="password" class="textInput" style="width:100px;" onkeyup="checkPassMatch('password','repeat_password');" /> + </div> + <div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div> + <div id="confirmpasswordOK" style="display:none;" class="confirmpasswordok">{tmpl_var name='password_match_txt'}</div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='active_txt'}</p> <div class="multiField"> diff --git a/interface/web/sites/templates/webdav_user_edit.htm b/interface/web/sites/templates/webdav_user_edit.htm index 5bd7f82a8b..0668d2ee67 100644 --- a/interface/web/sites/templates/webdav_user_edit.htm +++ b/interface/web/sites/templates/webdav_user_edit.htm @@ -26,7 +26,7 @@ </div> <div class="ctrlHolder"> <label for="password">{tmpl_var name='password_txt'}</label> - <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value)"/> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> + <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');"/> <a href="javascript:void(0);" onClick="generatePassword('password');">{tmpl_var name='generate_password_txt'}</a> </div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='password_strength_txt'}</p> @@ -34,6 +34,12 @@ <p class="formHint"><span id="passText"> </span></p> </div> <div class="ctrlHolder"> + <label for="repeat_password">{tmpl_var name='repeat_password_txt'}</label> + <input name="repeat_password" id="repeat_password" value="" size="15" maxlength="100" type="password" class="textInput" style="width:100px;" onkeyup="checkPassMatch('password','repeat_password');" /> + </div> + <div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div> + <div id="confirmpasswordOK" style="display:none;" class="confirmpasswordok">{tmpl_var name='password_match_txt'}</div> + <div class="ctrlHolder"> <p class="label">{tmpl_var name='active_txt'}</p> <div class="multiField"> {tmpl_var name='active'} diff --git a/interface/web/themes/default/css/screen/uni-form.css b/interface/web/themes/default/css/screen/uni-form.css index e9e592fe6f..3411d56e4a 100644 --- a/interface/web/themes/default/css/screen/uni-form.css +++ b/interface/web/themes/default/css/screen/uni-form.css @@ -100,7 +100,7 @@ .uniForm .col.last{ width: 39%; /* <- Required property */ float: right; clear: none; margin-right: 0; } /* Messages */ -.uniForm #errorMsg{ background: #ffdfdf; border: 1px solid #df7d7d; border-width: 1px 0; margin: 1.5em 0 1.5em 0; padding: 7px; } +.uniForm #errorMsg, .confirmpassworderror{ background: #ffdfdf; border: 1px solid #df7d7d; border-width: 1px 0; margin: 1.5em 0 1.5em 0; padding: 7px; } .uniForm .error{ background: #ffdfdf; border: 1px solid #df7d7d; border-width: 1px 0; } .uniForm #errorMsg dt, .uniForm #errorMsg h3{ margin: 0 0 .5em 0; font-size: 100%; line-height: 100%; font-weight: bold; } @@ -109,7 +109,7 @@ .uniForm #errorMsg ol li{ margin: 0; padding: 2px; list-style-position: inside; border-bottom: 1px dotted #df7d7d; position: relative; } .uniForm .errorField{ color: #af4c4c; margin: 0 0 6px 0; padding: 4px; background: #ffbfbf; } -.uniForm #OKMsg{ background: #C8FFBF; border: 1px solid #A2EF95; border-width: 1px 0; margin: 1.5em 0 1.5em 0; padding: 7px; } +.uniForm #OKMsg, .confirmpasswordok{ background: #C8FFBF; border: 1px solid #A2EF95; border-width: 1px 0; margin: 1.5em 0 1.5em 0; padding: 7px; } .uniForm #OKMsg p{ margin: 0; } /* diff --git a/interface/web/tools/lib/lang/de_usersettings.lng b/interface/web/tools/lib/lang/de_usersettings.lng index 1b09f36758..5783680d82 100644 --- a/interface/web/tools/lib/lang/de_usersettings.lng +++ b/interface/web/tools/lib/lang/de_usersettings.lng @@ -6,4 +6,7 @@ $wb['password_strength_txt'] = 'Passwortkomplexität'; $wb['Form to edit the user password and language.'] = 'Formular, um das Benutzerpasswort und die Sprache zu bearbeiten.'; $wb['Settings'] = 'Einstellungen'; $wb['generate_password_txt'] = 'Passwort erzeugen'; +$wb['repeat_password_txt'] = 'Passwort wiederholen'; +$wb['password_mismatch_txt'] = 'Die Passwörter stimmen nicht überein.'; +$wb['password_match_txt'] = 'Die Passwörter stimmen überein.'; ?> diff --git a/interface/web/tools/lib/lang/en_usersettings.lng b/interface/web/tools/lib/lang/en_usersettings.lng index f864944fdf..efbe6c38df 100644 --- a/interface/web/tools/lib/lang/en_usersettings.lng +++ b/interface/web/tools/lib/lang/en_usersettings.lng @@ -6,4 +6,7 @@ $wb["password_mismatch"] = 'The password in the second password field does not m $wb["Form to edit the user password and language."] = 'Form to edit the user password and language.'; $wb["Settings"] = 'Settings'; $wb['generate_password_txt'] = 'Generate Password'; +$wb['repeat_password_txt'] = 'Repeat Password'; +$wb['password_mismatch_txt'] = 'The passwords do not match.'; +$wb['password_match_txt'] = 'The passwords do match.'; ?> diff --git a/interface/web/tools/templates/user_settings.htm b/interface/web/tools/templates/user_settings.htm index e7c0144793..773a0c3687 100644 --- a/interface/web/tools/templates/user_settings.htm +++ b/interface/web/tools/templates/user_settings.htm @@ -7,17 +7,19 @@ <fieldset class="inlineLabels"> <div class="ctrlHolder"> <label for="passwort">{tmpl_var name='passwort_txt'}</label> - <input name="passwort" id="passwort" value="{tmpl_var name='passwort'}" size="15" maxlength="100" type="password" class="textInput" onkeyup="pass_check(this.value)"/> <a href="javascript:void(0);" onClick="generatePassword('passwort');">{tmpl_var name='generate_password_txt'}</a> + <input name="passwort" id="passwort" value="{tmpl_var name='passwort'}" size="15" maxlength="100" type="password" class="textInput" onkeyup="pass_check(this.value);checkPassMatch('passwort','repeat_password');"/> <a href="javascript:void(0);" onClick="generatePassword('passwort');">{tmpl_var name='generate_password_txt'}</a> </div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='password_strength_txt'}</p> <div id="passBar"></div> <p class="formHint"><span id="passText"> </span></p> </div> - <div class="ctrlHolder"> - <label for="passwort2">{tmpl_var name='passwort_txt'}</label> - <input name="passwort2" id="passwort2" value="" size="15" maxlength="100" type="password" class="textInput" style="width:100px;"/> - </div> + <div class="ctrlHolder"> + <label for="repeat_password">{tmpl_var name='repeat_password_txt'}</label> + <input name="repeat_password" id="repeat_password" value="" size="15" maxlength="100" type="password" class="textInput" style="width:100px;" onkeyup="checkPassMatch('passwort','repeat_password');" /> + </div> + <div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div> + <div id="confirmpasswordOK" style="display:none;" class="confirmpasswordok">{tmpl_var name='password_match_txt'}</div> <div class="ctrlHolder"> <label for="language">{tmpl_var name='language_txt'}</label> <select name="language" id="language" class="selectInput withicons"> diff --git a/interface/web/tools/user_settings.php b/interface/web/tools/user_settings.php index b67a1abb5c..70bbc69ff6 100644 --- a/interface/web/tools/user_settings.php +++ b/interface/web/tools/user_settings.php @@ -83,7 +83,7 @@ class page_action extends tform_actions { if($conf['demo_mode'] == true && $this->id <= 3) $app->tform->errorMessage .= 'This function is disabled in demo mode.'; - if($_POST['passwort'] != $_POST['passwort2']) { + if($_POST['passwort'] != $_POST['repeat_password']) { $app->tform->errorMessage = $app->tform->lng('password_mismatch'); } $_SESSION['s']['user']['language'] = $_POST['language']; diff --git a/interface/web/vm/lib/lang/de_openvz_vm.lng b/interface/web/vm/lib/lang/de_openvz_vm.lng index ee70a9834b..5880ce4cf3 100644 --- a/interface/web/vm/lib/lang/de_openvz_vm.lng +++ b/interface/web/vm/lib/lang/de_openvz_vm.lng @@ -37,5 +37,4 @@ $wb['io_priority_error_empty'] = 'I/O Priorität ist leer.'; $wb['template_nameserver_error_empty'] = 'Nameserver ist leer.'; $wb['Virtual server'] = 'Virtueller Server'; $wb['Advanced'] = 'Erweitert'; -$wb['generate_password_txt'] = 'Passwort erzeugen'; ?> diff --git a/interface/web/vm/lib/lang/en_openvz_vm.lng b/interface/web/vm/lib/lang/en_openvz_vm.lng index 1594fb4d4f..ddd9903ced 100644 --- a/interface/web/vm/lib/lang/en_openvz_vm.lng +++ b/interface/web/vm/lib/lang/en_openvz_vm.lng @@ -37,5 +37,4 @@ $wb["io_priority_error_empty"] = 'I/O priority is empty.'; $wb["template_nameserver_error_empty"] = 'Nameserver(s) is empty.'; $wb["Virtual server"] = 'Virtual server'; $wb["Advanced"] = 'Advanced'; -$wb['generate_password_txt'] = 'Generate Password'; ?> \ No newline at end of file diff --git a/interface/web/vm/templates/openvz_vm_edit.htm b/interface/web/vm/templates/openvz_vm_edit.htm index 671fd7000a..c6615709c5 100644 --- a/interface/web/vm/templates/openvz_vm_edit.htm +++ b/interface/web/vm/templates/openvz_vm_edit.htm @@ -69,7 +69,7 @@ </div> <div class="ctrlHolder"> <label for="vm_password">{tmpl_var name='vm_password_txt'}</label> - <input name="vm_password" id="vm_password" value="{tmpl_var name='vm_password'}" size="30" maxlength="255" type="text" class="textInput" /> <a href="javascript:void(0);" onClick="generatePassword('vm_password');">{tmpl_var name='generate_password_txt'}</a> + <input name="vm_password" id="vm_password" value="{tmpl_var name='vm_password'}" size="30" maxlength="255" type="text" class="textInput" /> </div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='start_boot_txt'}</p> -- GitLab