var xhreq=getXmlHReq();
var extref=new Array();
var current_hash=window.location.hash;
var chkid=null;
var timerDown=null;

onload=function(){

	chkid=window.setInterval("checkhash()", 50);

	if (current_hash.match('#'))
		window.location='index.php?'+current_hash.split('#')[1];
		
	timerDown=setTimeout("scrollDiv()",20);
	getxmlblk('ballon', 'lang=pt');
	hidethis('ballon', 0);
}

<!-- MARQUEE START -->

var step=1;

function scrollDiv(){
	var marquee=document.getElementById("marquee");
	clearTimeout(timerDown);
	marquee.scrollLeft+=step;
	timerDown=setTimeout("scrollDiv()",20);
	
	if(marquee.scrollLeft>=marquee.scrollWidth - marquee.offsetWidth)
		marquee.scrollLeft=0;
}

<!-- MARQUEE END -->

function checkhash(){ 
	if (window.location.hash!=current_hash) {
		var data = window.location.hash.split('#')[1];
		getxmlblk((data.match('m=')?'leftpane':'calendar'), data);
		if (data.match('date='))
			getxmlblk('calendar', data);
	}
}

function getXmlHReq(){
	var xmlver=new Array('Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.3.0', 'Msxml2.XMLHTTP', 'Microsoft.XMLHTTP');
	if (window.XMLHttpRequest) {
		return new XMLHttpRequest();
	}
	else if (window.ActiveXObject){
		for (var i=0; i<xmlver.length; i++)
			try {
				return new ActiveXObject(xmlver[i]); }
			catch (e) {
				continue;
			}
		}
	return null;
}

function loadextra(filename){
	if(filename.split('.')[1]=='js'){
		var ref=document.createElement('script');
		fileref.setAttribute("type","text/javascript");
		fileref.setAttribute("src", filename);
	} else {
		var ref=document.createElement("link");
		fileref.setAttribute("rel", "stylesheet");
		fileref.setAttribute("type", "text/css");
		fileref.setAttribute("href", filename);
	}
	extref.push(ref);
	document.getElementsByTagName("head")[0].appendChild(ref);
}

function unloadextra(){
	while(extref.length>0){
		head = document.getElementsByTagName("head")[0];
		head.removeChild(extref.pop());
	}
}

function xmlParser(){
	if (xhreq.readyState == 4 && xhreq.status == 200){
		/*unloadextra();
		xmlDoc = xhreq.responseXML;
		
		
		var xmlBlk=xmlDoc.documentElement.getElementsByTagName('header')[0];
		
		var links = xmlBlk.getElementsByTagName('links');
		var script = xmlBlk.getElementsByTagName('script');
		var meta = xmlBlk.getElementsByTagName('meta');
		for (var i=0;i<extras.length;i++)
			extras[i].getAttribute("link");
		document.getElementById(id).innerHTML=xhreq.responseText;
		if (location.hash!=undefined){
			current_hash=location.hash='#'+data;
		}*/
		var id=xhreq.getResponseHeader('Content-Id');
		document.getElementById(id).innerHTML=xhreq.responseText;
	}
}

function getxmlblk(id, data){
	if (xhreq){
		if (xhreq.readyState==4 || xhreq.readyState==0){
			xhreq.open('POST', 'getdata.php', true);
			xhreq.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=ISO-8859-1;');
			xhreq.onreadystatechange = xmlParser;
			xhreq.send('id='+id+'&'+data);
		}
		else
			setTimeout('getxmlblk(\''+id+'\', \''+data+'\')', 500);
	}
	return false;
}

function hideall(obj, tag){
	var nodes = obj.getElementsByTagName(tag);
	for (var i=0; i<nodes.length; i++)
		nodes[i].style.display = 'none';
	return true;
}

function hidethis(obj, offset){
	if (typeof(obj)=='string')
		obj=document.getElementById(obj);
	if (offset==null) offset=0;
	for (var i=1; i<=offset || obj.nodeType!=1; i++)
		obj = obj.nextSibling;
	if (obj.style){
		if (obj.style.display!='none')
			obj.style.display='none';
		else
			obj.style.display='block';
	}
}
