/****************************************************************************************************
*	Filename: validateForm.js
*	Purpose: All the  functions that are used for validation are defined in here. 
*	Author : SemoSoftware
	*	Creation Date: 28/8/2007
	*	Last Modified: 4/9/2007
****************************************************************************************************/
var def_validateForm ="1.0";
var validateMethods  = new Array();
var elementTypes  = new Array();
var splElementType = new Array();
var dependentFields = new Array();
var addCheckTypes = new Array();
var performaElementType = new Array();
var errorList = new Array();
var errorOrder = new Array();
var alertMethod  = ""; 
var alertMIME = "text";
var alertWidth = 350;
var alertExtraLines = 3;
var alertLineHeight = 25;
var alertExtraLine  = 20;
var mandatoryEmptyType  = "mandempty";
var inputType = "notsinglebyte";
//var comm_msg039 = "Please enter ";
var accreq_msg006 = " ";
var noStateError = comm_msg039 + accreq_msg006;
var strErrMess = "";
var focusField = null;
var EMPTY_STRING = "";
var blankmark = "---";
function makeError()
{
	return strErrMess;
}

isIE = (document.all) ? true:false;

function fnCheckBlank()
{
	var pakType = document.forms['volweight'].pak;
	<!--if ( pakType.options[pakType.selectedIndex].value == "b" &&--> 
	if ( pakType[0].checked && document.forms['volweight'].height.value == blankmark )
	{
		document.volweight.height.value = "0";
		CrestGlobalAlert(comm_msg006,volweight_msg004+volweight_msg008+comm_msg017+"0");
		errorChk = true;
		return false;
	}
	return true;
}

function fnValidateBlank( element )
{
	if ( fnCheckBlank() )
	{
		errorChk = doweight(this.form, true, true, false);
		setCookies(this.form);
		fnChangeFocus( element )
		return true;
	}
	else
	{
		document.volweight.height.focus();

		if ( typeof( win ) == 'object' && !win.closed )
		{
			win.focus();
		}
	}
}

function fnChangeFocus( element )
{
	if (!errorChk)
	{
		element.focus();
		if ( typeof( win ) == 'object' && !win.closed )
		{
			win.focus();
		}
	}
}

function fnFocusVolWt( element )
{
	if (!(typeof( win ) == 'object' && !win.closed ) )
	{
		element.length.focus();
		doweight(element, true, true, true);
	}
	else
	{
		element.form.volweight.blur();
		return false;
	}
	return true;
}

function fnTubeFocus( elem )
{
	if ( typeof( win ) == 'object' && !win.closed )
	{
		selheight(elem, true);
		win.focus();
	}
	else
		{
		selheight(elem, false);
		}
}

function fnSubmitIt_vol(formObj)
{
	formObj.submit();
}

function fnSetRadBtn(typVal,val)
{
	var MINUTES=60;
	var HOURS=24;
	var DAYS=365;
	expiry = MINUTES*MINUTES*HOURS*DAYS;
	var expiryDate = new Date ();
	FixCookieDate (expiryDate);
	expiryDate.setTime (expiryDate.getTime() + expiry); 
	if (typVal=="1")
	SetCookie ("pakVolume",val,expiryDate,null,null,null);
	else
	SetCookie ("unitsVolume",val,expiryDate,null,null,null);
}

if(isIE)
{
	 document.write('<style type="text/css"> .border0{border:0} </style>')
}

function validateNumber( value, paramName, defVal, toFloat, allowZero, decimalPoints, maxVal)
{
	var defMess = "<br />\n";
	var value2, lpCtr, dp = 1;
	if (typeof( defVal ) == "undefined") defVal = 0;
	if (typeof( toFloat ) == "undefined") toFloat = 1;
	if (typeof( allowZero ) == "undefined") allowZero = 1;
	if (typeof(decimalPoints) == "undefined") decimalPoints = 0;
	if( value == "" ) return defVal;
	if( value == blankmark )
	{
		return value;
	}
	if (defVal != "")
	{
		defMess = comm_msg017
	}
	if( isNaN( parseFloat( value ) ) )
	{
		strErrMess += volweight_msg008 + defMess + " " + defVal + ".<br />\n";
		return defVal;
	}
	if( value < 0 || (value == 0 && allowZero == 0) )
	{
		strErrMess += volweight_msg008 + defMess + " " + defVal + ".<br />\n";
		return defVal;
	}
	if( toFloat == 1 )
	{
		value2 = parseFloat( value );
	}
	else
	{
		value2 = Math.round( value );
	}
	if ( isNaN(value2) )
	{
		strErrMess += paramName + comm_msg050 + defMess + " " + defVal + ".<br />\n";
		return defVal;
	}
	if( value2 < 1 && value2 > 0 && ( value2 + "" ).charAt( 0 ) != "0" )
	{
		value2 = "0" + value2;
	}
	if (toFloat == 1 && decimalPoints > 0)
	{
		value2 = roundToDp(value2, decimalPoints)
	}
	if (typeof(maxVal) != "undefined" && value2 > maxVal)
	{
		strErrMess += paramName + comm_msg073 + defMess + " " + maxVal + ".<br />\n";
		return maxVal;
	}
	if( value!= value2)
	{
		strErrMess += paramName + " " + comm_msg050 + defMess + " " + value2 + ".<br />\n";
	}
	return value2;
}

