// JavaScript Document

function slideDown()  {
	// colored flash effect
	$("#drawer").css("backgroundColor", "#229");
	$("#drawer").slideToggle("slow");
	setTimeout(function() { $("#drawer").css("backgroundColor", "#fff"); }, 1000);
	setTimeout(function() { slideUp(); }, 5000);
};

function slideUp()  {
	$("#drawer").slideToggle("slow");
};

function num_to_string(num, dec, leadchar) {

var returnString = ""

if (isNaN(num)==false) {
	var tmpstr = num.toString()
} else {
	var tmpstr = num
}

var decimal_location = tmpstr.indexOf(".")
if (decimal_location !=-1) {
   	var intpart = tmpstr.substr(0, decimal_location)
	var dec_val = tmpstr.substr(decimal_location+1)
} else {
   	var intpart = tmpstr
	var dec_val = ""
}

    if (leadchar != "") returnString = leadchar;	
	if (dec_val.length > dec)  dec_val = dec_val.substr(0,dec)
	if  (dec_val.length < dec) {
		dec_val += "0000" // Add some zeros
		dec_val = dec_val.substr(0,dec)
	}
	
	returnString += intpart + "." + dec_val
	return returnString;	
}

// Bargraph stuff

function reset_bar() {
	$(".sales .bar1").css("background-image","url(/images/redbar_bg.jpg)")
	$(".sales .bar1").css("background-position","bottom center")
	$(".sales .bar1 > p").html("0") 
}


function disp_bar(nGoal, cnt, red_thresh, yel_thresh, grn_thresh, barctl) {
	var hgt = 60
	var incr = parseInt((hgt/nGoal))
	var curr = parseInt((cnt * incr))
	var bg_pos = (hgt-curr)
	if (bg_pos < 0) {
		bg_pos = 0
	}
	var bar = $("#" + barctl)
	bar.css("background-image","url(/images/salesbar_bg.jpg)")	
	if (cnt > 0 && (cnt >= nGoal | cnt >= grn_thresh)) {
		bar.css("background-position","0px "+ bg_pos +"px")
		
	} else if (cnt > 0 && cnt > red_thresh && cnt < grn_thresh) {
		bar.css("background-position","-25px "+ bg_pos +"px") 
	
	} else if (cnt == 0 | cnt <= 0 | cnt <= red_thresh) {
		bg_pos = 50
		bar.css("background-position","-50px "+ bg_pos +"px")
	}
}
// End of Bargraph Stuff

function open_page(PageAction, target) {
    window.open(PageAction,target);
}

function nav(id) {
   window.location = id	
}

function init() {
   // we only need to change this variable to reconfigure the timeout
	var nMins = 20
	
	var nTimeout = (60000 * nMins)
	setTimeout('sessionTimeoutRelogin('+nMins+')', nTimeout);
	setTimeout('sessionTimeoutWarn()',((nMins-2)*60000));
}

function SessionInit() {
   // we only need to change this variable to reconfigure the timeout
	var nMins = 20
	var nTimeout = (60000 * nMins)
	//alert("Session Maximum: " + nMins + nTimeout + " Session Warning: " + (nMins-2)*60000)
	setTimeout('sessionTimeout('+nMins+')', nTimeout);
	setTimeout('sessionTimeoutNotify()',((nMins-2)*60000));
}

function sessionTimeoutNotify()  {
	var url= "/get_status.asp"		
	$.get(url, function(data){
		var AccessLevel = data.AccessLevel
	   // Ignor if they are just a visitor
	   if (AccessLevel == '0' | AccessLevel == '1') {
		   return;
		}
		alert("Your Session will end in 2 Minutes."
		+ "\n" + "due to inactivity.");
	},"json")
}

function sessionTimeout(nMins)  {
	alert("Your Session has timed out."	
	+ "\n" + "As a Security measure, your Session ends after " + nMins 
	+ " minutes of inactivity."+ "\n" 
	+ "you will need to Login again to continue with elevated tasks.");
	window.location ="/logout.asp?mode=h";
}

function logout() {
	var url= "logout.asp"	
	$.get(url, function(data){
	$("#LogInOut").html("<a href='login.asp'>User Login</a>")
	});
	
	// refresh the page and hide the manage link
	$("#manage, #invoicing").html("")
	$("#manage, #invoicing").css("display","none")
	disp_status ()
}		


function disp_status (){

	var url= "get_cart_total.asp"
	$.get(url, function(data){
	   if (data != '0') {
		  cart = "<a href='cart.asp'>View Cart: " + data + "<img align='absmiddle' src='images/view_cart.png'/></a>";
		  //alert(cart)
		  $("#cart").html(cart)	   
	   }
	});		

	url= "get_visitors.asp"
	$.get(url, function(data){
	   if (data != '0') {		
		  var str = "Visitors: " + data;	          
		  $("#visitors").html(str)	   
	   }
	});		

	url= "greeting.asp"
	$.get(url, function(data){
	   if (data != '0') {		
		  var str = data;	          
		  $("#user").html(str)	
	   }
	});		

	url= "user.asp"
	$.get(url, function(data){
		// See what the UserID Session Status is
	   if (data != '') {		
		  var str = data;	
		  //alert("CustomerID: " + str)          
		  $("#LogInOut").html("<a href='javascript:; logout()'>User Logout</a>")

			url= "greeting.asp"
			$.get(url, function(data){
			   if (data != '') {		
				  var str = data;	          
				  if (str == 'Visitor' | str == 'User') {
					$("#manage, #invoicing").html("")  
					$("#manage, #invoicing").css("display","none")
				  } else {
					$("#manage").html("<a href='management/management.asp'>Site Management</a>") 
					$("#invoicing").html("<a href='orders/invoicing.asp'>Invoicing</a>") 
					$("#manage, #invoicing").css("display","block")
				  }
			   }
			});		

	   } else {
		  // If this is not just a visitor then enable the Management Link for Managers
		  //alert("CustomerID: " + str)
		  $("#LogInOut").html("<a href='login.asp'>User Login</a>")
		  $("#manage, #invoicing").html("")
		  $("#manage, #invoicing").css("display","none")
	   }
	});
}


function NewWindow(mypage,myname,w,h,scroll){
	LeftPosition = (screen.width) ? (screen.width-w)/2 : 0;
	TopPosition = (screen.height) ? (screen.height-h)/2 : 0;
	settings = 'height='+h+',width='+w+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',resizable=no,'
	win = window.open(mypage,myname,settings)
}

function previous_page() {
	window.history.back();
}	

function MakeQueryString(form){
   var Querystr = '?';

   $(':input, :text').each(function () {
	   // Ignor all Button Tags they have no values to process
	   if ( $(this).attr("type") != 'button') {
		   Querystr += $(this).attr("id") + '='
		   Querystr += $(this).val()
		   Querystr += '&'  
	   }
	});

	Querystr = Querystr.substr(0,Querystr.length-1)  
	//alert(values); // For Diagnostic Display
	return(Querystr);
}


function showValues(form){
   var values = '';

   $(':input').each(function () {
	   if ( $(this).attr("type") != 'button') {
		   values += $(this).attr("id")
		   values += ': \t';
		   values += $(this).val()
		   values += '\n';
	   }
	});
	alert(values);
}

function str_replace(haystack, needle, replacement) {
	//var str=haystack;
	//str.replace(needle, replacement) 
	var temp = haystack.split(needle);
	return temp.join(replacement);
	//return str;
}

//onkeyup="input_phone(this,this.value)"	   
function key_hit(key, fld) {
		
	if (key.keyCode==9) {
	   return false;
	}
	
	if (key.keyCode==13) {
	   prepare_Query_Fields()
	   return false;
	} else {
    
		// move to the next field if the require length has been reached
		if (fld.value.length==fld.maxLength) {
			 switch(fld.name) {
				case 'TireWidth': {
					document.getElementById('TireHeight').focus();
					document.getElementById('TireHeight').select();
				    //thefrm.TireHeight.focus();
				    //thefrm.TireHeight.select();
				   break;
				}   
				case 'TireHeight': {
					document.getElementById('Rim').focus();
					document.getElementById('Rim').select();
					//thefrm.Rim.focus();					
					//thefrm.Rim.select();
					break;
				}	     
				case 'Rim': { 
					document.getElementById('but_display').focus();
					break;
				}	     
			}	
		}
	}
}

function whichButton(event)
{
alert(event.keyCode);
}


function clear_form(frm) {
    document.getElementById(frm).reset();
}

function submit_form(frm) {
    document.getElementById(frm).submit();
}

function hide_div(id) {
	var e = document.getElementById(id);
		e.style.display = 'none';
}

function show_div(id) {
	var e = document.getElementById(id);
		e.style.display = 'block';
}

function toggle_layer(id) {
	var e = document.getElementById(id);
	if (e.style.visibility == 'hidden') {
	   e.style.visibilty = 'visible'
	} else {	
	   e.style.visibility = 'hidden'
	}
}


//-->


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;
}  

if (tempX < 0){tempX = 0;}
if (tempY < 0){tempY = 0;}  

//document.Show.MouseX.value = tempX;
//document.Show.MouseY.value = tempY;

return true;

}


// Session Monitoring Functions


function BrowserInfo()

{
  this.name = navigator.appName;
  this.codename = navigator.appCodeName;
  this.version = navigator.appVersion.substring(0,4);
  this.platform = navigator.platform;
  this.javaEnabled = navigator.javaEnabled();
  this.screenWidth = screen.width;
  this.screenHeight = screen.height;
  this.userAgent = navigator.userAgent;
  this.cookieEnabled = navigator.cookieEnabled;
}

function MM_callJS(jsStr) { //v2.0
  return eval(jsStr)
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_changeProp(objName,x,theProp,theValue) { //v6.0
  var obj = MM_findObj(objName);
  if (obj && (theProp.indexOf("style.")==-1 || obj.style)){
    if (theValue == true || theValue == false)
      eval("obj."+theProp+"="+theValue);
    else eval("obj."+theProp+"='"+theValue+"'");
  }
}

