var xmlhttp=false;
var lock = false;
var currentDiv;
var currentMsgDiv;

function detail(num , typ)
{
  var form = getObject('detailForm');
  var sel = getObject('selectedSolution');
  var type = getObject('solutionType');
  sel.value = num;
  type.value = typ;  
  form.submit();
  return false;
}

function toggleLine(num,page)
{
	var i=0;
	while(true)
	{
		if(i!=num){
			var div = getObject('div'+i);
			if(!hide(div)) break;
		}
		i++;
	}
	var i=0;	
	while(true)
	{
		var div = getObject('rdiv'+i);
		if(!hide(div)) break;
		i++;
	}
	var div = getObject('div'+num);
	if(showt(div)){
		currentDiv = 'div'+num;
		currentMsgDiv = 'msg'+num;
		ShowDivContent(num,'selectedSolution',page);
	}
}

function toggleReturnLine(num,page)
{
	var i=0;	
	while(true)
	{
		var div = getObject('div'+i);
		if(!hide(div)) break;
		i++;
	}
	var i=0;	
	while(true)
	{
		if(i!=num){
			var div = getObject('rdiv'+i);
			if(!hide(div)) break;
		}
		i++;
	}
	var div = getObject('rdiv'+num);
	if(showt(div)){
		currentDiv = 'rdiv'+num;
		currentMsgDiv = 'rmsg'+num;
		ShowDivContent(num,'selectedReturnSolution',page);
	}
}

function show(div)
{ 
   	if(div!=null)
 	{  
  	 if(isNS4)
			div.visibility = "show";
 	 else
  		{
   			div.style.visibility='visible';
   			div.style.display='';
   		}
  	}
 }
function showt(div){ 
if(div!=null){
if(isNS4){
if(div.visibility != "show"){div.visibility = "show";return true;}else{div.visibility = "hide";return false;}}
else{if(div.style.visibility != 'visible'){div.style.visibility='visible';div.style.display='';return true;}
else{div.style.visibility='hidden';div.style.display='none';return false;}}}
}

function hide(div){
	if(div!=null){  
		if(isNS4){
			div.visibility = "hide";
		}
		else{
   			div.style.visibility='hidden';
   			div.style.display='none';
   		}
   		return true;
	}else
   		return false;
 }
 

function ShowDivContent(num, type,page) 
{
		var xmlhttp = connect();
		if(!xmlhttp)
		{
			RequestShowDivContent(num,type,page);
			return;
		}
		var form = 'selectedSolution='+num+'&solutionType='+type+'&page='+page;
		var target = "detailTimetable.do";
		post(target,form);
}

function connect()
{
	try {
	  xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
	  try {
	   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  	} catch (E) {
   	xmlhttp = false;
  	}
 	}
 
	if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
  		xmlhttp = new XMLHttpRequest();
	}
	return xmlhttp;
}

function post(target,form)
{
 try{
	xmlhttp.onreadystatechange=ProcessResponse;
	xmlhttp.open("POST",target ,true);
	xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
	xmlhttp.send(form);
	}catch(Exception){}
}

function ProcessResponse()
{
	if (xmlhttp.readyState==4) 
	{
		if(xmlhttp.status == 200 && xmlhttp.responseText.length>0)
		{
			var div = getObject(currentDiv);
			div.innerHTML=xmlhttp.responseText;
		}
		else
		{
			var msg = document.getElementById(currentMsgDiv);
			msg.innerHTML='Erro na aquisição de dados';
		}
	}
}

function RequestShowDivContent(num,type,page)
{
	document.location.href="detailTimetable.do?selectedSolution="+num+'&solutionType='+type+'&page='+page;
}