/*custom functions for starrett*/

function addToBasket(path,id){
	try{
		var quantity=document.getElementById("qt"+id).value;	
		window.location.href="/form/basket.php?p="+id+"&rp="+path+"&q="+quantity+"&f=am";
	}catch(e){
	
	}
}

function languageDropDown(set){
//drop down custom language selector
	if(document.getElementById('langOptions') && document.getElementById('langOptions').style.display=="block"){
		document.getElementById('langOptions').style.display="none";
		stopEvent('mouseup');		
	}
	if(set=="button"){
		document.getElementById('langOptions').style.display="block";
		document.getElementById('langOptions').style.zIndex="100";
		objectListen(document,'mouseup',languageDropDown);	
	}
}

function setLanguage(lang){
	if(document.getElementById('chosenlang')){
		document.getElementById('chosenlang').value=lang;
		document.getElementById('langform').submit();
	}
}


//==== get local distributors for buying products
function listLocalEcommerce(count){
	var myConn = new XHConn();
	var qstring;
	var postcode=document.getElementById('distFindInput').value;
	if(postcode){
		qstring="&pcode="+escape(postcode)+"&p="+count;
	}
	if (myConn && qstring){
		myConn.connect("/search/distributor-ecom.php", "POST",qstring, listLocalEcommerce_res);
	}
}

function listLocalEcommerce_res(data){
	document.getElementById('buyfromstarrett_form').style.display="none";
	document.getElementById('distributorResults').innerHTML=data.responseText;
	document.getElementById('distributorResults').style.display="block";
	document.getElementById('distributorForm').style.display="block";
}

function sendDistOrderCheck(){
	var formbits=document.getElementById('distributorForm').getElementsByTagName('INPUT');
	var errorcount=0;
	if(document.getElementById('distributor_id')){
		var distId=document.getElementById('distributor_id').value;
		document.getElementById('distid').value=distId;
		document.getElementById('checkouthtml').value=document.getElementById('checkout').innerHTML;
	}else{
		alert('Please select a distributor');	
		return;
	}
	for(i=0;i<formbits.length;i++){
		if(formbits[i] && formbits[i].type.toLowerCase()=="text" && formbits[i].value.length<2 && formbits[i].name!='mobile_dist'){
			formbits[i].style.border="1px solid red";
			errorcount++;
		}else{
			formbits[i].style.border="1px solid #ccc";
		}	
	}
	if(errorcount>0){
		alert('Please fill out the fields in the form marked in red before sending');
	}else{
		document.getElementById('distributorForm').submit();
	}
}

function buyFromStarrett(){
	document.getElementById('distributorResults').style.display="none";
	document.getElementById('distributorForm').style.display="none";
	document.getElementById('buyfromstarrett_form').style.display="block";
}

//================== Cross browser event handling
function objectListen(theObject,theEvent,thefunction){
	if(document.addEventListener){theObject.addEventListener(theEvent, thefunction, false); }else 
	if(document.attachEvent){theObject.attachEvent("on"+theEvent, thefunction);}
}
function objectStopListen(theObject,theEvent,thefunction){
	if(document.removeEventListener){theObject.removeEventListener(theEvent, thefunction, false); } else 
	if(document.detachEvent){theObject.detachEvent("on"+theEvent, thefunction);}
}
function stopEvent(event){
	//if(event.stopPropagation){event.stopPropagation();event.preventDefault();}
	//if(event.cancelBubble){event.cancelBubble = true;event.returnValue = false;}
	if(event.cancelBubble) event.cancelBubble=true;
	if(event.stopPropogation) event.stopPropogation();
	if(event.preventDefault) event.preventDefault();
	if(event.returnValue) event.returnValue=false;
	try{if(event.keyCode) event.keyCode=0;} catch(e) { }
}
//gem ajax stuff
function XHConn(){
  var xmlhttp, bComplete = false;
  try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); }
  catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); }
  catch (e) { try { xmlhttp = new XMLHttpRequest(); }
  catch (e) { xmlhttp = false; }}}
  if (!xmlhttp) return null;
  this.connect = function(sURL, sMethod, sVars, fnDone)
  {
    if (!xmlhttp) return false;
    bComplete = false;
    sMethod = sMethod.toUpperCase();

    try {
    	//before load, set statusbar to loading icon
    	if(document.getElementById('statusbar')){
    		document.getElementById('statusbar').style.backgroundImage="url(/duocms-resources/icons/loading2.gif)";
    	}
    		
      if (sMethod == "GET")
      {
        xmlhttp.open(sMethod, sURL+"?"+sVars, true);
        sVars = "";
      }
      else
      {
        xmlhttp.open(sMethod, sURL, true);
        xmlhttp.setRequestHeader("Method", "POST "+sURL+" HTTP/1.1");
        xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
      }
      xmlhttp.onreadystatechange = function(){
        if (xmlhttp.readyState == 4 && !bComplete){
        	//after loaded set statusbar back to old background
        	if(document.getElementById('statusbar') && oldStatusBackground){
	    		document.getElementById('statusbar').style.backgroundImage=oldStatusBackground;
    		}else if(document.getElementById('statusbar')){
    			document.getElementById('statusbar').style.backgroundImage='';
    		}
        	if(this.responseText && this.responseText.substr(0,62)=='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"'){
        		alert('You\'ve Been Logged Out');
        		if(document.parent){
        			document.parent.document.location.href='/duocms/';	
        		}else{
        			document.location.href='/duocms/';	
        		}
        		return;	
        	}
          bComplete = true;
          fnDone(xmlhttp);
        }};
      xmlhttp.send(sVars);
    }
    catch(z) { return false; }
    return true;
  };
  return this;
} 
