var dt_disclaimerDivName = "dynamicDisclaimer";
var dt_currentDiv = new Object;
/*
var dt_currentDiv = new Object();
dt_currentDiv.currentDivId="";
dt_currentDiv.shallBeHidden=false;
dt_currentDiv.disclaimerPath="";
*/

function hideDiv(id) {
	//safe function to hide an element with a specified id
	if (document.getElementById) { // DOM3 = IE5, NS6
		document.getElementById(id).style.display = 'none';
	}
	else {
		if (document.layers) { // Netscape 4
			document.id.display = 'none';
		}
		else { // IE 4
			document.all.id.style.display = 'none';
		}
	}
}

function showDivInline(id) {
	//safe function to hide an element with a specified id
	if (document.getElementById) { // DOM3 = IE5, NS6
		document.getElementById(id).style.display = 'inline';
	}
	else {
		if (document.layers) { // Netscape 4
			document.id.display = 'inline';
		}
		else { // IE 4
			document.all.id.style.display = 'inline';
		}
	}
}

function setCurrentDisclaimerPath(disclaimerPath){
	dt_currentDiv.disclaimerPath=disclaimerPath;
}

function showDiv(id) {
	//safe function to show an element with a specified id		  
	if (document.getElementById) { // DOM3 = IE5, NS6
		document.getElementById(id).style.display = 'block';
	}
	else {
		if (document.layers) { // Netscape 4
			document.id.display = 'block';
		}
		else { // IE 4
			document.all.id.style.display = 'block';
		}
	}
}

function getFileAsText(textFilePath){
	var oRequest = null;
	
	if (window.XMLHttpRequest){
		oRequest = new XMLHttpRequest();
	} else{
		oRequest = new ActiveXObject("Microsoft.XMLHTTP");
	}
	
	var sURL  = "http://" + self.location.hostname + ":" + self.location.port + textFilePath;	
	oRequest.open("GET",sURL,false);
	oRequest.setRequestHeader("User-Agent",navigator.userAgent);
	oRequest.send(null);
	
	if (oRequest.status!=200) alert("Error executing XMLHttpRequest call!");
	
	return oRequest.responseText;
}


function disclaimer() {
	var responseText = getFileAsText(dt_currentDiv.disclaimerPath);
   	var divTag = document.createElement("div");
       
   	divTag.id = dt_disclaimerDivName;
   	divTag.innerHTML = responseText;
   
   	document.body.appendChild(divTag);
}

function removeDisclaimer (){
	var disclaimerDiv = document.getElementById(dt_disclaimerDivName);
	document.body.removeChild(disclaimerDiv);
}

function disclaimerOKClicked(){	
	var allAnswersAreCorrect=checkAnswers();
	
	removeDisclaimer();
	
	if (allAnswersAreCorrect){
		displayCurrentDiv();	
	} else {
		dt_currentDiv.currentDivId = "";
	}
}

function displayCurrentDiv(){
	if (dt_currentDiv.currentDivId!=""){
		showDiv(dt_currentDiv.currentDivId);
	}
}	

function dt_tabClicked(divId, disclaimerPath){
	if (disclaimerPath != ''){
		hideDiv(divId);
		dt_currentDiv.disclaimerPath = disclaimerPath;
		dt_currentDiv.currentDivId = divId;
		disclaimer();
	}
}

function dt_linkClicked(divId, disclaimerPath){
	dt_currentDiv.currentDivId = divId;
	dt_currentDiv.disclaimerPath = disclaimerPath;
	disclaimer();	
}

function checkAnswers (){
	var retVal = false;
	var i = 1;
	var message = "";
	
	while (true){
		var list = document.getElementsByName("question" + i);
		if (list.length == 0){
			break;
		}
		
		var questionAnsweredPositively = false;
		for (var j=0;j<list.length;j++){
			if ((list[j].getAttribute('answer')=='true')&&(list[j].checked)){
				questionAnsweredPositively = true;
				break;
			}
		}
		
		if (questionAnsweredPositively){
			retVal = true;
		} else{		
			retVal = false;
			break;
		}		
		/*
		if (document.getElementById("truequestion" + i).checked){
			retVal = true;
		} else{		
			retVal = false;
			break;
		}
		*/
		i++;		
	}
	return retVal;
}

function closeDisclaimerClicked (){
	dt_currentDiv.currentDivId = "";
	removeDisclaimer();
}

function dt_aggregation_linkClicked(index, disclaimerPath){
	if (index != dt_currentDiv.currentDivId){		
		if (disclaimerPath != ''){
			disclaimer.init(disclaimerPath, 1, index);
		}else{
			showDiv(index);
			dt_currentDiv.currentDivId = index;
		}
	} else{
		hideDiv(index);		
		dt_currentDiv.currentDivId = "";
	}
}
