﻿// -------------NEWS_TABLE.JS TABLE-------------------

function newsScrollerObj(){
	
	var ME = this
	var newsHold=new Array();
	var NVP
	var s , NV_height , NV_width
	ME.newsCurrent=0	
	var LastBlock
	var CurrentBlock
	var roll_over = 0
	var sustain = this.getAttribute("sustain")
	var speed =  this.getAttribute("speed")
	var effect = this.getAttribute("effect")
	var ob2Remove 
	var imgOpac = 100
	 sustain = sustain ?sustain: 3000
	 speed = speed ? speed * 10 : 10
	 effect = effect ?effect:"scrollUp"
	this.buildNewsHoldArray = function(){
	
		
		NVP = ME.getElementsByTagName("list_item");
		for(n=0;n<NVP.length;n++) {
			newsHold[newsHold.length]=NVP[n].parentNode.innerHTML //extract html and push to newsHold
		}
		this.innerHTML="" // clear main div innerHTML
		st=setTimeout(ME.startNews, 100);
		
	}
	this.startNews = function(){
		NV_height = ME.offsetHeight;
		
		NV_width = ME.offsetWidth;
		//alert(ME.innerHTML.length)
		ME.onmouseover = function() {
			roll_over = 1
		}	
		ME.onmouseout = function() {
			roll_over = 0
		}		
		if(newsHold.length){	
			if(ME.innerHTML.length<5)
				CurrentBlock = ME.buildNewsBlock("&nbsp;&nbsp;&nbsp; ")
				ME.appendChild(CurrentBlock)
				
			if(ME.newsCurrent < newsHold.length){
				LastBlock = CurrentBlock
				LastBlock.style.zIndex=100
				CurrentBlock = ME.buildNewsBlock(newsHold[ME.newsCurrent])
				CurrentBlock.style.zIndex=1
				ME.appendChild( CurrentBlock )
				ME.newsCurrent++
				
				
			}else{
				LastBlock = CurrentBlock
				LastBlock.style.zIndex=100
				CurrentBlock = ME.buildNewsBlock(newsHold[0])
				CurrentBlock.style.zIndex=1
				ME.appendChild( CurrentBlock )
				ME.newsCurrent=0
				
				
			}
			switch(effect){
				case "scrollUp":
					ME.scrollNext()
					
				break;
				case "fade":
					ME.fadeNext()
				break;
			}
		}
		
	}
	
	this.buildNewsBlock = function(p){
		//alert(p)
		var tmp
		tmp=document.createElement("DIV")
		tmp.className="newsBlock"
		tmp.style.height = NV_height+"px";
		tmp.style.width = NV_width+"px";
		tmp.innerHTML=p
		if (effect=="fade"){
			tmp.style.position = "absolute";
			tmp.style.zIndex =1;
			tmp.style.filter = "alpha(opacity=100)"
			
		}
		return tmp
	}
this.scrollNext =function(){
	
	clearTimeout(s)
		ObLast=ME.childNodes[ME.childNodes.length-1]
		
		if(ME.scrollTop < NV_height){
			//document.title = NV_height + "  " + ME.scrollTop
 			if (roll_over == 0){
				ME.scrollTop += 2
			}
			s=setTimeout(ME.scrollNext, speed)
			
			
		}else{
			
			ob2Remove = ME.childNodes[0]
			ME.removeChild(ob2Remove)
			ME.scrollTop= 0
			s=setTimeout(ME.startNews,sustain)
		
	}
}
this.fadeNext =function(){
	clearTimeout(s)
	
	//alert(LastBlock.filters.alpha)
	if(LastBlock.filters){
			imgOpac= imgOpac - 5
			
			LastBlock.filters.alpha.opacity = imgOpac
			if( imgOpac >= 5){
				
				s = setTimeout(ME.fadeNext,30 )
			}else{
				imgOpac = 100
				ob2Remove = ME.childNodes[0]
				ME.removeChild(ob2Remove)
				s=setTimeout(ME.startNews,sustain)
				
			}
	}else if(FFOX || NAV){
			clearTimeout(s)
			if (imgOpac == 100) imgOpac /= 100
			imgOpac=imgOpac-0.05
			LastBlock.style.opacity =imgOpac
			if( imgOpac >= 0.05){
					s = setTimeout(ME.fadeNext,30 )
			}else{
				imgOpac = 1
				ob2Remove = ME.childNodes[0]
				ME.removeChild(ob2Remove)
				s=setTimeout(ME.startNews,sustain)
			
			}
		}
	
	
}
	
	this.buildNewsHoldArray()
	
	
}



