/*
script para exibição de mensagens na barra de status do navegador
*/

function ObjDecrypt(id, data, delay)
{
	this.id = id;
	this.data = data ? data : "|| | ||| |";
	this.delay = delay ? delay : 3000;
	this.done = 1;
	this.msglist = new Array;
	this.msgix = -1;
	this.timer = null;
	this.mensagem = function(m) {
		this.msglist[this.msglist.length] = m;
	}
	this.iniciar = function() {
		if(this.msglist.length > 0) {
			this.msgix++;
			if(this.msgix >= this.msglist.length) this.msgix = 0;
			this.scheduler();
		}
		else
			window.status = 'Nenhuma mensagem definida!';
		return true;
	}
	this.scheduler = function() {
		window.setTimeout(this.id + ".decrypt('" + this.msglist[this.msgix] + "',2,3)", this.delay);
	}
	this.decrypt = function(text, max, delay) {
		if(this.done) {
		    this.done = 0;
    		this.decrypt_helper(text, max, delay, 0, max);
		}
	}
	this.decrypt_helper = function(text, runs_left, delay, charvar, max) {
		if(!this.done) {
			runs_left = runs_left - 1;
			var status = text.substring(0,charvar);
			for(var current_char = charvar; current_char < text.length; current_char++)
				status += this.data.charAt(Math.round(Math.random()*this.data.length));
			window.status = status;
			var rerun = this.id + ".decrypt_helper('" + text + "'," + runs_left + "," + delay + "," + charvar + "," + max + ");"
			var new_char = charvar + 1;
			var next_char = this.id + ".decrypt_helper('" + text + "'," + max + "," + delay + "," + new_char + "," + max + ");"
			if(runs_left > 0)
				window.setTimeout(rerun, delay);
			else {
				if (charvar < text.length)
					window.setTimeout(next_char, Math.round(delay*(charvar+3)/(charvar+1)));
				else {
					this.done = 1;
					this.iniciar();
				}
			}
		}
	}
	return this;
}


function ObjSaudacao()
{
	this.Mostra = function() {
		var data = new Date();
		var hora = data.getHours();
		if(hora >=0 && hora < 12)
			document.write('Bom dia !');
		else if(hora >= 12 && hora < 18)
			document.write('Boa tarde !');
		else
			document.write('Boa noite !');
	}
	return this;
var oSaudacao = new ObjSaudacao;
oSaudacao.Mostra();
}



function ObjDataHora()
{
	var agora = new Date();
	this.dia = agora.getDate();
	this.mes = agora.getMonth();
	this.ano = agora.getFullYear();
	this.hor = agora.getHours();
	this.min = agora.getMinutes();
	this.sem = agora.getDay();
	this.pad = function(s, n) {
		s = '0000' + s;
		return (s.substring(s.length - n, s.length));
	
	}
	this.NomeSem = function() {
		var aDia = new Array( 'Domingo', 'Segunda', 'Ter&ccedil;a', 'Quarta', 'Quinta', 'Sexta', 'S&aacute;bado' );
		return aDia[this.sem];
	}
	this.NomeMes = function() {
		var aMes = new Array( 'Janeiro', 'Fevereiro', 'Mar&ccedil;o', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro' );
		return aMes[this.mes];
	}
	this.MostraData = function() {
		document.write(this.NomeSem() + ', ' + this.dia + ' de ' + this.NomeMes() + ' de ' + this.pad(this.ano, 4));
	}
	this.MostraHorario = function() {
		document.write(this.pad(this.hor, 2) + ':' + this.pad(this.min, 2));
	}
	return this;
var oDataHora = new ObjDataHora;
}



/*
O código deve ser copiado antes da tag </head>
<script language="javascript" src="decrypt.js"></script>


Você deve adicionar as mensagens que serão exibidas na barra de status usando as linhas abaixo:
<script language="javascript">
var oDecrypt = new ObjDecrypt("oDecrypt");
oDecrypt.mensagem("Primeira mensagem a ser exibida na barra de status");
oDecrypt.mensagem("Segunda mensagem a ser exibida na barra de status");
....
oDecrypt.mensagem("Ultima mensagem a ser exibida na barra de status");
oDecrypt.iniciar();
</script>
*/

