function BxForms()
{
}

BxForms.prototype.validateForm = function(form)
{
	var valid = true;
	
	if(form == null)
		return valid;
		
	var list = form.childNodes;
	var tmpNode = null;

	for(var i = 0; i < list.length; i++)
	{
		if(isVal(list[i].id))
		{
			tmpNode = document.getElementById(list[i].id);
			
			if(isVal(tmpNode.getAttribute('valtype')))
			{
				if(isVal(tmpNode) && tmpNode.type == 'radio')
					notifElement = tmpNode.parentNode;
				else
					notifElement = tmpNode;

				if(!this.isValid(tmpNode))
				{
					valid = false;
					this.showNotif(notifElement);
					hideScreen();
				}
				else
					this.hideNotif(notifElement);
			}
			else
			{
				if(!this.validateForm(tmpNode))
					valid = false;
			}
			
		}
		else
		{
			if(!this.validateForm(tmpNode))
				valid = false;
		}
	}

	return valid;
}


BxForms.prototype.isValid = function(el)
{
	var type = el.getAttribute('valtype');
	var value = el.value;
	var maxSize = el.getAttribute('valsize');
	var required = el.getAttribute('required');

	//if(el.type == "radio")
	//alert(type+'----'+value+'-------'+maxSize+'-------'+required);

	/*if(isVal(el.getAttribute('type')) && el.getAttribute('type') == 'radio')
	{
		if(isVal(required))
		{
			var i = 0;
			var name = String(el.name).match(/([a-zA-Z]*)$/);
			var rb;
			var oneChecked = false;
			while(document.getElementById(name[0]+i))
			{
				if(document.getElementById(name[0]+i).checked)
					oneChecked = true;
				i++;
			}
			
			if(!oneChecked)
				return false;
		}
	}*/


	if(isVal(required) && !isVal(value))
	{
		return false;
	}

	switch(type)
	{
		case 'text':
			if(isVal(maxSize))
				if(String(value).length > maxSize)
					return false;
			return true;

		case 'int':
			if(isVal(maxSize))
				if(String(value).length > maxSize)
					return false;
			return true;

		default:
			return false;
	}
}


BxForms.prototype.showNotif = function(element)
{
	element.style.backgroundColor = '#955';
	return true;
}

BxForms.prototype.hideNotif = function(element)
{
	element.style.backgroundColor = '#FFF';
	return true;
}


gForms = new BxForms();