function strTrim(tmpStr)
{
	tmpStr = tmpStr.replace(/^\s+/,"");//remove leading
	tmpStr = tmpStr.replace(/\s+$/,"");//remove trailing
	return tmpStr;
}
//------------------------------------------------------------------------------------
function trimFields()
{
	for(var i=0; i < obj.elements.length; i++)
	{
		if(obj.elements[i].type == "text" || obj.elements[i].type == "textarea" || obj.elements[i].type == "password")
		{
			obj.elements[i].value = strTrim(obj.elements[i].value);
		}
	}
}
//------------------------------------------------------------------------------------
function chkEmail(tmpStr)
{
	var email_pat = /^[a-z][a-z0-9_\.\-]*[a-z0-9]@[a-z0-9]+[a-z0-9\.\-_]*\.[a-z]+$/i;
	return(email_pat.test(tmpStr));
}

// Checking for Checkbox validation
function validateCheckBox(fieldName)
{
	var chks = obj.elements[fieldName];
	var hasChecked = false;
	for (var i = 0; i < chks.length; i++)
	{
		if (chks[i].checked)
		{
		    hasChecked = true;
			break;
		}
	}
	return hasChecked;
}

//==============================
//=====Check for characters=====
//==============================
function validateTALength(strField, cntlName, maxChar)
{
	if(obj.elements[cntlName].value.length > maxChar)
	{
		alert(strField+" should be within "+maxChar+" characters.");
		obj.elements[cntlName].focus();
		obj.elements[cntlName].select();
		return false;
	}
	return true;
}

//Checks validity of date fields
function chkDate(tmpStr)
{
	var dt_pat = /^\d{2,2}\/\d{2,2}\/\d{4,4}$/;
	if(!dt_pat.test(tmpStr))
	{
		return false;
	}
	var dtGiven = new Date(tmpStr);
	var arrDt = tmpStr.split("/");
	var dtMon = parseInt(arrDt[0],10);//force decimal or else 08,09 will return 0
	var dtDay = parseInt(arrDt[1],10); //force decimal or else 08,09 will return 0
	var dtYear = parseInt(arrDt[2],10); //force decimal or else 08,09 will return 0
	if((dtGiven.getMonth() != dtMon - 1) || (dtGiven.getDate() != dtDay) || (dtGiven.getFullYear() != dtYear))
	{
		return false;
	}
	return true;
}

//------------------------------------------------------------------------------------
function chkCity(tmpStr)
{
	var city_pat = /^[a-z]*$/i;
	return(city_pat.test(tmpStr));
}

//------------------------------------------------------------------------------------
function chkURL(tmpStr)
{
	var url_pat = /^(http|https|ftp):\/\/([\w-]+\.)+[\w-]+(\/[\w-\.\/?%&amp;,=#@\/:]*)?/;
	return(url_pat.test(tmpStr));
}

//------------------------------------------------------------------------------------
function chkImage(tmpStr)
{
	var img_pat = /(.jpg)/;
	return(img_pat.test(tmpStr))
}

//Checks CC Number by pattern
function chkCCNum(tmpStr)
{
	var cc_pat = /^(\d{14,16})$/
	return(cc_pat.test(tmpStr));
}

//Refreshes captcha image
function refreshCaptcha(imgid)
{
	var newimg = new Image();
	newimg.src = 'includes/captcha/captcha.php?hash='+parseInt(Math.random() * 10000000000);
	newimg.onload = function(){document.getElementById(imgid).src = newimg.src;}
}

//------------------------------------------------------------------------------------
function NewWindow(pageName, width, height)
{
	window.open(pageName, '', 'width='+width+',height='+height+',scrollbars=yes,resizable=yes,toolbar=0,menubar=0,location=0,left=50,top=100');
}

//------------------------------------------------------------------------------------
function VideoPopUp(pageName)
{
	window.open(pageName, '', 'width=475,height=425,scrollbars=0,resizable=0,toolbar=0,menubar=0,location=0,left=200,top=200');
}

function printClientList()
{
	window.open('print_client_list.php', '', 'width=720,height=650,left=150,scrollbars=1,top=30,toolbar=0,menubar=1,location=0');
}

function addToCart(bookID, type)
{
	if(type == 'book')
	{
		isChecked = false;
		for (i = 0;i < obj.elements['book_format_'+bookID].length;i++)
		{
			if(obj.elements['book_format_'+bookID][i].checked)
			{
				isChecked = true;
				break;
			}
		}
		if(!isChecked)
		{
			alert("You have to choose a Digital Book Format");
			return;
		}
	}
	obj.action='cart_process.php?opt=add&type='+type+'&id='+bookID;
	obj.submit();
}

function validateCheckout(type, bookFormatID)
{
	obj.action = 'cart_process.php?opt=add&type='+type+'&id='+bookID+'&format_id'+bookFormatId;
	obj.submit();
}

function showBlock(bookID)
{
	if(obj.elements['dc_format_'+bookID].checked == true)
	{
		document.getElementById('digital_block_'+bookID).style.display='block';
	}
	else
	{
		document.getElementById('digital_block_'+bookID).style.display='none';
	}

}
function checkState()
{
	if(obj.state.selectedIndex > 0 && obj.state.selectedIndex < 52)
		obj.country.selectedIndex = 230;
	if(obj.state.selectedIndex > 52)
		obj.country.selectedIndex = 37;
	if(obj.state.selectedIndex != 0 && obj.state.selectedIndex != 52)
		obj.b_other_state.value = '';
}
function checkOtherState()
{
	if(obj.state.selectedIndex != 0 && obj.state.selectedIndex != 52 && obj.other_state.value != '')
	{
		obj.state.selectedIndex = 0;
		obj.country.selectedIndex = 0;
	}
}
function checkCountry()
{
	if(obj.country.selectedIndex != 37 && obj.country.selectedIndex != 230)
	{
		obj.state.selectedIndex = 0;
	}
}

