function getXMLHttp()
{
  var xmlHttp
  try
  {
    //Firefox, Opera 8.0+, Safari
    xmlHttp = new XMLHttpRequest();
  }
  catch(e)
  {
    //Internet Explorer
    try
    {
      xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch(e)
    {
      try
      {
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
      }
      catch(e)
      {
        alert("Your browser does not support AJAX!")
        return false;
      }
    }
  }
  return xmlHttp;
}

function ShowCurrentSong()
{
  var xmlHttp = getXMLHttp();
  
  xmlHttp.onreadystatechange = function()
  {
    if(xmlHttp.readyState == 4)
    {
      HandleResponse(xmlHttp.responseText, 'current_song');
    }
  }

  xmlHttp.open("GET", "functions/interactive.php", true); 
  xmlHttp.send(null);
  k = setTimeout('ShowCurrentSong()', 5000);
}

function ShowMessageBar()
{
  var xmlHttp = getXMLHttp();
  
  xmlHttp.onreadystatechange = function()
  {
    if(xmlHttp.readyState == 4)
    {
      HandleResponse(xmlHttp.responseText, 'messagebar');
    }
  }

  xmlHttp.open("GET", "functions/get_info.php?action=getBerichtenbalk", true); 
  xmlHttp.send(null);
  k = setTimeout('ShowMessageBar()', 5000);
}

function getMessageInsertBar()
{
  var xmlHttp = getXMLHttp();
  
  xmlHttp.onreadystatechange = function()
  {
    if(xmlHttp.readyState == 4)
    {
      HandleResponse(xmlHttp.responseText, 'messageinsert');
    }
  }

  xmlHttp.open("GET", "functions/get_info.php?action=showBerichtenbalk", true); 
  xmlHttp.send(null);
  k = setTimeout('ShowMessageBar()', 5000);
}

function setMessageBar()
{
  var xmlHttp = getXMLHttp();
  var url = "functions/get_info.php?action=setBerichtenbalk&naam=" + escape(document.getElementById('message_name').value) + '&bericht=' + escape(document.getElementById('message').value);
  
  xmlHttp.onreadystatechange = function()
  {
    if(xmlHttp.readyState == 4)
    {
      //alert(url);
      document.getElementById('message').value = '';
      ShowMessageBar();
    }
  }
  xmlHttp.open("GET", url, true); 
  xmlHttp.send(null);
}

function ShowMemberArea(sAction ,sUsername, sPassword, sStay)
{
  var xmlHttp = getXMLHttp();
  
  xmlHttp.onreadystatechange = function()
  {
    if(xmlHttp.readyState == 4)
    {
      HandleResponse(xmlHttp.responseText, 'member_area');
      getMessageInsertBar();
    }
  }

  url = 'functions/member_area.php';
  if (sAction != null) {
    if (sAction == 'login') {
      if ((sUsername != null) && (sPassword != null)) {
        url = url + '?username=' + sUsername.value + '&password=' + sPassword.value + '&stay=' + sStay.checked;
      }
    }
    else {
      url = url + '?action=logout';
    }
  }

  xmlHttp.open("GET", url, true); 
  xmlHttp.send(null);
}

function HandleResponse(response, target)
{
  document.getElementById(target).innerHTML = response;
}

function checkEnter(event, username, password, stay)
{     
    var code = 0;
    NS4 = (document.layers) ? true : false;

    if (NS4)
        code = event.which;
    else
        code = event.keyCode;
    if (code==13)
        ShowMemberArea('login', username, password, stay);
}


function LoadAjax() {
  ShowCurrentSong();
  ShowMessageBar();
  ShowMemberArea();
}

function search(text) {
  searchArtist();
  searchTitle();
  searchAlbum();
}

function getXmlHttpRequestObject() {
  if (window.XMLHttpRequest) {
    return new XMLHttpRequest();
  }
  else if (window.ActiveXObject) {
    return new ActiveXObject('Microsoft.XMLHTTP');
  }
  else {
    alert('Helaas wordt de filterfunctie niet ondersteunt door deze browser.');	
  }
}


function searchArtist() {
  //Make xmlHTTPrequest
  var searchReq = getXmlHttpRequestObject();

  // Get SearchString
  var textbox = document.getElementById('txtSearch').value;

  // Make url
  var url = "functions/get_info.php?action=Artist&search=" + textbox;


  // Do get
  searchReq.open("GET", url, true);

  // Check if readystate changes
  searchReq.onreadystatechange = function() {
    if (searchReq.readyState == 4) {
      var ss = document.getElementById('artist_suggest');
      ss.innerHTML = '';
      var str = searchReq.responseText.split("\r\n");
      for(i=0; i < str.length - 1; i++) {
	var link = '<a href=\'verzoekjes/Artiest/' + escape(str[i].split("-")[1].replace(' ', '_')) + '/\'>' + str[i].split("-")[1] + '</a><br />';
        ss.innerHTML +=  link;
      }
    }
  };
  searchReq.send(null);
}



function searchTitle() {
  //Make xmlHTTPrequest
  var searchReq = getXmlHttpRequestObject();

  // Get SearchString
  var textbox = document.getElementById('txtSearch').value;

  // Make url
  var url = "functions/get_info.php?action=Title&search=" + textbox;


  // Do get
  searchReq.open("GET", url, true);

  // Check if readystate changes
  searchReq.onreadystatechange = function() {
    if (searchReq.readyState == 4) {
      var ss = document.getElementById('title_suggest');
      ss.innerHTML = '';
      var str = searchReq.responseText.split("\r\n");
      for(i=0; i < str.length - 1; i++) {
	var link = '<a href=\'verzoekjes/Title/' + escape(str[i].split("-")[1].replace(' ', '_')) + '/\'>' + str[i].split("-")[1] + '</a><br />';
        ss.innerHTML +=  link;
      }
    }
  };
  searchReq.send(null);
}



function searchAlbum() {
  //Make xmlHTTPrequest
  var searchReq = getXmlHttpRequestObject();

  // Get SearchString
  var textbox = document.getElementById('txtSearch').value;

  // Make url
  var url = "functions/get_info.php?action=Album&search=" + textbox;


  // Do get
  searchReq.open("GET", url, true);

  // Check if readystate changes
  searchReq.onreadystatechange = function() {
    if (searchReq.readyState == 4) {
      var ss = document.getElementById('album_suggest');
      ss.innerHTML = '';
      var str = searchReq.responseText.split("\r\n");
      for(i=0; i < str.length - 1; i++) {
	var link = '<a href=\'verzoekjes/Album/' + escape(str[i].split("-")[1].replace(' ', '_')) + '/\'>' + str[i].split("-")[1] + '</a><br />';
        ss.innerHTML +=  link;
      }
    }
  };
  searchReq.send(null);
}