function chkCartUpdate(frm)
{
	//alert(frm);
	var noOfProducts;
	var comObj;
	noOfProducts = frm.hidProducts.value;
	for(i=1;i<=noOfProducts;i++)
	{
		comObj = eval("frm.txtqty_" + i);
		if(!notEmpty(comObj,"Quantity"))
		return false;
		else if(!notPosNumber(comObj,"Quantity"))
		return false;
	}
	return true;
}

function chkCartDelete(frm)
{
	//alert(frm);
	var noOfProducts;
	var comObj;
	var noOfChecked = 0;
	noOfProducts = frm.hidProducts.value;
	for(i=1;i<=noOfProducts;i++)
	{
		comObj = eval("frm.chkPrd_" + i);
		if(comObj.checked == true)
		{
			noOfChecked = noOfChecked + 1;
		}
	}
	if(noOfChecked==0)
	{
		alert("Please select atleast one photo item to delete!!");
		return false;
	}
	else
		return confirm("Are you sure you want to remove selected "+ noOfChecked +" item(s)");
}


function chkAddVisitorFrm(frm)
{
	if(!notEmpty(frm.txtShipFirstName,"Shipping First Name"))
		return false;
	if(!notEmpty(frm.txtShipLastName,"Shipping Last Name"))
		return false;
	if(!notEmpty(frm.txtShipEmail,"Shipping E-Mail Address"))
		return false;
	else if(!notEmail(frm.txtShipEmail,"Shipping E-Mail Address"))
		return false;
	if(!notEmpty(frm.txtShipAddress1,"Shipping Address"))
		return false;
	if(!notEmpty(frm.txtShipSuburb,"Shipping Suburb"))
		return false;
	if(!notEmpty(frm.txtShipState,"Shipping State"))
		return false;
	if(!notEmpty(frm.txtShipZipcode,"Shipping Post code"))
		return false;

	if(!notEmpty(frm.txtShipContNo1,"Shipping Area Code"))
		return false;
	else if(!notPhone(frm.txtShipContNo1,"Shipping Area Code"))
		return false;
	if(!notEmpty(frm.txtShipContNo2,"Shipping Contact No"))
		return false;
	else if(!notPhone(frm.txtShipContNo2,"Shipping Contact No"))
		return false;

	if(!notEmpty(frm.txtBillFirstName,"Billing First Name"))
		return false;
	if(!notEmpty(frm.txtBillLastName,"Billing Last Name"))
		return false;
	if(!notEmpty(frm.txtBillEmail,"Billing E-Mail Address"))
		return false;
	else if(!notEmail(frm.txtBillEmail,"Billing E-Mail Address"))
		return false;
	if(!notEmpty(frm.txtBillAddress1,"Billing Address"))
		return false;
	if(!notEmpty(frm.txtBillSuburb,"Billing Suburb"))
		return false;
	if(!notEmpty(frm.txtBillState,"Billing State"))
		return false;
	if(!notEmpty(frm.txtBillZipcode,"Billing Post code"))
		return false;

	if(!notEmpty(frm.txtBillContNo1,"Billing Area Code"))
		return false;
	else if(!notPhone(frm.txtBillContNo1,"Billing Area Code"))
		return false;
	if(!notEmpty(frm.txtBillContNo2,"Billing Contact No"))
		return false;
	else if(!notPhone(frm.txtBillContNo2,"Billing Contact No"))
		return false;

	if(!notSelected(frm.slCreditCard,"Credit Card Type"))
		return false;
	if(!notEmpty(frm.txtCCName,"Name on Credit Card"))
		return false;
	if(!notEmpty(frm.txtCCNumber,"Credit Card Number"))
		return false;
	else if(!notPosNumber(frm.txtCCNumber,"Credit Card Number"))
		return false;
	if(!notSelected(frm.expiryDateMonth,"Credit Card Expiry Month"))
		return false;
	if(!notSelected(frm.expiryDateYear,"Credit Card Expiry Year"))
		return false;
	if(!notEmpty(frm.txtSecurityCode,"Security Code"))
		return false;
	else
		return true;
}

function copyBilling(frm)
{
	frm.txtBillFirstName.value = frm.txtShipFirstName.value;
	frm.txtBillLastName.value = frm.txtShipLastName.value;
	frm.txtBillEmail.value = frm.txtShipEmail.value;
	frm.txtBillAddress1.value = frm.txtShipAddress1.value;
	frm.txtBillSuburb.value = frm.txtShipSuburb.value;
	frm.txtBillState.value = frm.txtShipState.value;
	frm.txtBillZipcode.value = frm.txtShipZipcode.value;
	frm.txtBillContNo1.value = frm.txtShipContNo1.value;
	frm.txtBillContNo2.value = frm.txtShipContNo2.value;
return true;
}

function ConvertRowsToLinks(xTableId){

var rows = document.getElementById(xTableId).getElementsByTagName("tr");

for(i=0;i<rows.length;i++){
  var link = rows[i].getElementsByTagName("a")
  if(link.length == 1){
	//rows[i].onclick = new Function("document.location.href='" + link[0].href + "'");
	rows[i].onmouseover = new Function("this.className='highlight'");
	rows[i].onmouseout = new Function("this.className=''");
  }
}

}

function trOver(passid)
{
	obj = document.getElementById(passid);

	rows = document.getElementById(passid).getElementsByTagName("td");
	for(i=0;i<rows.length;i++)
	{
		tdobj = rows[i];
		tdobj.style.background='#D2DAFF';
	}
	return true;
}

function trOut(passid)
{
	obj = document.getElementById(passid);
	rows = document.getElementById(passid).getElementsByTagName("td");
	for(i=0;i<rows.length;i++)
	{
		tdobj = rows[i];
		if(tdobj.className == 'shortTD')
		tdobj.style.background='#F0F0F0';
		else
		tdobj.style.background='';
	}
	return true;
}

function chkMultiStatusChange(frm)
{
	var NoOfRecords = frm.hidNoOfRecords.value;
	var isSel = 0;
	if(!frm.slChange.value)
	return false;
	
	for(i=0;i<NoOfRecords;i++)
	{
		comObj = eval("frm.chk_" + i);
		if(comObj.checked == true)
		{
			isSel = 1;
		}
	}
	if(!isSel)
	{
		alert("Please select atleast one record to change the status");
		frm.slChange.value = '';
		return false;
	}
	frm.submit();
	return true;
//txtShortDesc, chk_, hidNoOfPrices, flImage, slStatus
}


function chkCheckListBoxes(frm,isUn)
{
	var NoOfRecords = frm.hidNoOfRecords.value;
	var isSel = 0;
	
	for(i=0;i<NoOfRecords;i++)
	{
		comObj = eval("frm.chk_" + i);
		if(isUn)
		comObj.checked = false;
		else
		comObj.checked = true;
	}
	return true;
}

function chkAntiAgeingTestFrm(frm,isEdit)
{
	var noOfQuestions = frm.hidNoOfQuestions.value;
	var isSel = 0;
	
	for(p=0;p<noOfQuestions;p++)
	{
		comObj = eval("frm.radOption_" + p);
		comError = eval("frm.hidQuestion_" + p);
		if(!notRadioSelected(comObj,comError.value))
			return false;
	}
	if(!notSelected(frm.slAgeGroup,"Age Group"))
		return false;
	return true;
}

function chkDetoxTestFrm(frm,isEdit)
{
	var noOfQuestions = frm.hidNoOfQuestions.value;
	var isSel = 0;
	
	for(p=0;p<noOfQuestions;p++)
	{
		comObj = eval("frm.radOption_" + p);
		comError = eval("frm.hidQuestion_" + p);
		if(!notRadioSelected(comObj,comError.value))
			return false;
	}
	return true;
}

function chkUpdateMemberPwdFrm(frm,isEdit)
{
	if(!notEmpty(frm.txtOldPassword,"Old Password"))
		return false;	
	if(!notEmpty(frm.txtNewPassword,"New Password"))
		return false;				
	if(!notEmpty(frm.txtConfirmPassword,"Confirm Password"))
		return false;					
}

function chkAddUpdateMemberFrm(frm,isEdit)
{
	if(!notEmpty(frm.txtFirstName,"First Name"))
		return false;	
	if(!notEmpty(frm.txtLastName,"Last Name"))
		return false;	
	if(!notRadioSelected(frm.rdGender,"Gender"))
		return false;			
	if(!notSelected(frm.slAgeGroup,"Age Group"))
		return false;		
	if(!notEmpty(frm.txtAddress,"Address"))
		return false;		
	if(!notEmpty(frm.txtSuburb,"Suburb"))
		return false;	
	if(!notEmpty(frm.txtState,"State"))
		return false;			
	if(!notEmpty(frm.txtZipcode,"Post Code"))
		return false;	
	if(!notSelected(frm.slCountry,"Country"))
		return false;	
	if(!notEmpty(frm.txtContactNo,"Contact Number"))
		return false;			
	if(!notEmpty(frm.txtEmail,"Email Address"))
		return false;			
}

function chkAddMemberFrontFrm(frm,isEdit)
{
	if(!notEmpty(frm.txtFirstName,"First Name"))
		return false;	
	if(!notEmpty(frm.txtLastName,"Last Name"))
		return false;	
	if(!notRadioSelected(frm.rdGender,"Gender"))
		return false;			
	if(!notSelected(frm.slAgeGroup,"Age Group"))
		return false;		
	if(!notEmpty(frm.txtAddress,"Address"))
		return false;		
	if(!notEmpty(frm.txtSuburb,"Suburb"))
		return false;	
	if(!notEmpty(frm.txtState,"State"))
		return false;			
	if(!notEmpty(frm.txtZipcode,"Post Code"))
		return false;	
	if(!notSelected(frm.slCountry,"Country"))
		return false;	
	if(!notEmpty(frm.txtContactNo,"Contact Number"))
		return false;			
	if(!notEmpty(frm.txtEmail,"Email Address"))
		return false;			
	if(!notEmpty(frm.txtConfirmEmail,"Confirm Email Address"))
		return false;	
	if(!notEmpty(frm.txtPassword,"Password"))
		return false;	
	if(!notEmpty(frm.txtConfirmPassword,"Confirm Password"))
		return false;	
}

function chkAddProductFrm(frm,isEdit)
{
	if(!notEmpty(frm.txtTitle,"Product Title"))
		return false;
	if(!notEmpty(frm.txtTitle,"Price"))
		return false;		
	if(!notEmpty(frm.txtShortDesc,"Short Description"))
		return false;	
//	if(!notEmpty(frm.txtDetDesc,"Detailed Description"))
//		return false;		
	if(!isEdit)
	{
		if(!noFileSelected(frm.flImage,"Image"))
			return false;
	}
	if(!notSelected(frm.slStatus,"Status"))
		return false;
	else
		return true;
}

function chkAddMemberFrm(frm,isEdit)
{
	if(!notEmpty(frm.txtFirstName,"First Name"))
		return false;
	if(!notEmpty(frm.txtLastName,"Last Name"))
		return false;	
	if(!notRadioSelected(frm.optGender,"Gender"))
		return false;	
	if(!notSelected(frm.slAgeGroup,"Age Group"))
		return false;			
	if(!notSelected(frm.slCountry,"Country"))
		return false;
	if(!notEmpty(frm.txtContactNo,"Contact No"))
		return false;	
	if(!notEmpty(frm.txtPassword,"Password"))
		return false;		
	if(!notSelected(frm.slStatus,"Status"))
		return false;		
	else
		return true;
}

function chkQckSearch(frm)
{
	if(frm.txtKey.value=='Enter Your Keyword')
		frm.txtKey.value = '';

	if(!notEmpty(frm.txtKey,"Search Keyword"))
		return false;
	else
		return true;
}

function chkContactFrm(frm)
{
	if(!notEmpty(frm.txtFirstName,"First Name"))
		return false;
	if(!notEmpty(frm.txtLastName,"Family Name"))
		return false;
	if(!notEmpty(frm.txtEmail,"E-mail"))
		return false;
	if(!notEmpty(frm.txtContactNo,"Contact Number"))
		return false;
	else if(!notPhone(frm.txtContactNo,"Contact Number"))
		return false;
	if(!notSelected(frm.slEnquiryType,"Type of Enquiry"))
		return false;		
	if(!notEmpty(frm.txtEnquiry,"Enquiry"))
		return false;
	else
		return true;
}

function chkImportSubscribersFrm(frm)
{
	if(!noFileSelected(frm.flFile,"Excel File"))
	return false;
}

function chkImportStoresFrm(frm)
{
	if(!noFileSelected(frm.flFile,"Excel File"))
	return false;
}

function chkImportApplicationsFrm(frm)
{
	if(!noFileSelected(frm.flFile,"Excel File"))
	return false;
}

function chkForPassword(frm)
{
	if(!notEmpty(frm.txtUserName,"User Name"))
	return false;
	if(!notEmpty(frm.txtEmail,"E-mail"))
	return false;
}

function chkLogin(frm)
{
	if(!notEmpty(frm.UserName,"User Name"))
	return false;
	if(!notEmpty(frm.Pwd,"Password"))
	return false;
	else
	{
	//document.frmLoginFrm.submit();
	return true;
	}
}

function interFrmSubmit()
{
	frm = document.paypal_form;
	//alert(frm);
	frm.submit();
	return false;
}


function ageOptionChange(frm)
{
	var chkOpt = frm.rdYoung[1].checked;
	x = document.getElementById("parentdet");
	if(chkOpt == true)
		x.style.display = '';
	else
		x.style.display = 'none';
	return true;
}

function showImage(comid)
{
	setTimeout("showImageFinal('" + comid + "' )", 500);
}

function showImageFinal(comid)
{
	x = document.getElementById("lstgalimage");
	x.src = eval("document.tmpform." + comid + ".value");
	return true;
}

function dateSelected(comDate,forDate,NoOfEvaluations)
{
	x = document.getElementById(comDate);
	if(x.className != 'weekDayBack')
	x.className = 'weekDayBack';
	else
	x.className = 'weekDay';
	
	y = document.getElementById('dateSelArea');
	var inCon = new String(y.innerHTML);
	var formCon = new String(document.frmAddClass.hidDates.value);
	var NoOfEvaluations = NoOfEvaluations;

	if(navigator.appName == 'Microsoft Internet Explorer')
		var comIcon = '<BR>';
	else
		var comIcon = '<br>';


	if(x.className != 'weekDayBack')
	{
		var confBack;
		confBack = true;
		if(NoOfEvaluations > 0)
		{
			confBack = confirm("This class/session has been evaluated before.\n\nIf you remove that class/session from this course, assessment information associated with it will be deleted.\n\nAre you sure you want to uncheck this class/session?");
		}
		if(confBack == true)
		{
			y.innerHTML = inCon.replace(forDate + comIcon,'');
			document.frmAddClass.hidDates.value = formCon.replace(comDate + ',','');
		}
		else
		{
			x.className = 'weekDayBack';
		}
	}
	else
	{
		y.innerHTML = y.innerHTML + forDate + comIcon;
		document.frmAddClass.hidDates.value = formCon + comDate + ',';
	}
	
	z = document.getElementById('butDiv');
	if(y.innerHTML)
		z.style.display = '';
	else
		z.style.display = 'none';

	return true;
}

function showMenu(comId)
{
	x = document.getElementById(comId);

	chkmouseover(comId);
		//alert(document.forms.length);
		for(i=0;i<document.forms.length;i++)
		{
			var theForm = document.forms[0];
			//alert(theForm.elements.length);
			for(p=0;p<theForm.elements.length;p++)
			{
				//alert(theForm.elements[p].type);
				if(theForm.elements[p].type == 'select-one')
				theForm.elements[p].style.display = 'none';
			}
		}

	return true;
}

function hideMenu(comId)
{
	x = document.getElementById(comId);

	chkmouseout(comId);
		//alert(document.forms.length);
		for(i=0;i<document.forms.length;i++)
		{
			var theForm = document.forms[0];
			for(p=0;p<theForm.elements.length;p++)
			{
				if(theForm.elements[p].type == 'select-one')
				theForm.elements[p].style.display = '';
			}
		}

	return true;
}


function chkQuickSearchFront(frm)
{
	if(!frm.txtQckSearch.value && !frm.slCarType.value)
	{
		alert('Please select atleast one option!');
		return false;
	}
	else
	return true;
}

function chkQuickSearchTwo(frm)
{
	if(!notSelected(frm.slOpt,"Option"))
		return false;
	if(!notEmpty(frm.keyword,"Search Keyword"))
		return false;
	else
		return true;
}

function notChecked(obj,msg)
{
	var passObj = obj;
	var passMsg = msg;
	if(passObj.checked == false)
	{
		alert(msg);
		passObj.focus();
		return false;
	}
	return true;
}

function notEmptyFocus(obj,msg)
{
	var passObj = obj;
	var passMsg = msg;
	if(!passObj.value)
	{
		alert('Please enter a value for ' + msg + ' Field !!');
		return false;
	}
	return true;
}

function notEmail(obj)
{
	var passObj = obj;
	validRegExp = /^[^@]+@[^@]+.[a-z]{2,}$/i;

	// search email text for regular exp matches
	if (passObj.value.search(validRegExp) == -1)
	{
		alert('Please enter valid e-mail address');
		passObj.focus();
		return false;
	}
	return true; 
}

function notEmpty(obj,msg)
{
	var passObj = obj;
	var passMsg = msg;
	if(!passObj.value)
	{
		alert('Please enter a value for ' + msg + ' Field !!');
		passObj.focus();
		return false;
	}
	return true;
}

function notValidRange(obj,start,end,msg)
{
	var passObj = new String(obj.value);
	var passMsg = msg;
	if(passObj.length < 4 || passObj.length > 14)
	{
		alert('Your ' + msg + ' has to be between ' + start + ' and ' + end + ' characters!!');
		obj.focus();
		return false;
	}
	return true;
}

function notCurrency(obj,msg)
{
	var passObj = obj.value;
	var passMsg = msg;
	var checkOK = "1234567890.";
	var matched = 0;
	for (p = 0;  p < passObj.length;  p++)
	{
		matched = 0;
		for (j = 0;  j < checkOK.length;  j++)
		{
			if(passObj.charAt(p) == checkOK.charAt(j))
			{
			matched = 1;
			break;
			}
		}
		if(matched==0)
		{
			alert("Please enter a valid " + msg);
			obj.focus();
			return false;
		}
	}
	return true;
}

function notNumber(obj,msg)
{
	var passObj = obj.value;
	var passMsg = msg;
	var checkOK = "1234567890";
	var matched = 0;
	for (p = 0;  p < passObj.length;  p++)
	{
		matched = 0;
		for (j = 0;  j < checkOK.length;  j++)
		{
			if(passObj.charAt(p) == checkOK.charAt(j))
			{
			matched = 1;
			break;
			}
		}
		if(matched==0)
		{
			alert("Please enter a valid " + msg);
			obj.focus();
			return false;
		}
	}
	return true;
}

function notPosNumber(obj,msg)
{
	var passObj = obj.value;
	var passMsg = msg;
	var checkOK = "1234567890";
	var matched = 0;
	for (p = 0;  p < passObj.length;  p++)
	{
		matched = 0;
		for (j = 0;  j < checkOK.length;  j++)
		{
			if(passObj.charAt(p) == checkOK.charAt(j))
			{
			matched = 1;
			break;
			}
		}
		if(matched==0)
		{
			alert("Please enter a valid " + msg);
			obj.focus();
			return false;
		}
	}
	if(passObj <= 0)
	{
			alert("Please enter a valid " + msg);
			obj.focus();
			return false;
	}
	return true;
}

function notPhone(obj,msg)
{
	var passObj = obj.value;
	var passMsg = msg;
	var checkOK = "1234567890-()+ ";
	var matched = 0;
	for (p = 0;  p < passObj.length;  p++)
	{
		matched = 0;
		for (j = 0;  j < checkOK.length;  j++)
		{
			if(passObj.charAt(p) == checkOK.charAt(j))
			{
			matched = 1;
			break;
			}
		}
		if(matched==0)
		{
			alert("Please enter a valid " + msg);
			obj.focus();
			return false;
		}
	}
	return true;
}

function notCompare(obj,secobj,msg)
{
	var passObj = obj;
	var passObjSec = secobj;
	var passMsg = msg;
	if(passObj.value != passObjSec.value)
	{
		alert(msg);
		passObjSec.focus();
		return false;
	}
	return true;
}
function notSelected(obj,msg)
{
	var passObj = obj;
	var passMsg = msg;
	if(!passObj.value)
	{
		alert('Please select a value for ' + msg + ' Field !!');
		passObj.focus();
		return false;
	}
	return true;
}

function notMultiSelected(obj,msg)
{
	var passObj = obj;
	var passMsg = msg;
	var noOfEle = obj.length;
	var found = 0;
	
	for(i=0;i<noOfEle;i++)
	{
		if(obj[i].selected == true)
		{
			found = 1;
			break;
		}
	}
	if(found==0)
	{
		alert('Please select atleast one option for ' + msg);
		return false;
	}
	return true;

}

function notTwoDecimalCurrency(obj,msg)
{
	var passObj = obj.value;
	var passMsg = msg;
	var checkOK = "1234567890.";
	var matched = 0;
	var afterDot = 0;
	for (p = 0;  p < passObj.length;  p++)
	{
		matched = 0;
		if(passObj.charAt(p) == '.')
		{
			afterDot = (passObj.length - p) - 1;
			if(afterDot > 0 && afterDot < 3)
			return true
			else if(afterDot == 0)
			{
				alert("Invalid . (dot) in price !!!");
				obj.focus();
				return false;
			}
			else if(afterDot > 2)
			{
				alert("There has to be only 2 decimal places !!!");
				obj.focus();
				return false;
			}
		}
	}
	return true;
}


function noFileSelected(obj,msg)
{
	var passObj = obj;
	var passMsg = msg;
	if(!passObj.value)
	{
		alert('Please select ' + msg + ' !!');
		passObj.focus();
		return false;
	}
	return true;
}

function notRadioSelected(obj,msg)
{
	var passObj = obj;
	var passMsg = msg;
	var noOfEle = obj.length;
	var found = 0;
	
	for(i=0;i<noOfEle;i++)
	{
		if(obj[i].checked == true)
		{
			found = 1;
			break;
		}
	}
	if(found==0)
	{
		alert('Please select an option for ' + msg);
		return false;
	}
	return true;
}

////////////////////////////////////////////////////////////////////
// XML functions and AJAX things
////////////////////////////////////////////////////////////////////
var xmlHttp

function loadStoreLoc(state)
{
	xmlHttp = GetXmlHttpObject()
	if(xmlHttp==null)
	{
		alert("Browser does not support HTTP Request");
		return false;
	}
	
	var urlPass = "../retStoreLoc.php";
	urlPass = urlPass + "?s=" + state;
	urlPass = urlPass + "&sid="+Math.random();
	urlPass = urlPass + "&frm=A";
	//alert(urlPass);
	xmlHttp.onreadystatechange = fillStoreLocations;
	urlPass = new String(urlPass);
	xmlHttp.open("GET",urlPass);
	xmlHttp.send(null);
	return true;
}

function fillStoreLocations()
{
	if(xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{
		document.getElementById("storeclip").innerHTML = xmlHttp.responseText;
	}

	return true;
}

function GetXmlHttpObject()
{ 
	var objXMLHttp=null;
	if(window.XMLHttpRequest)
	{
		objXMLHttp=new XMLHttpRequest();
	}
	else if(window.ActiveXObject)
	{
		objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	return objXMLHttp;
}


////////////////////////////////////////////////////////////////////
// menu functions
////////////////////////////////////////////////////////////////////

function chkmouseover(passobj)
{
	x = document.getElementById(passobj);
	curX = findPosX(x);
	curY = findPosY(x);
	//alert("curX " + curX);
	//alert("curY " + curY);

	y = document.getElementById('menu' + passobj);

	y.style.display = '';

	if(passobj == 'catmenu' || passobj == 'supportmenu' || passobj == 'actcatmenu' || passobj == 'actsupportmenu')
	{
		if(navigator.appName == 'Microsoft Internet Explorer')
		{
			y.style.top = curY + 108;
			y.style.left = curX - 222;
		}
		else
		{
			y.style.top = (curY + 1) + "px";
			y.style.left = (curX - 222) + "px";
		}
	}
	else
	{
		if(navigator.appName == 'Microsoft Internet Explorer')
		{
			y.style.top = curY + 49;
			y.style.left = curX - 1;
		}
		else
		{
			y.style.top = (curY + 49) + "px";
			y.style.left = (curX + 0) + "px";
		}
	}
	//alert(y.style.top);
	//alert(y.style.left);
}

function chkmouseout(passobj)
{
	y = document.getElementById('menu' + passobj);

	y.style.display = 'none';
}

function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}

function screenWidth()
{
	if (self.innerWidth)
	{
		frameWidth = self.innerWidth;
		frameHeight = self.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientWidth)
	{
		frameWidth = document.documentElement.clientWidth;
		frameHeight = document.documentElement.clientHeight;
	}
	else if (document.body)
	{
		frameWidth = document.body.clientWidth;
		frameHeight = document.body.clientHeight;
	}
	return frameWidth;
}

function screenHeight()
{
	if (self.innerWidth)
	{
		frameWidth = self.innerWidth;
		frameHeight = self.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientWidth)
	{
		frameWidth = document.documentElement.clientWidth;
		frameHeight = document.documentElement.clientHeight;
	}
	else if (document.body)
	{
		frameWidth = document.body.clientWidth;
		frameHeight = document.body.clientHeight;
	}
	return frameHeight;
}