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 sendData(data, file) {
  	theData = data;
  	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 = handleGetResponse;
    xmlHttp.send(null);
    
  return false;
}

function sendDataWithoutResponse(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.send(null);
    
  return false;
}

function handleGetResponse() {
  // Checke, ob der Zugriff erfolgreich war
  if (xmlHttp.readyState == 4) {
    var response = xmlHttp.responseText;
    return true;
  } else {
    // Ignore
  }
  return false;
}

// Tell A Friend

function sendDataTAF(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 = handleGetResponseTAF;
    xmlHttp.send(null);
    
  return false;
}


function handleGetResponseTAF() {
  // Checke, ob der Zugriff erfolgreich war
  if (xmlHttp.readyState == 4) {
    var response = xmlHttp.responseText;
    responseUpdate(response);
    return true;
  } else {
    // Ignore
  }
  responseUpdate('Fehler');
  return false;
}



 /* add playlist to cnt ajax */
function addContentToPlaylist(url) {
	url = 'addContentToPlaylist.do'+url;
  	encodeURI(url);
  	sendDataAddContentToPlaylist(url);
  	
  	var normal = document.getElementById('normal');
  	var wait = document.getElementById('wait');
  	if(normal!=null && wait!=null){
  		normal.style.display='none';
  		wait.style.display='block';
  	}
}

function sendDataAddContentToPlaylist(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 = handleGetResponseAddContentToPlaylist;
	xmlHttp.send(null);
	return false;
}
function handleGetResponseAddContentToPlaylist() {
//Checke, ob der Zugriff erfolgreich war
	if (xmlHttp.readyState == 4) {
		if (xmlHttp.status == 200) {
			var response = xmlHttp.responseText;
			notificationClose();
			
		  	var normal = document.getElementById('normal');
		  	var wait = document.getElementById('wait');
		  	if(normal!=null && wait!=null){
		  		normal.style.display='block';
		  		wait.style.display='none';
		  	}
		  	
			return true; //response;
		}else{
			// Ignore
		}
	} else {
	 // Ignore
	}
	return false;
}
//Call and Pay

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;
}

/*MUSIC SEARCH*/

  function sendDataMusicSearch(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 = handleGetResponseMusicSearch;
    xmlHttp.send(null);
    return false;
  }
  
  function handleGetResponseMusicSearch() {
    // Checke, ob der Zugriff erfolgreich war
    if (xmlHttp.readyState == 4) {
      var response = xmlHttp.responseText;
      responseUpdateMusicSearch(response);
      return true;
    } else {
      // Ignore
    }
    return false;
  }
  
  

var waitText = "<img src=\"themes/musicbox/customerWidgets/img/ajax-loader-bluebg.gif\"/> Bitte warten...";
var successText = "Erfolgreich hinzugefügt.";
  
/*ADD TO WIDGET*/

  function showAddToWidget(ordercode) {
	notificationShowNoTime(1,waitText);
	var url = "dispatch.do?def=.addToWidgetPopup&content=" + ordercode;
	  
  	xmlHttp = getXMLRequester();
    xmlHttp.open('GET', url, true);
    xmlHttp.setRequestHeader("Pragma", "no-cache");
    xmlHttp.setRequestHeader("Cache-Control", "must-revalidate");
    xmlHttp.setRequestHeader("If-Modified-Since", document.lastModified);
    xmlHttp.onreadystatechange = handleGetResponseAddToWidget;
    xmlHttp.send(null);
  }
  
  function handleGetResponseAddToWidget() {
    // Checke, ob der Zugriff erfolgreich war
    if (xmlHttp.readyState == 4) {
      var response = xmlHttp.responseText;
      notificationShowNoTime(30,response);
    } else {
      // Ignore
    }
  }
  
  function addToWidget(widget,ordercode){
	notificationShowNoTime(1,waitText);
	var url = "addToWidget.do?widget="+widget+"&content=" + ordercode;
	  
  	xmlHttp = getXMLRequester();
    xmlHttp.open('GET', url, true);
    xmlHttp.setRequestHeader("Pragma", "no-cache");
    xmlHttp.setRequestHeader("Cache-Control", "must-revalidate");
    xmlHttp.setRequestHeader("If-Modified-Since", document.lastModified);
    xmlHttp.onreadystatechange = handleGetResponseAddToWidgetDo;
    xmlHttp.send(null);
  }
  
  function handleGetResponseAddToWidgetDo() {
    // Checke, ob der Zugriff erfolgreich war
    if (xmlHttp.readyState == 4) {
      var response = xmlHttp.responseText;
      notificationShowNoTime(31,successText);
    } else {
      // Ignore
    }
  }
    
/*ADD TO PLAYLIST*/
  
    function showAddToPlaylist(ordercode) {
      notificationShowNoTime(1,waitText);
      var url = "dispatch.do?def=.addToPlaylistPopup&content=" + ordercode;
  	  
      xmlHttp = getXMLRequester();
      xmlHttp.open('GET', url, true);
      xmlHttp.setRequestHeader("Pragma", "no-cache");
      xmlHttp.setRequestHeader("Cache-Control", "must-revalidate");
      xmlHttp.setRequestHeader("If-Modified-Since", document.lastModified);
      xmlHttp.onreadystatechange = handleGetResponseAddToPlaylist;
      xmlHttp.send(null);
    }
    
    function handleGetResponseAddToPlaylist() {
      // Checke, ob der Zugriff erfolgreich war
      if (xmlHttp.readyState == 4) {
        var response = xmlHttp.responseText;
        notificationShowNoTime(20,response);
      } else {
        // Ignore
      }
    }
    
    function addToPlaylist(widget,ordercode){
    	notificationShowNoTime(1,waitText);
	    var url = "addToPlaylist.do?playlist="+widget+"&content=" + ordercode;
		  
	  	xmlHttp = getXMLRequester();
	    xmlHttp.open('GET', url, true);
	    xmlHttp.setRequestHeader("Pragma", "no-cache");
	    xmlHttp.setRequestHeader("Cache-Control", "must-revalidate");
	    xmlHttp.setRequestHeader("If-Modified-Since", document.lastModified);
	    xmlHttp.onreadystatechange = handleGetResponseAddToPlaylistDo;
	    xmlHttp.send(null);
	  }
	  
	  function handleGetResponseAddToPlaylistDo() {
	    // Checke, ob der Zugriff erfolgreich war
	    if (xmlHttp.readyState == 4) {
	      var response = xmlHttp.responseText;
	      notificationShowNoTime(21,successText);
	    } else {
	      // Ignore
	    }
	  }