function element(id)
{
	return document.getElementById(id);
}

function count()
{
	element('passLength').value = (element('lowerCaseNumber').value*1) + (element('upperCaseNumber').value*1) + (element('specialNumber').value*1);
}

function validateElement(id, min, max)
{
	if((element(id).value*1) < (min*1) || (element(id).value*1) > (max*1))
	{
		element(id+'Error').style.display = 'inline';
		return false;
	}
	else
		return true;
}

function validate()
{
	count();

	/*if(element('lowerCaseNumber').value == '')
		element('lowerCaseNumber').value = '0';
	if(element('upperCaseNumber').value == '')
		element('upperCaseNumber').value = '0';
	if(element('specialNumber').value == '')
		element('specialNumber').value = '0';
	if(element('passNumber').value == '')
		element('passNumber').value = '0';*/
	element('lowerCaseNumber').value = element('lowerCaseNumber').value*1;
	element('upperCaseNumber').value = element('upperCaseNumber').value*1;
	element('specialNumber').value = element('specialNumber').value*1;
	element('passNumber').value = element('passNumber').value*1;

	element('passNumberError').style.display = 'none';
	element('passLengthError').style.display = 'none';
	element('lowerCaseNumberError').style.display = 'none';
	element('upperCaseNumberError').style.display = 'none';
	element('specialNumberError').style.display = 'none';

	var noErrors = true;

	if(validateElement('passNumber', 1, 25) == false || noErrors == false)
		noErrors = false;
	if(validateElement('passLength', 1, 256) == false || noErrors == false)
		noErrors = false;
	if(validateElement('lowerCaseNumber', 0, 256) == false || noErrors == false)
		noErrors = false;
	if(validateElement('upperCaseNumber', 0, 256) == false || noErrors == false)
		noErrors = false;
	if(validateElement('specialNumber', 0, 256) == false || noErrors == false)
		noErrors = false;

	if(noErrors)
		return true;
	else
		return false;
}

