var listVisible = false
function showSignUp() {
	if(!listVisible) {
		listUrl = "lib/listHandler.php5"
		listCallBack = "listHandler"
		sendRequest("", listUrl, listCallBack)
		listVisible = true
	}
}

function closeList() {
	document.getElementById("list").style.display = "none"
	document.getElementById("list").innerHTML = ""
	listVisible = false
}

function listHandler() {
	if (http_request.readyState==4 || http_request.readyState=="complete") { 
		document.getElementById("list").innerHTML = http_request.responseText
		document.getElementById("list").style.display = "block"
	}
}

var contactVisible = false
function showContact() {
	if(!contactVisible) {
		contactUrl = "lib/contactHandler.php5"
		contactCallBack = "contactHandler"
		sendRequest("", contactUrl, contactCallBack)
		contactVisible = true
	}
}

function closeContact() {
	document.getElementById("contact").style.display = "none"
	document.getElementById("contact").innerHTML = ""
	contactVisible = false
}

function contactHandler() {
	if (http_request.readyState==4 || http_request.readyState=="complete") { 
		document.getElementById("contact").innerHTML = http_request.responseText
		document.getElementById("contact").style.display = "block"
	}
}

var currentShowcase = "showcase0"
function closeShowcase() {
	document.getElementById('showcase').style.display = "none"
}

function swapShowcase(file) {
	if(currentShowcase.length)
		document.getElementById(currentShowcase).style.display = "none"
	document.getElementById(file).style.display = "block"
	currentShowcase = file
	document.getElementById('showcase').style.display = "block"	
}

function loadDiamonds() {
	sendRequest("param=1", "lib/diamondLoader.php5", "handleDiamonds")
}

function loadShowcases() {
	sendRequest("param=2", "lib/diamondLoader.php5", "handleShowcases")
}

function loadDiamondMenu() {
	sendRequest("param=3", "lib/diamondLoader.php5", "handleDiamondMenu")
}

function handleDiamondMenu() {
	if (http_request.readyState==4 || http_request.readyState=="complete") { 
		document.getElementById("pageNumbers").innerHTML = http_request.responseText
		loadShowcases()
	}
}

function handleShowcases() {
	if (http_request.readyState==4 || http_request.readyState=="complete") { 
		document.getElementById("showcase").innerHTML = http_request.responseText
		swapShowcase(currentShowcase)
	}
}

function handleDiamonds() {
	if (http_request.readyState==4 || http_request.readyState=="complete") { 
		document.getElementById("headliners").innerHTML = http_request.responseText
		loadDiamondMenu()
	}
}

function sendRequest(parameters, url, callBack) {	
  http_request = false;  
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
	 http_request = new XMLHttpRequest();
	 if (http_request.overrideMimeType) {
		// set type accordingly to anticipated content type
		//http_request.overrideMimeType('text/xml');
		http_request.overrideMimeType('text/html');
	 }
  } else if (window.ActiveXObject) { // IE
	 try {
		http_request = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
		try {
		   http_request = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {}
	 }
  }
  
  if (!http_request) {
	 alert('Cannot create XMLHTTP instance');
	 return false;
  }
  
  if(callBack == "handleDiamonds")
	  http_request.onreadystatechange = handleDiamonds
  else if(callBack == "handleDiamondMenu")
  	  http_request.onreadystatechange = handleDiamondMenu
  else if(callBack == "contactHandler")
  	  http_request.onreadystatechange = contactHandler
  else if(callBack == "listHandler")
	  http_request.onreadystatechange = listHandler
  else if(callBack == "listResponse")
      http_request.onreadystatechange = listResponse
  else
  	  http_request.onreadystatechange = handleShowcases
	   
  http_request.open('POST', url, true);
  http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  http_request.setRequestHeader("Content-length", parameters.length);
  http_request.setRequestHeader("Connection", "close");
  http_request.send(parameters);
}