var xhr = false;

function getUTI(){
  var a = new Date();
  var uti = '' + a.getHours() + a.getMinutes() + a.getMilliseconds();
  return uti;
}

function ajaxObject(){
  var xhr;
	try{xhr=new XMLHttpRequest();}	// Firefox, Opera 8.0+, Safari  
	catch (e){	// Internet Explorer
		try{xhr=new ActiveXObject("Msxml2.XMLHTTP");}
		catch (e){	// IE 7 on Vista
			try{xhr=new ActiveXObject("Microsoft.XMLHTTP");}
			catch (e){        
				alert("Asynchronis Data Transfer unavailable, please use Internet Explorer!");        
				return false;
			}
		}
	}
	return xhr;
}

function showLogin(){
	document.getElementById('login_pic').style.display='none';
	document.getElementById('login_form').style.display='block';
	document.getElementById('login_button').innerHTML='<a href="javascript:showHome();" onfocus="if (this.blur) this.blur();">Home</a>';
	document.getElementById('email').focus();
}

function showHome(){
	document.getElementById('login_pic').style.display='block';
	document.getElementById('login_form').style.display='none';
	document.getElementById('login_button').innerHTML='<a href="javascript:showLogin();" onfocus="if (this.blur) this.blur();">Buyer Login</a>';
}

function login(){
	var dtToday = new Date();
	var theResponseDiv = document.getElementById('login_form');
	var u = document.getElementById('email').value;
	if (u.length == 0){
		document.getElementById('umessage').innerHTML='* You must enter your email.';
		document.getElementById('umessage').style.display='block';
		return true;
	}
	var p = document.getElementById('password').value;
	if (p.length == 0){
		document.getElementById('pmessage').innerHTML='* You must enter your password.';
		document.getElementById('pmessage').style.display='block';
		return true;
	}
	var url = 'async/login.cfm?email='+u+'&password='+p+'&uti='+getUTI();
	var xhr = ajaxObject();
	if (xhr) {
		xhr.onreadystatechange = function(){
			if (xhr.readyState == 4 || xhr.readyState == 'undefined') {
				if (xhr.status == 200){
					if (xhr.responseText==1){
						theResponseDiv.innerHTML='<h1 style="margin:80px 0 0 80px;">Login Successful</h1>';
						window.location='products.cfm';
						xhr.close;
					}
					else{
						theResponseDiv.innerHTML=xhr.responseText;
						xhr.close;
					}
				}
				else{
					xhr.innerHTML = 'Error: ' + xhr.status;
					xhr.close;
				}
			}
		};
		xhr.open("GET", url, true);
		xhr.send(null);
	}
	else {
		alert("Asynchronous Data Error!");
	}
}

function showForgot(){
	document.getElementById('fpasswordlink').style.display='none';
	document.getElementById('fpasswordform').style.display='block';
}

function fPassword(){
	var dtToday = new Date();
	var theResponseDiv = document.getElementById('fpassword');
	var u = document.getElementById('email1').value;
	if (u.length == 0){
		document.getElementById('umessage1').innerHTML='* You must enter your email.';
		document.getElementById('umessage1').style.display='block';
		return true;
	}
	var url = 'async/fpassword.cfm?email='+u+'&uti='+getUTI();
	var xhr = ajaxObject();
	if (xhr) {
		xhr.onreadystatechange = function(){
			if (xhr.readyState == 4 || xhr.readyState == 'undefined') {
				if (xhr.status == 200){
					if (xhr.responseText==1){
						theResponseDiv.innerHTML='<h3 style="padding:0 0 0 0;">Your password has been sent.</h3>';
						xhr.close;
					}
					else{
						document.getElementById('bemail1').style.display='block';
						xhr.close;
					}
				}
				else{
					xhr.innerHTML = 'Error: ' + xhr.status;
					xhr.close;
				}
			}
		}
		xhr.open("GET", url, true);
		xhr.send(null);
	}
	else {
		alert("Asynchronous Data Error!");
	}
}

function changeEmail(){
	var dtToday = new Date();
	var theResponseDiv = document.getElementById('eresponse');
	var u = document.getElementById('email').value;
	if (u.length == 0){
		document.getElementById('bademail').style.display='block';
		return true;
	}
	var url = 'async/changeEmail.cfm?newemail='+u+'&uti='+getUTI();
	var xhr = ajaxObject();
	if (xhr) {
		xhr.onreadystatechange = function(){
			if (xhr.readyState == 4 || xhr.readyState == 'undefined') {
				if (xhr.status == 200){
					if (xhr.responseText!=0){
						theResponseDiv.innerHTML=xhr.responseText;
						theResponseDiv.style.display='block';
						xhr.close;
					}
					else{
						document.getElementById('dupemail').style.display='block';
						xhr.close;
					}
				}
				else{
					xhr.innerHTML = 'Error: ' + xhr.status;
					xhr.close;
				}
			}
		}
		xhr.open("GET", url, true);
		xhr.send(null);
	}
	else {
		alert("Asynchronous Data Error!");
	}
}

function changePassword(){
	var dtToday = new Date();
	var theResponseDiv = document.getElementById('presponse');
	var p = document.getElementById('password').value;
	if (p.length == 0){
		document.getElementById('badpassword').style.display='block';
		return true;
	}
	var url = 'async/changePassword.cfm?newpassword='+p+'&uti='+getUTI();
	var xhr = ajaxObject();
	if (xhr) {
		xhr.onreadystatechange = function(){
			if (xhr.readyState == 4 || xhr.readyState == 'undefined') {
				if (xhr.status == 200){
					theResponseDiv.innerHTML=xhr.responseText;
					theResponseDiv.style.display='block';
					xhr.close;
				}
				else{
					xhr.innerHTML = 'Error: ' + xhr.status;
					xhr.close;
				}
			}
		}
		xhr.open("GET", url, true);
		xhr.send(null);
	}
	else {
		alert("Asynchronous Data Error!");
	}
}

function selectCust(a){
	var dtToday = new Date();
	var theResponseDiv = document.getElementById('customerDetail');
	var url = 'siteadminCustomerDetail.cfm?custid='+a+'&uti='+getUTI();
	var xhr = ajaxObject();
	if (xhr) {
		xhr.onreadystatechange = function(){
			if (xhr.readyState == 4 || xhr.readyState == 'undefined') {
				if (xhr.status == 200){
					theResponseDiv.innerHTML=xhr.responseText;
					xhr.close;
				}
				else{
					xhr.innerHTML = 'Error: ' + xhr.status;
					xhr.close;
				}
			}
		}
		xhr.open("GET", url, true);
		xhr.send(null);
	}
	else {
		alert("Asynchronous Data Error!");
	}
}

function selectProd(a){
	var dtToday = new Date();
	var theResponseDiv = document.getElementById('productDetail');
	var url = 'siteadminProductDetail.cfm?prodid='+a+'&uti='+getUTI();
	var xhr = ajaxObject();
	if (xhr) {
		xhr.onreadystatechange = function(){
			if (xhr.readyState == 4 || xhr.readyState == 'undefined') {
				if (xhr.status == 200){
					theResponseDiv.innerHTML=xhr.responseText;
					xhr.close;
				}
				else{
					xhr.innerHTML = 'Error: ' + xhr.status;
					xhr.close;
				}
			}
		}
		xhr.open("GET", url, true);
		xhr.send(null);
	}
	else {
		alert("Asynchronous Data Error!");
	}
}

function addToCart(a,b,c,d){
	var theResponseDiv = document.getElementById('sumgtot');
	var qty = document.getElementById('qty'+a).value;
	var tmp = isNaN(qty);
	if (isNaN(qty) || qty == 0 || qty.indexOf('.') != -1 || qty.indexOf('-') != -1){
		alert("You must enter a valid whole number for quantity.");
		return true;
	}
	var url = 'async/manageCart.cfm?productid='+a+'&thestate='+b+'&qty='+qty+'&price='+c+'&orderid='+d+'&uti='+getUTI();
	var xhr = ajaxObject();
	if (xhr) {
		xhr.onreadystatechange = function(){
			if (xhr.readyState == 4 || xhr.readyState == 'undefined') {
				if (xhr.status == 200){
					if (b == true){
						var thecost = qty * c;
						document.getElementById('sumdesc'+a).style.display='block';
						document.getElementById('sumweights'+a).style.display='block';
						document.getElementById('sumqty'+a).innerHTML = qty+' @ $'+c.toFixed(2)+' per';
						document.getElementById('sumtot'+a).innerHTML = '$'+thecost.toFixed(2);
					}
					else{
						document.getElementById('sumdesc'+a).style.display='none';
						document.getElementById('sumweights'+a).style.display='none';
						document.getElementById('sumqty'+a).innerHTML = '';
						document.getElementById('sumtot'+a).innerHTML = '';
					}
					if (xhr.responseText.indexOf('$0.00') != -1){
						document.getElementById('sbutton').disabled = 'disabled';
					}
					else{
						document.getElementById('sbutton').disabled = '';
					}
					theResponseDiv.innerHTML=xhr.responseText;
					xhr.close;
				}
				else{
					xhr.close;
				}
			}
		}
		xhr.open("GET", url, true);
		xhr.send(null);
	}
	else {
		alert("Asynchronous Data Error!");
	}
}

function noOrder(){
	var dtToday = new Date();
	var a = "";
	var theResponseDiv = document.getElementById('noOrder');
	var url = 'async/noOrder.cfm?prodid='+a+'&uti='+getUTI();
	var xhr = ajaxObject();
	if (xhr) {
		xhr.onreadystatechange = function(){
			if (xhr.readyState == 4 || xhr.readyState == 'undefined') {
				if (xhr.status == 200){
					theResponseDiv.innerHTML=xhr.responseText;
					xhr.close;
				}
				else{
					xhr.innerHTML = 'Error: ' + xhr.status;
					xhr.close;
				}
			}
		}
		xhr.open("GET", url, true);
		xhr.send(null);
	}
	else {
		alert("Asynchronous Data Error!");
	}
}
