Synchronize: for the connection panel there was an inactive validation function; modified it, hopefully in a clearer way

This commit is contained in:
Marc Delisle
2011-03-12 10:56:47 -05:00
parent 7e482cac73
commit f74b5775a4

View File

@@ -254,50 +254,51 @@ function ApplySelectedChanges(token)
location.href += append_string; location.href += append_string;
} }
/**
* Displays an error message if any text field
* is left empty other than the port field.
*
* @param string the form name
* @param object the form
*
* @return boolean whether the form field is empty or not
*/
function validateConnection(form_name, form_obj)
{
var check = true;
var src_hostfilled = true;
var trg_hostfilled = true;
for (var i=1; i<form_name.elements.length; i++) /**
{ * Validates a partial form (source part or target part)
// All the text fields are checked excluding the port field because the default port can be used. *
if ((form_name.elements[i].type == 'text') && (form_name.elements[i].name != 'src_port') && (form_name.elements[i].name != 'trg_port')) { * @param which 'src' or 'trg'
check = emptyFormElements(form_obj, form_name.elements[i].name); * @return boolean whether the partial form is valid
if (check==false) { *
element = form_name.elements[i].name; */
if (form_name.elements[i].name == 'src_host') { function validateSourceOrTarget(which)
src_hostfilled = false; {
continue; var partial_form_is_ok = true;
}
if (form_name.elements[i].name == 'trg_host') { if ($("#" + which + "_type").val() != 'cur') {
trg_hostfilled = false; // did not choose "current connection"
continue; if ($("input[name='" + which + "_username']").val() == ''
} || $("input[name='" + which + "_pass']").val() == ''
if ((form_name.elements[i].name == 'src_socket' && src_hostfilled==false) || (form_name.elements[i].name == 'trg_socket' && trg_hostfilled==false)) || $("input[name='" + which + "_db']").val() == ''
break; // must have at least a host or a socket
else || ($("input[name='" + which + "_host']").val() == ''
continue; && $("input[name='" + which + "_socket']").val() == '')
} // port can be empty
) {
partial_form_is_ok = false;
} }
} }
if (!check) { return partial_form_is_ok;
form_obj.reset(); }
element.select(); /**
alert(PMA_messages['strFormEmpty']); * Displays an error message if any text field
element.focus(); * is left empty other than the port field, unless
* we are dealing with the "current connection" choice
*
* @return boolean whether the form is valid
*/
function validateConnectionParams()
{
var form_is_ok = true;
if (! validateSourceOrTarget('src') || ! validateSourceOrTarget('trg')) {
form_is_ok = false;
} }
return check; if (! form_is_ok) {
alert(PMA_messages['strFormEmpty']);
}
return form_is_ok;
} }
$(document).ready(function() { $(document).ready(function() {
@@ -369,4 +370,9 @@ $(document).ready(function() {
} }
); );
$('#buttonGo').click(function(event) {
if (! validateConnectionParams()) {
event.preventDefault();
}
});
}); });