diff --git a/libraries/server_privileges.lib.php b/libraries/server_privileges.lib.php
index e3cac9f2e8..c4aaf355d8 100644
--- a/libraries/server_privileges.lib.php
+++ b/libraries/server_privileges.lib.php
@@ -1273,8 +1273,10 @@ function PMA_getHtmlForLoginInformationFields($mode = 'new')
. 'if (this.value == \'any\') {'
. ' username.value = \'\'; '
. ' user_exists_warning.style.display = \'none\'; '
+ . ' username.required = false; '
. '} else if (this.value == \'userdefined\') {'
. ' username.focus(); username.select(); '
+ . ' username.required = true; '
. '}">' . "\n";
$html_output .= '' . "\n";
+ . ' onchange="pred_username.value = \'userdefined\'; this.required = true;" '
+ . ((! isset($GLOBALS['pred_username'])
+ || $GLOBALS['pred_username'] == 'userdefined'
+ )
+ ? 'required'
+ : '') . ' />' . "\n";
$html_output .= '
'
@@ -1353,8 +1360,10 @@ function PMA_getHtmlForLoginInformationFields($mode = 'new')
)
. 'else if (this.value == \'hosttable\') { '
. ' hostname.value = \'\'; '
+ . ' hostname.required = false; '
. '} else if (this.value == \'userdefined\') {'
. ' hostname.focus(); hostname.select(); '
+ . ' hostname.required = true; '
. '}">' . "\n";
unset($_current_user);
@@ -1424,7 +1433,13 @@ function PMA_getHtmlForLoginInformationFields($mode = 'new')
// use default value of '%' to match with the default 'Any host'
. htmlspecialchars(isset($GLOBALS['hostname']) ? $GLOBALS['hostname'] : '%')
. '" title="' . __('Host')
- . '" onchange="pred_hostname.value = \'userdefined\';" />' . "\n"
+ . '" onchange="pred_hostname.value = \'userdefined\'; this.required = true;" '
+ . ((isset($GLOBALS['pred_hostname'])
+ && $GLOBALS['pred_hostname'] == 'userdefined'
+ )
+ ? 'required'
+ : '')
+ . ' />' . "\n"
. PMA_Util::showHint(
__(
'When Host table is used, this field is ignored '
@@ -1444,8 +1459,12 @@ function PMA_getHtmlForLoginInformationFields($mode = 'new')
$html_output .= ' onchange="'
. 'if (this.value == \'none\') { '
. ' pma_pw.value = \'\'; pma_pw2.value = \'\'; '
+ . ' pma_pw.required = false; pma_pw2.required = false; '
. '} else if (this.value == \'userdefined\') { '
. ' pma_pw.focus(); pma_pw.select(); '
+ . ' pma_pw.required = true; pma_pw2.required = true; '
+ . '} else { '
+ . ' pma_pw.required = false; pma_pw2.required = false; '
. '}">' . "\n"
. ($mode == 'change' ? '
' . "\n";
$html_output .= ' ' . "\n"
. '' . "\n"
+ . 'onchange="pred_password.value = \'userdefined\'; this.required = true; pma_pw.required = true;" '
+ . (isset($GLOBALS['username']) ? '' : 'required')
+ . '/>' . "\n"
. '
' . "\n"
// Generate password added here via jQuery
. '' . "\n";