// JavaScript Document

function typerOO(TyperContainerId){
	
	var ObjTyper = O('typer'); // referencia o objeto div q vai receber as letras
	
	var textContainer = O(TyperContainerId); // referencia o div q contem os textos subdivididos em <div></div><div></div><div></div>
	
	var textContainerChilds = textContainer.childNodes; // referencia os nós filhos do container
	
	var qtd_frases = textContainerChilds.length-1; // descobre a quantidade de nós
	
	var typeRtime = 9*1000; // define o tempo para cada frase em 9 segundos 
	
	var frase_pos =0; // define q a primeira frase a deve ser exibida
	
	var typerInterval; // inicia variavel intervalo para troca de frases
	
	
	// define função para para a digitação
	this.pause = function (){
		clearInterval(typerInterval);
	}
	
	// função q inicia "digitacao" das frases dos nós
	this.start = function () {		
		
		// faz a digitação da 1ª frase do nó na posicao frase_poss
		doType( ObjTyper, textContainerChilds.item(frase_pos++) );
		
	
		// define intervalo entre a digitacao de cada frase
		typerInterval = setInterval (
			function () {
				doType( ObjTyper, textContainerChilds.item(frase_pos++) );
				
				// verifica se é a ultima frase entao retorna a primeira
				if(frase_pos > qtd_frases){
					frase_pos = 0;
				}
				
			},						 
		typeRtime);	
	}
	
	
	// define função que "digita" o conteudo da frase	
	doType = function (ObjTyper,TextObj){
		
		ObjTyper.onclick = TextObj.onclick; // pega o link da noticia
		
		ObjTyper.innerHTML = ''; // esvazia o conteudo do local q vai receber a nova frase
		frase = TextObj.innerHTML; // adiciona "..." no fim de todas as frase
		qtd_letras = frase.length-1; // mede o tamanho da frase
		letrapos = 0; // define a posisão inicial da letra ser inserida
		// define o tempo de intervale entre cada letra "digitada"
		timer = (1000/50); 
		
		// inicia o intervalo da digitacao
		var typeInterval = setInterval (
										
			function () {
				// verifica se chegou ao fim da frase entao encerra digitação da mesma
				if( letrapos <= qtd_letras ) {
					// faz a digitação, adiciona a proxima letra a frase				
					ObjTyper.innerHTML = ObjTyper.innerHTML.replace(/_/g,'') + frase[letrapos++]+'_';
				} else {				
					clearInterval(typeInterval);				
					ObjTyper.innerHTML = ObjTyper.innerHTML.replace(/_/g,'');										
				}
			}
		, timer);		
	}
}
