// Written by Berk McGowan - BigCat Web Design & Photography
// http://www.bigcat.net.au

function SavePageAndNavigate(poForm)
{
	poForm.submit();	
}

function checkMandatory(poElement)
{
	if(poElement.length)
	{
		var llOK = true;
		for(var i = 0; i < poElement.length; i++)
		{
			if(!checkMandatory(poElement[i]))
			{
				llOK = false;
			}
		}
		return llOK;
	}

	// don't complain if in a template row
	var loTR = get_parent(poElement,"TR");
	while(loTR)
	{
		if(loTR.className.match(/\browtemplate\b/i))
		{
			return true;
		}
		loTR = get_parent(loTR.parentNode,"TR");
	}

	if(poElement.value.length==0)
	{
		if(! poElement.className.match(/\bmissing\b/))
		{
			poElement.className += " missing";
		}
		return false;
	}
	else
	{
		poElement.className = poElement.className.replace(/\bmissing\b/,"");
		return true;
	}
}

function get_parent(poItem, pcTagName)
{
	while(poItem != null && poItem.tagName != pcTagName)
	{
		poItem = poItem.parentNode;
	}
	return poItem;
}

function get_child(poItem, pcTagName, pcName)
{
	if(poItem.tagName == pcTagName && poItem.name == pcName)	
	{
		return poItem;
	}
	else
	{
		for(var i=0; i < poItem.childNodes.length; i++)
		{
			var loItem = get_child(poItem.childNodes[i], pcTagName, pcName);

			if(loItem)
			{
				return loItem;
			}
		}
	}
	return null;
}

function checkCharLimit(field, countfield, maxlimit)
{
	if (field.value.length > maxlimit)
	{
		field.value = field.value.substring(0, maxlimit);
		return false;
	}
	else
	{
		countfield.value = maxlimit - field.value.length;
	}
}

function setCheckBoxHidden(poUpdateField,poCheckBox)
{
	if(poCheckBox.checked)
	{
		poUpdateField.value = "1";
	}
	else
	{
		poUpdateField.value = "0";
	}
}
