function urlencode(text){
 var newtext=text; newtext=newtext.toString(); newtext=encodeURIComponent(newtext); newtext=newtext.replace(/%20/g, '+'); return newtext;
}

var req;
function Initialize(){
 try{req=new ActiveXObject("Msxml2.XMLHTTP");
 }catch(e){
  try{req=new ActiveXObject("Microsoft.XMLHTTP");
  }catch(oc){
   req=null;
  }
 }
 if(!req&&typeof XMLHttpRequest!="undefined"){req=new XMLHttpRequest();}
}

function send(d){ //d="y": yesterday; "t": tomorrow; "p": posted date
 if(d=="p"){
  var checkform;
  var caldate=document.getElementById("crm").value + "/" + document.getElementById("crd").value + "/" + document.getElementById("cry").value
  if(!isDate(caldate)){
   alert("Please select a valid date.");
   checkform="f";
   document.getElementById("crm").focus();
  }
  if(checkform=="f"){return false;}
 }else{
  caldate=document.getElementById("caldate").value;
 }
 var temp="k=" + urlencode(d + "|" + caldate);
 Initialize();
 if(req!=null){
  function ajaxTimeout(){req.abort(); failover(d,caldate);}
  var xmlHttpTimeout=setTimeout(ajaxTimeout,4000);
  req.onreadystatechange=function(){
   failed=false;
   if(req.readyState == 4 && req.status == 200){
    clearTimeout(xmlHttpTimeout);
    if(req.responseText != ""){
     var rArray=req.responseText.split("|")
     if(rArray[0]!="e"){//check for error
      document.getElementById("sched1").innerHTML=rArray[1];
      document.getElementById("sched2").innerHTML=rArray[2];
      document.getElementById("caldate").value=rArray[3];
      document.getElementById("crm").value=rArray[4];
      document.getElementById("crd").value=rArray[5];
      document.getElementById("cry").value=rArray[6];
     }else{
      caldate=rArray[1];
      failed=true;
     }
    }else{
     failed=true;
    }
   }
   if(failed==true){failover(d,caldate);}
  }
  req.open("POST","xshowsched.asp",true);
  req.setRequestHeader("Content-type","application/x-www-form-urlencoded");
  req.setRequestHeader("Content-length",temp.length);
  req.send(temp);
 }
}

function failover(d,caldate){
 if(d!="p"){
  caldate=new Date(caldate);
  if(d=="y"){caldate.setDate(caldate.getDate()-1);}else{caldate.setDate(caldate.getDate()+1);}
  isie==true ? temp=0 : temp=1900;
  caldate=(caldate.getMonth()+1) + "/" + caldate.getDate() + "/" + (caldate.getYear()+temp);
 }
 window.location="branson-show-schedule.asp?d=" + caldate;
}
