var iUsrMinChar = 4;
var iPwdMinChar = 6;
var iPwdMaxChar = 8;

var formError = 0;
var formErrorMsg = '';

function Confirmation(sMsg)
{
	var agree;
	agree = confirm(sMsg);
	if (agree)
		return true;
	else
		return false;
}

function CheckRequiredFields(arrReqFlds, sHeader)
{
	for (var i=0 ; i<arrReqFlds.length ; i++)
	{
		if (document.getElementById(arrReqFlds[i][0]).value == '')
			AddErrMsg(arrReqFlds[i][1]);
	}
	
	if (formErrorMsg != '')
		formErrorMsg = sHeader + '\n\n' + formErrorMsg;
	
	return formErrorMsg;
}

function CheckInteger (p_txtInteger, sMsg)
{ 
	var i;
	var ch;
	if (document.getElementById)
	{
		var txtInteger = document.getElementById(p_txtInteger);
		if (txtInteger != null)	
		{
			var s = txtInteger.value;
			for (i = 0; i < s.length; i++)
			{   
				ch = s.charAt(i);
				if (!IsDigit(ch))
				{
					AddErrMsg(sMsg);
					break;
				}
			}
		}
	}
}

function IsDigit (ch)
{
	return ((ch >= "0") && (ch <= "9"));
}

function isInteger(s)
{
	var i;
    for (i = 0; i < s.length; i++){   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function IsEmpty(s)
{
	return ((s == null) || (s.length == 0));
}

function AllFieldsRequired( frm, sMsg )
{
	var field;
	var bReturn = true;
	
	for (var e = 0; e < frm.elements.length; e++)
	{
		field = frm.elements[e];
	
		if (field.type.toLowerCase() == 'text')
		{
			if (Trim(field.value) == "")
			 {
				alert(sMsg);
				field.focus();
				bReturn = false;
			} 
		}
	}
	return bReturn;
}

function CheckUrl(p_txtEmail, sMsg)
{
	var sRegEx = /(https?:\/\/)/gi;
	var str;
	var bool;
	
	if (document.getElementById)
	{
		var txtEmail = document.getElementById(p_txtEmail);
		if (txtEmail != null)	
		{
			str = txtEmail.value;
			bool = str.search(sRegEx);
			if (bool != 0 && str != '')
			{
				AddErrMsg(sMsg);
				txtEmail.focus();
			}			
		}
	}
}

function CheckEmail(p_txtEmail, sMsg)
{
	var sRegEx = /([\w\_\.\-]+\@[\w\_\.\-]+\.[a-zA-Z]{2,5})/i;	
	var str;
	var bool;
	
	if (document.getElementById)
	{
		var txtEmail = document.getElementById(p_txtEmail);
		if (txtEmail != null)	
		{
			str = txtEmail.value;
			bool = str.search(sRegEx);
			if (bool != 0 && str != '')
			{
				AddErrMsg(sMsg);
				txtEmail.focus();
			}
		}
	}
}

function CheckMaxLength(p_txtarea, p_maxlength, sMsg)
{
	if (document.getElementById)
	{
		var field = document.getElementById(p_txtarea);

		if (field != null)
		{
			if (field.value.length > p_maxlength)
			{
				AddErrMsg(sMsg);
				if (field.type.toLowerCase() != 'hidden')
					field.focus();
			}
		}
	}
}

function CheckSelection(p_selectbox, sMsg)
{
	if (document.getElementById)
	{
		var field = document.getElementById(p_selectbox);

		if (field != null)
		{
			if (field.options[field.selectedIndex].value == '')
			{
				AddErrMsg(sMsg);
				field.focus();
			}
		}
	}
}

function CheckRadio(p_radio, sMsg)
{
	var iSelection = -1;

	for(i=0; i < p_radio.length; i++)
	{
		if (p_radio[i].checked)
		{
			iSelection = i;
		}
	}

	if (iSelection == -1)
	{
		AddErrMsg(sMsg);
	}
}

function Trim(sString) 
{
	while (sString.substring(0,1) == ' ')
	{
		sString = sString.substring(1, sString.length);
	}
	while (sString.substring(sString.length-1, sString.length) == ' ')
	{
		sString = sString.substring(0,sString.length-1);
	}
	return sString;
}

function AddErrMsg(sMsg)
{
	formErrorMsg = formErrorMsg + '- ' + sMsg + '\n';
	formError = formError + 1;	
}