function validate(f)
{
	if(f.elements['required[]'] == undefined)
	{
		return true;
	}

	var required = f.elements['required[]'];
    var div = document.getElementById('error');
	var error = false;
	var field_name;
	var field;

	for(var i = 0; i < required.length; i++)
	{
		field_name = required[i].value;
		field = f.elements[field_name];
    	field.style.backgroundColor = '#f2f2f2';

    	if(is_blank(field.value))
    	{
    		field.style.backgroundColor = '#e8df7a'; //#e8d719';
    		error = true;
    	}
    }

	if(error)
	{
		window.scroll(0,0);
    	div.innerHTML = '<strong>Error</strong><br/>One or more required fields are empty. Please complete the missing fields and re-submit the form.';
		div.style.visibility = 'visible';
		div.style.display = 'block';
 		return false;
	}

	return true;
}

function is_blank(s)
{
    for(var i = 0; i < s.length; i++)
    {
        var c = s.charAt(i);
        if((c != ' ') && (c != '\n') && (c != '\t'))
        {
        	return false;
        }
    }
    return true;
}

function highlight_field(e, id)
{
	var elm = document.getElementById(id);
	if(e.checked)
	{
		elm.style.backgroundColor = '#e8df7a';
	}
	else
	{
		elm.style.backgroundColor = '#f2f2f2';
	}
}
