function getXMLRequester( )
{
  var xmlHttp = null;
  
  // Mozilla, Opera, Safari sowie Internet Explorer 7
  if (typeof XMLHttpRequest != 'undefined') {
      xmlHttp = new XMLHttpRequest();
  }
  if (!xmlHttp) {
      // Internet Explorer 6 und �lter
      try {
          xmlHttp  = new ActiveXObject("Msxml2.XMLHTTP");
      } catch(e) {
          try {
              xmlHttp  = new ActiveXObject("Microsoft.XMLHTTP");
          } catch(e) {
              xmlHttp  = null;
          }
      }
  }
  return xmlHttp;
}

function sendDataCAP(file) {
	
	xmlHttp = getXMLRequester();
	xmlHttp.open('GET', file, true);
	xmlHttp.setRequestHeader("Pragma", "no-cache");
	xmlHttp.setRequestHeader("Cache-Control", "must-revalidate");
	xmlHttp.setRequestHeader("If-Modified-Since", document.lastModified);
	xmlHttp.onreadystatechange = handleGetResponseCAP;
	xmlHttp.send(null);
	return false;
}

function sendDataCAP2(file) {
	
	xmlHttp = getXMLRequester();
	xmlHttp.open('GET', file, true);
	xmlHttp.setRequestHeader("Pragma", "no-cache");
	xmlHttp.setRequestHeader("Cache-Control", "must-revalidate");
	xmlHttp.setRequestHeader("If-Modified-Since", document.lastModified);
	xmlHttp.onreadystatechange = handleGetResponseCAP2;
	xmlHttp.send(null);
	return false;
}

function handleGetResponseCAP() {
//Checke, ob der Zugriff erfolgreich war
	if (xmlHttp.readyState == 4) {
		if (xmlHttp.status == 200) {
			var response = xmlHttp.responseText;
			CAPUpdate(response);
			return true; //response;
		}else{
			// Ignore
		}
	} else {
	 // Ignore
	}
	return false;
}

function handleGetResponseCAP2() {
//Checke, ob der Zugriff erfolgreich war
	if (xmlHttp.readyState == 4) {
		if (xmlHttp.status == 200) {
			var response = xmlHttp.responseText;
			CAPUpdate2(response);
			return true; //response;
		}else{
			// Ignore
		}
	} else {
	 // Ignore
	}
	return false;
}

var cap1send = false;
var cap2send = false;

function sendCAPRequest() {
	if(cap1send==false){
		cap1send=true;
		document.getElementById('buyButton').style.display = "none"; 
		document.getElementById('waitButton').style.display = "block"; 
		url = 'order.do?isCallAndPay=true';
		encodeURI(url);
		sendDataCAP(url);
	}
}

function sendCAPRequest2() {
	if(cap2send==false){
		cap2send=true;
		url = 'order.do?checkCallAndPay=true';
		encodeURI(url);
		sendDataCAP2(url);
	}
}

function CAPUpdate(response) {
	if(response=="error"){
		alert('Leider trat ein Fehler auf');	
	}else{
		document.getElementById('waitButton').style.display = "none"; 
		document.getElementById('capBox').style.display = "block"; 
		document.getElementById('capNumber').innerHTML = response;
	}
}

function CAPUpdate2(response) {
	cap2send=false;
	if (response!="OK") {
		if (response == "18") {
			alert('Bitte t&auml;tigen Sie zun&auml;chst den Festnetzanruf.');
		} else if (response == "19") {
			alert('Bitte f&uuml;hren Sie zun&auml;chst den Bezahlvorgang vollst&auml;ngig durch.');
		} else {
			alert('Leider trat ein Fehler auf');
		}
	} else {
		location.href = "order.do";
	}
}
