/*
 * return true if no errors exists
 */

function checkFieldValues(fields) {
	hideErrorMessages();
	$('.input_error').removeClass('input_error');

    var failedFields = [ ];

	for (var fieldName in fields) {
        //alert("check field name: " + checkFieldName);

        var fieldCheckObject = fields[fieldName];

        if (!fieldCheckObject['need']) {
            continue;
        }

		var element = document.getElementById(fieldName);
		if (!element) {
			alert("element with id: " + fieldName + " not found");
		}

		if (element.value.length == 0) {
            var fieldErrorMessage = fieldCheckObject['errortext'];
			showErrorMessage("errorMessage_" + fieldName, fieldErrorMessage);
			$("#" + fieldName).addClass('input_error');
			failedFields.push(fieldName);
		}
	}

    return failedFields;
}

function showErrorMessage(elementId, errorMessage) {
    $('#' + elementId).html(errorMessage);
    $('#' + elementId).css( { 'visibility': 'visible', 'display': 'block' } );
}

function hideErrorMessages() {
    $('.errorMessage').css( { 'visibility': 'hidden', 'display': 'none' } );
}

