function collectionToArray(c)
{
	var a = [];
	for (var i = 0; i < c.length; i = i + 1)
	{
		a[i] = c[i];
	}
	return a;
}	

function checkForm(form)
{
	var inputs = collectionToArray(form.getElementsByTagName('input'));
	var textareas = collectionToArray(form.getElementsByTagName('textarea'));
	var checkFields = inputs.concat(textareas);

	var labels = form.getElementsByTagName('label');
	var submit = true;

	for (var i = 0; i < checkFields.length; i = i + 1)
	{
		if (checkFields[i].className === 'required')
		{
			if (checkFields[i].value == '')
			{
				submit = false;
			}

			for (var j = 0; j < labels.length; j = j + 1)
			{
				if (labels[j].htmlFor === checkFields[i].id)
				{
					labels[j].className = (checkFields[i].value == '') ? 'highlight' : '';
				}
			}
		}
	}

	var warning = document.getElementById('allFields');
	if (warning)
	{
		warning.className = (submit === false) ? 'highlight' : '';
	}

	return submit;
}
