/*
	DOMnews 1.0 
	homepage: http://www.onlinetools.org/tools/domnews/
	released 11.07.05
*/

/* Variables, go nuts changing those! */
	// initial position 
	var dn_startpos=120; 			
	// end position
	var dn_endpos=-300; 			
	// Speed of scroller higher number = slower scroller 
	var dn_speed=50;
	// Direction of scrolling -1:DOWN, 0: STOP, 1: Default, 2: Fast up
	var dn_scrolling=1;
	// ID of the news box
	var dn_newsID='TICKER';			
	var dn_newsIDup='TICKER_UP';			
	var dn_newsIDdown='TICKER_DOWN';			
	// class to add when JS is available
	var dn_classAdd='hasJS';		
	// Message to stop scroller
	var dn_stopMessage='Stop scroller';	
	// ID of the generated paragraph
	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
		dn_startpos= Math.max(300,document.getElementById("TICKER").clientHeight);
		dn_endpos= 0-Math.max(300,document.getElementById("TICKER").getElementsByTagName("div")[0].clientHeight);
		dn_scrollpos=dn_startpos;
	}
	/* stop scroller when window is closed */
	window.onunload=function()
	{
		clearInterval(dn_interval);
	}

/*
	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;
	/* Initialise scroller */
	function initDOMnews()
	{
		var n=document.getElementById(dn_newsID);
		if(!n){return;}
		n.className=dn_classAdd;
		dn_interval=setInterval('scrollDOMnews()',dn_speed);
		//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()
		{
			dn_scrolling = 0;
			//clearInterval(dn_interval);
		}
		n.onmouseout=function()
		{
			dn_scrolling = 1;
			//dn_interval=setInterval('scrollDOMnews()',dn_speed);
		}
		var u=document.getElementById(dn_newsIDup);
		u.className=dn_classAdd;
		u.onmouseover=function()
		{
			dn_scrolling = 2;
			//dn_interval=setInterval('scrollDOMnews()',dn_speed*2);
		}
		u.onmouseout=function()
		{
			dn_scrolling = 1;
			//dn_interval=setInterval('scrollDOMnews()',dn_speed);
		}
		var d=document.getElementById(dn_newsIDdown);
		d.className=dn_classAdd;
		d.onmouseover=function()
		{
			dn_scrolling = -1;
			//dn_interval=setInterval('scrollDOMnews()',0-dn_speed*2);
		}
		d.onmouseout=function()
		{
			dn_scrolling = 1;
			//dn_interval=setInterval('scrollDOMnews()',dn_speed);
		}
	}

	function stopDOMnews()
	{
		clearInterval(dn_interval);
		var n=document.getElementById(dn_newsID);
		n.className='';
		n.parentNode.removeChild(n.nextSibling);
		return false;
	}
	function scrollDOMnews()
	{
		if( dn_scrolling == 0) { return;}
		var n=document.getElementById(dn_newsID).getElementsByTagName('div')[0];
		n.style.top=dn_scrollpos+'px';
		if(dn_scrollpos <= dn_endpos){dn_scrollpos=dn_startpos;}
		if(dn_scrollpos > dn_startpos){dn_scrollpos=dn_endpos;}
		if( dn_scrolling == 1)
			dn_scrollpos--;	
		if( dn_scrolling == 2)
			dn_scrollpos -= 4;	
		if( dn_scrolling == -1)
			dn_scrollpos += 4;	
	}

