/*
	DOMnews 1.0 
	homepage: http://www.onlinetools.org/tools/domnews/
	released 11.07.05
*/

/* Variabili che è possibile cambiare */
	// posizione iniziale 
	var dn_startpos=185; 			
	// posizione finale
	var dn_endpos=0; 			
	// Velocità dello scroller: un numero più alto indica una velocità inferiore 
	var dn_speed=40;		 		
	// ID da assegnare al box delle news nel codice HTML
	var dn_newsID='news';			
	// classe che lo script aggiunge quando Javascript è dsisponibile
	var dn_classAdd='hasJS';		
	// Messaggio del  link che stoppa lo scroller
	var dn_stopMessage='Ferma lo scroller';	
	// ID del paragrafo generato
	var dn_paraID='DOMnewsstopper';

	/* Initialise scroller when window loads */
	window.onload=function() 
	{
		// check for DOM
		if(!document.getElementById || !document.createTextNode){return;}
		initDOMnews();
		// add more functions as needed
	}
	/* stop scroller when window is closed */
	window.onunload=function()
	{
		clearInterval(dn_interval);
	}
	window.onresize=function() 
	{
		//alert("resize")
		// check for DOM
		if(!document.getElementById || !document.createTextNode){return;}
		initDOMnews();
		// add more functions as needed
	}
/*
	This is the functional bit, do not press any buttons or flick any switches
	without knowing what you are doing!
*/

	var dn_scrollpos=dn_startpos; 
	dn_interval=setInterval('scrollDOMnews()',dn_speed);
	/* Initialise scroller */
	function initDOMnews()
	{
		var n=document.getElementById(dn_newsID);
		var n2=document.getElementById('news2')
		
		if(!n){return;}
		n.className=dn_classAdd;
		
		//gestisce lo scroll e il restart in base all'altezza del contenuto.
		//se l'altezza del contenuto è più piccola dell'area di scroll non lo faccio nemmeno scrollare
		dn_endpos=-n2.scrollHeight;
		if(n2.scrollHeight<dn_startpos+5)//ossia non fa eseguire alcuno scroll
		{
			clearInterval(dn_interval);
			return;
		}
		//------------------------
		
		
		var newa=document.createElement('a');
		var newp=document.createElement('p');
		newp.setAttribute('id',dn_paraID);
		//newa.href='#';
		//newa.appendChild(document.createTextNode(dn_stopMessage));
		//newa.onclick=stopDOMnews;
		//newp.appendChild(newa);
		n.parentNode.insertBefore(newp,n.nextSibling);
		n.onmouseover=function()
		{		
			clearInterval(dn_interval);
		}
		n.onmouseout=function()
		{
			dn_interval=setInterval('scrollDOMnews()',dn_speed);
		}
	}

	function stopDOMnews()
	{
		clearInterval(dn_interval);
		var n=document.getElementById('news');
		n.className='';
		n.parentNode.removeChild(n.nextSibling);
		return false;
	}
	function scrollDOMnews()
	{
		//var n=document.getElementById(dn_newsID).getElementsByTagName('ul')[0];
		var n = document.getElementById('news2')
		if(!n){return;}
		n.style.top=dn_scrollpos+'px';		
		if(dn_scrollpos==dn_endpos){dn_scrollpos=dn_startpos;}
		dn_scrollpos--;	
	}