<!--
// Detect if the browser is IE or not.
// If it is not IE, we assume that the browser is NS.
var IE = document.all?true:false
// If NS -- that is, !IE -- then set up for mouse capture
if (!IE) document.captureEvents(Event.MOUSEMOVE)
// Set-up to use getMouseXY function onMouseMove
document.onmousemove = getMouseXY;


var tempX = 0
var tempY = 0
var timeout         = 500;
var closetimer		= 0;
var ddmenuitem      = 0;
var ColumnCount		= 0;

var shareclosetimer		= 0;

function getMouseXY(e) {
  if (IE) { // grab the x-y pos.s if browser is IE
    tempX = event.clientX + document.body.scrollLeft;
    tempY = event.clientY + document.body.scrollTop;
  } else {  // grab the x-y pos.s if browser is NS
    tempX = e.pageX;
    tempY = e.pageY;
  }  
  // catch possible negative values in NS4
  if (tempX < 0){tempX = 0}
  if (tempY < 0){tempY = 0}  
  // show the position values in the form named Show
  // in the text fields named MouseX and MouseY
  //document.Show.MouseX.value = tempX + 10;
  //document.Show.MouseY.value = tempY + 10;
  return true;
}
// open hidden layer
function mopen(id, ele, xoffset)
{	
	// cancel close timer
	mcancelclosetime();

	// close old layer
	if(ddmenuitem) ddmenuitem.style.display = 'none';
	ddmenuitem = document.getElementById(id);
		
	//CreateWindow at mouse coords
	 CreateWindow(id, ele, xoffset);
}
function mopenModal(id, ele, xoffset)
{	
	// cancel close timer
	mcancelclosetime();

	// close old layer
	if(ddmenuitem) ddmenuitem.style.display = 'none';
	ddmenuitem = document.getElementById(id);

	//CreateWindow at mouse coords
	 spawnModalPopup(id, ele, xoffset, 0);
}
// close showed layer
function mclose()
{
	if(ddmenuitem) ddmenuitem.style.display = 'none';
}

// go close timer
function mclosetime()
{
	closetimer = window.setTimeout(mclose, timeout);
}

// cancel close timer
function mcancelclosetime()
{
	if(closetimer)
	{
		window.clearTimeout(closetimer);
		closetimer = null;
	}
}
function getY( oElement )
	{
	var iReturnValue = 0;
	while( oElement != null ) {
	iReturnValue += oElement.offsetTop;
	oElement = oElement.offsetParent;
	}
	return iReturnValue;
}
function getX( oElement )
	{
	var iReturnValue = 0;
	while( oElement != null ) {
		iReturnValue += oElement.offsetLeft;
		oElement = oElement.offsetParent;
	}
	return iReturnValue;
}
function CreateWindow(n, ele, xoffset) {	
	document.getElementById(n).style.display = 'block';
	//alert(pageWidth() /2 - 512);
	document.getElementById(n).style.position = "absolute";
	//document.getElementById(n).style.left = pageWidth() / 2 - 576;
	tempX = getX(ele);	
//	alert(tempX);
//	alert(n);	
	if (tempX + document.getElementById(n).offsetWidth > pageWidth() && tempX - document.getElementById(n).offsetWidth + ele.offsetWidth > 0) {				
		var offsetX;
		offsetX = ele.offsetWidth;
		tempX = tempX - document.getElementById(n).offsetWidth + ele.offsetWidth + 2;

	} else if ( n == 'VOIP') {
		var offsetX;
		offsetX = ele.offsetWidth;
		tempX = tempX - document.getElementById(n).offsetWidth + ele.offsetWidth + 2;
	}
	
	tempX = tempX + xoffset;
		
	document.getElementById(n).style.left = tempX + 'px';
	document.getElementById(n).style.top = 125 + 'px';
	
		
	}
function spawnModalPopup(n, ele, xoffset, yoffset) {
	//xoffset is an optional adjustment, to sort of nudge it over in either direction (accepts negative numbers)
	document.getElementById(n).style.display = 'block';
	document.getElementById(n).style.position = "absolute";
	tempX = getX(ele);
	tempY = getY(ele);
	document.getElementById(n).style.left = tempX + xoffset;
	document.getElementById(n).style.top = tempY + yoffset;
	}
function CloseWindow(n) {
	document.getElementById(n).style.display = 'none';
	}
function pageWidth() {
	return window.innerWidth != null? window.innerWidth : document.documentElement && document.documentElement.clientWidth ?       document.documentElement.clientWidth : document.body != null ? document.body.clientWidth : null;
} 
function pageHeight(){
	return  window.innerHeight != null? window.innerHeight : document.documentElement && document.documentElement.clientHeight ?  document.documentElement.clientHeight : document.body != null? document.body.clientHeight : null;
} 
function posLeft() {
	return typeof window.pageXOffset != 'undefined' ? window.pageXOffset :document.documentElement && document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ? document.body.scrollLeft : 0;
}
function posTop() {
	return typeof window.pageYOffset != 'undefined' ?  window.pageYOffset : document.documentElement && document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ? document.body.scrollTop : 0;
} 
function posRight() {
	return posLeft()+pageWidth();
} 
function posBottom(){
	return posTop()+pageHeight();
}
function deleminate(delimid) {
	var countRows = parseInt(document.getElementById("ColumnCount").innerHTML);
	halfRows = countRows / 2;
	halfRows = Math.round(halfRows);
	
			for (i=halfRows+1;i<=countRows;i++)
			{
				var strLinkText = document.getElementById(delimid+i).innerHTML;
				document.getElementById(delimid+i).style.display = "none";
				document.getElementById(delimid+"col2").innerHTML += "<div>" + strLinkText + "</div>"
			}
}
function clearText(id,dv){
	if(document.getElementById(id).value == dv){
		document.getElementById(id).value='';	
		document.getElementById(id).style.color='black';
		document.getElementById(id).style.textAlign='left';
	}
}

function setDefaultSearchText(id,dv){
	if(document.getElementById(id).value == '' || document.getElementById(id).value==dv){
		document.getElementById(id).value=dv;
		document.getElementById(id).style.color='gray';
	}
}
function searchsetfocus(t,d){
	var curElem = document.getElementById('atab').value;
	document.getElementById(d).innerHTML = document.getElementById(t+'text').innerHTML;	
	document.getElementById('atab').value = t;
}
function setfocus(t,d,f){
	var curElem = document.getElementById(f).value;
	document.getElementById(d).innerHTML = document.getElementById(t+'text').innerHTML;	
	document.getElementById(t).className = "tab-active";
	if (t != curElem) {
		document.getElementById(curElem).className = "tab-inactive";	
	}
	document.getElementById(f).value = t;
}

function rollfocus(t,a){
	if (document.getElementById(t).className!="tab-selected") {
		document.getElementById(t).className ="tab-active"; 
	}
}
function rolloutfocus(t,a,f){
	var curElem = document.getElementById(f).value;
	if (t!=curElem){
		document.getElementById(t).className = "tab-inactive"; 
	}
}

function setfocusdisplay(t,f){
	var curElem = document.getElementById(f).value;
	document.getElementById(t).className = "tab-selected";
	if (t != curElem) {
		document.getElementById(curElem).className = "tab-inactive";
		document.getElementById(curElem+'text').style.display = 'none';	;	
		document.getElementById(t+'text').style.display = 'block';	;	
	}
	document.getElementById(f).value = t;
}

function rollimage(image, largeimage, path){
	var curElem = document.getElementById('productimage').src;
	if(image!=curElem){
		document.getElementById('productimage').src = path + "/325x325/" + image + "_325x325.jpg";
	}
	if (largeimage == '') {
		document.getElementById('ViewLargerDiv').style.visibility = "hidden";
		LightboxLargeImageLink.setURL('none');
		document.getElementById('LargerImageLink').style.cursor="default";
	}
	else {
		document.getElementById('ViewLargerDiv').style.visibility = "visible";
		LightboxLargeImageLink.setURL('/ajax/ajaxdriver.cfm?d=product&cont=imagepopup&elid=LightboxLargeImageLink&img='+largeimage);
		LightboxViewLargeImage.setURL('/ajax/ajaxdriver.cfm?d=product&cont=imagepopup&elid=LightboxLargeImageLink&img='+largeimage);
		document.getElementById('LargerImageLink').style.cursor="pointer";
	}		
}

function launchLargerImagePopup(image) {
	//t=window.open(image, 'largerimagepopup', status=0, toolbar=0, menubar=0, directories=0, resizable=0, scrollbars=0, height=600, width=600);
	$("LargeImageDisplay").innerHTML = "<img src='"+image+"' width='100%' height='100%'>";
	spawnModalPopup("LargeImageWindow", $("largeimagepos"), 100, -300)
}

function setimagefocus(t,d,f){
	var curElem = document.getElementById(f).value;
	document.getElementById(d).innerHTML = document.getElementById(t+'text').innerHTML;	
	document.getElementById(t).className = t+"-active";	
	if (t != curElem) {
		document.getElementById(curElem).className = t+"-inactive";	
	}
	document.getElementById(f).value = t;	
	document.getElementById("iv").innerHTML = document.getElementById(t+'elem').innerHTML; 
}

function popUp(URL) {
day = new Date();
id = day.getTime();
eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=400,height=400');");
}

function getElementWidth(elem) {
		xPos = document.getElementById(elem).offsetWidth;
		return xPos;
}
function pswvalidate(v,t) {

	if(v.value.length < t) {
		document.getElementById(v.name+'errmsg').innerHTML = 'To Short';	
	}
	else {
		document.getElementById(v.name+'errmsg').innerHTML = '';
	}
}
function showShipping() {
			if(document.getElementById('showshipping').checked)
				{document.getElementById('shippingtext').style.visibility='visible'}
			else
				{document.getElementById('shippingtext').style.visibility='hidden'}
		}
function guessCard(c){
		if(c.value.substring(0,1) == 3){document.form.cardtype.selectedIndex=3}//amex
		else if(c.value.substring(0,1) == 6){document.form.cardtype.selectedIndex=4}//discover
		else if(c.value.substring(0,1) == 4){document.form.cardtype.selectedIndex=1}//visa
		else if(c.value.substring(0,1) == 5){document.form.cardtype.selectedIndex=2}//master card
	}
function doCommunication(theFunction,thevalue,theDiv)
	{
		
		var xmlhttp;
		if (window.XMLHttpRequest)
		  {
		  // code for IE7+, Firefox, Chrome, Opera, Safari
		  xmlhttp=new XMLHttpRequest();
		  }
		else if (window.ActiveXObject)
		  {
		  // code for IE6, IE5
		  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
		  }
		else
		  {
		  alert("Your browser does not support XMLHTTP!");
		  }
		xmlhttp.onreadystatechange=function()
		{
			if(xmlhttp.readyState==4){document.getElementById(theDiv).innerHTML=xmlhttp.responseText;}
			if(xmlhttp.readyState !=4){document.getElementById(theDiv).innerHTML="<i>Validating...</i>";}
		}
		xmlhttp.open("GET","/ajax/docommunication.htm?ajax=checkserial&command="+theFunction+"&value="+thevalue+"&str="+theDiv,true);
		xmlhttp.send(null);
		}
		
function hideDiv(divName) {
	if(document.getElementById(divName).style.display == 'none')
		{document.getElementById(divName).style.display = 'block'; 
		document.getElementById(divName).style.visibility = "visible";}
	else
		{document.getElementById(divName).style.display = 'none'; document.getElementById(divName).style.visibility = "hidden";}
	}
	
function showDiv(divName) {
	document.getElementById(divName).style.visibility = "visible";
	//document.getElementById(divName).style.display="none";
	}
	
	
function testJS() {
	alert("js active");
	}
function submitform(fname){
	document.getElementsByName(fname).submit();
}

var sharetimeout = 300;
var sharetimer = 0;


function share(i, ele, offset){									
	// cancel close timer
	sharecancelclosetime();
	shareitem = document.getElementById(i);
	shareitemwind = document.getElementById(ele);
	spawnModalPopup(i, shareitemwind, offset, 0);
}

// cancel close timer
function sharecancelclosetime()
{
	if(shareclosetimer)
	{
		window.clearTimeout(shareclosetimer);
		shareclosetimer = null;
	}
}

// go close timer
function shareclosetime()
{
	shareclosetimer = window.setTimeout(shareclose, timeout);
}

function shareclose()
{
	if(shareitem) shareitem.style.display = 'none';
}

function hideshare(i){
	element = document.getElementById(i);
	sharetimer = window.setTimeout("element.style.display = 'none'", sharetimeout);
}

function setAction(fieldID,keyValue) {  //this sets the action of a page to a specific value then submits
	fieldID.action = keyValue+'.htm';
	fieldID.submit();
}
function showHeaderMessage(str) {
	document.getElementById("MessageBar").style.display = "block";
	document.getElementById("MessageText").innerHTML = str;
}

function formatCurrency(num) {
	num = num.toString().replace(/\$|\,/g,'');
	if(isNaN(num))
		num = "0";
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001);
	cents = num%100;
		num = Math.floor(num/100).toString();
	if(cents<10)
		cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
		num = num.substring(0,num.length-(4*i+3))+','+
	num.substring(num.length-(4*i+3));
	return (((sign)?'':'-') + '$' + num + '.' + cents);
}
		
