From 2a189307eb0a6693a8d64b62e3845ca87c58d1eb Mon Sep 17 00:00:00 2001
From: ftimme <ft@falkotimme.com>
Date: Fri, 18 May 2012 08:34:18 -0400
Subject: [PATCH] - Added "Repeat Password" field to all forms where a password has to be set.
---
interface/web/vm/templates/openvz_vm_edit.htm | 2
interface/web/admin/lib/lang/en_remote_user.lng | 3
interface/web/sites/templates/database_edit.htm | 8 +
interface/web/admin/lib/lang/de_users.lng | 3
interface/web/mailuser/lib/lang/en_mail_user_password.lng | 4 +
interface/web/sites/lib/lang/de_webdav_user.lng | 3
interface/web/client/lib/lang/en_reseller.lng | 3
interface/web/client/templates/client_edit_address.htm | 8 +
interface/web/sites/templates/web_folder_user_edit.htm | 8 +
interface/web/client/lib/lang/en_client.lng | 3
interface/web/sites/lib/lang/de_database.lng | 2
interface/web/sites/lib/lang/en_web_folder_user.lng | 3
interface/web/sites/templates/web_domain_stats.htm | 8 +
interface/web/themes/default/css/screen/uni-form.css | 4
interface/web/mail/lib/lang/en_mail_mailinglist.lng | 3
interface/web/admin/lib/lang/en_users.lng | 3
interface/web/admin/templates/remote_user_edit.htm | 8 +
interface/web/tools/lib/lang/de_usersettings.lng | 3
interface/web/sites/lib/lang/en_shell_user.lng | 3
interface/web/admin/templates/users_user_edit.htm | 8 +
interface/web/sites/lib/lang/de_ftp_user.lng | 3
interface/web/sites/lib/lang/en_ftp_user.lng | 3
interface/web/js/scrigo.js.php | 17 ++++
interface/web/vm/lib/lang/de_openvz_vm.lng | 1
interface/web/mailuser/templates/mail_user_password_edit.htm | 8 +
interface/web/sites/lib/lang/en_database.lng | 3
interface/web/sites/lib/lang/de_shell_user.lng | 3
interface/web/tools/templates/user_settings.htm | 12 +-
interface/web/sites/lib/lang/de_web_domain.lng | 3
interface/web/admin/lib/lang/de_remote_user.lng | 3
interface/web/sites/lib/lang/en_web_domain.lng | 3
interface/web/client/lib/lang/de_reseller.lng | 3
interface/web/client/lib/lang/de_client.lng | 3
interface/web/sites/templates/ftp_user_edit.htm | 8 +
interface/web/sites/templates/shell_user_edit.htm | 8 +
interface/web/mail/lib/lang/de_mail_mailinglist.lng | 3
interface/web/vm/lib/lang/en_openvz_vm.lng | 1
interface/web/sites/lib/lang/de_web_folder_user.lng | 3
interface/web/mail/lib/lang/de_mail_user.lng | 7 +
interface/web/mail/lib/lang/en_mail_user.lng | 3
interface/web/mail/templates/mail_mailinglist_edit.htm | 8 +
interface/web/tools/lib/lang/en_usersettings.lng | 3
interface/web/mail/templates/mail_user_mailbox_edit.htm | 8 +
interface/web/sites/lib/lang/en_webdav_user.lng | 3
interface/web/client/templates/reseller_edit_address.htm | 8 +
interface/web/sites/templates/webdav_user_edit.htm | 8 +
interface/web/tools/user_settings.php | 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 3bf7e62..036eda2 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 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 6145d1f..1ead952 100644
--- a/interface/web/admin/lib/lang/de_users.lng
+++ b/interface/web/admin/lib/lang/de_users.lng
@@ -26,4 +26,7 @@
$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 6883c11..c488f65 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 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 573f18a..c6a418e 100644
--- a/interface/web/admin/lib/lang/en_users.lng
+++ b/interface/web/admin/lib/lang/en_users.lng
@@ -26,4 +26,7 @@
$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 945a297..6aa3a31 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 40622ef..fffb766 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 88adbff..d2b5201 100644
--- a/interface/web/client/lib/lang/de_client.lng
+++ b/interface/web/client/lib/lang/de_client.lng
@@ -119,4 +119,7 @@
$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 e938cde..8fe5e42 100644
--- a/interface/web/client/lib/lang/de_reseller.lng
+++ b/interface/web/client/lib/lang/de_reseller.lng
@@ -114,4 +114,7 @@
$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 d8b3c2c..d809fcb 100644
--- a/interface/web/client/lib/lang/en_client.lng
+++ b/interface/web/client/lib/lang/en_client.lng
@@ -122,4 +122,7 @@
$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 ba2e7bb..4337216 100644
--- a/interface/web/client/lib/lang/en_reseller.lng
+++ b/interface/web/client/lib/lang/en_reseller.lng
@@ -116,4 +116,7 @@
$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 5799d86..2c37a97 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 0458aa8..bccb22f 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 cc6a80f..7e01c7d 100644
--- a/interface/web/js/scrigo.js.php
+++ b/interface/web/js/scrigo.js.php
@@ -558,6 +558,23 @@
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 b9dbb7d..460d4f8 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['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 a85637b..38cfc9c 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['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_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 57c6fbb..d42c71b 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["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 b154973..f180dee 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_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 5072240..b7f31ef 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 9a89f1e..0bc7d87 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 77e6841..43c114a 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["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 c8f5ba9..ed1d7ce 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 dce54bb..778346e 100644
--- a/interface/web/sites/lib/lang/de_database.lng
+++ b/interface/web/sites/lib/lang/de_database.lng
@@ -23,4 +23,6 @@
$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 13af049..c977b65 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['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 fb0a330..ccf204b 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['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 4fb8bed..15d7d19 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_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 e53e007..1bea0dc 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['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 e698775..6eef2e7 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['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 8c12d11..3d21df9 100644
--- a/interface/web/sites/lib/lang/en_database.lng
+++ b/interface/web/sites/lib/lang/en_database.lng
@@ -28,4 +28,7 @@
$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 580f829..a515cf8 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['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 1f7d61e..296019a 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['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 a6169ce..49a38d1 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_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 684c0e9..c2a6710 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["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 af84617..099226c 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['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 9b0cd22..558e311 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 e07526f..9f9c6b1 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 0f2bc11..c138a86 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 200cda2..7252a77 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 f466e52..8908493 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 5bd7f82..0668d2e 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 e9e592f..3411d56 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 1b09f36..5783680 100644
--- a/interface/web/tools/lib/lang/de_usersettings.lng
+++ b/interface/web/tools/lib/lang/de_usersettings.lng
@@ -6,4 +6,7 @@
$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 f864944..efbe6c3 100644
--- a/interface/web/tools/lib/lang/en_usersettings.lng
+++ b/interface/web/tools/lib/lang/en_usersettings.lng
@@ -6,4 +6,7 @@
$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 e7c0144..773a0c3 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 b67a1ab..70bbc69 100644
--- a/interface/web/tools/user_settings.php
+++ b/interface/web/tools/user_settings.php
@@ -83,7 +83,7 @@
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 ee70a98..5880ce4 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['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 1594fb4..ddd9903 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["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 671fd70..c661570 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>
--
Gitblit v1.9.1