function montaFlash(destino, flavez, width, height, trans, scale){
	var myFlash = 
		'<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="'+width+'" height="'+height+'" id="'+flavez+'" align="middle">'+
		'<param name="allowScriptAccess" value="sameDomain" />'+
		'<param name="movie" value="'+flavez+'.swf?button=1" />'
	;
	if (trans == "yes"){
		myFlash += '<param name="wmode" value="transparent" />';
	}
	if (scale == "yes"){
		myFlash += '<param name="scale" value="noscale" />';
	}
	myFlash +=
		'<param name="quality" value="high" />'+
		'<param name="menu" value="false" />'+
		'<embed src="'+flavez+'.swf?button=1" quality="high" width="'+width+'" height="'+height+'"  align="middle" allowScriptAccess="sameDomain" wmode="transparent" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />'+
		'</object>'
	;
	document.getElementById(destino).innerHTML = myFlash;
}


var largura = screen.availWidth; // Retorna a largura em pixels da resolu��o do cliente
var altura = screen.availHeight; // Retorna a altura em pixels da resolu��o do cliente
var navegador = navigator.appName; // Retorna o nome do navegador do cliente

function carregar() {
    try {
		i = 0;
		//while (document.forms[0].elements[i].type != "text") i++;
		//document.forms[0].elements[i].focus();
        //document.forms[0].elements[0].focus();
    } catch (e) {}
}

function botaoOver(){
    var style = "";
    style += "this.style.backgroundColor='#EEEEEE'";
    style += ", this.style.border='#DDDDDD 1px solid'";
    style += ", this.style.cursor='pointer'";
    return style;
}

function botaoOut(){
    var style = "";
    style += "this.style.backgroundColor=''";
    style += ", this.style.border='#FFFFFF 1px solid'";
    return style;
}

function rand() { // Retorna um numero rand�mico
	now = new Date();
	num = (now.getSeconds())%10;
	num = num+1
	return num;
}

function queryString(valor) { // Retorna o valor de uma vari�vel de uma queryString
	var variavel = Array();
	url = new String(this.location);
	queryIni = url.indexOf("?"); // Pega a posi��o do "?"
	string = url.substring(queryIni+1,url.length); // Pega tudo que tem depois do "?"
	stringCom = string.length // Conta o total de caracteres depois do "?"
	stringSem = string;
	while(stringSem.indexOf("&") != -1) {
		stringSem = stringSem.replace("&",""); // Tira todos os "&"
	}
	stringVar = (stringCom-stringSem.length); // retorna o valor de vari�veis existentes na string
	for (i=0;i<=stringVar;i++) {
		variavelIni = string.indexOf("=");
		ecomercial = string.indexOf("&");
		if (ecomercial == -1) {
			ecomercial = string.length;
		}
		variavelNome = string.substring(0,variavelIni); // retorna o nome da vari�vel
		constante = string.substring(variavelIni+1,ecomercial); // retorna o valor da vari�vel
		variavel[variavelNome] = constante; // Cria o vetor com o nome dessa vari�vel
		string = string.substring(ecomercial+1,string.length); // Gera uma nova string sem a vaeri�vel e a constante acima
	}
	return variavel[valor];
}

function replace(texto, antes, depois) { // Substitui um valor por outro em uma String
	while(texto.indexOf(antes) != -1) {
		texto = texto.replace(antes, depois);
	}
	return texto;
}

function focar() { // Foca o primeiro campo text de uma p�gina
	var i=0;
	var activeElement = typeof document.activeElement.name;
	if (activeElement == "undefined") {
		while(i < 50) {
			try{
				tipo = document.forms[0].elements[i].type;
				visibilidade = document.forms[0].elements[i].style.visibility;
				if (tipo == "text") {
					try{
						document.forms[0].elements[i].focus();
						return false;
					}
					catch(e) {
						i++;
						continue;
					}
				}
				i++;
			}
			catch(e) {
				i = 50;
			}
		}
	}
}

function right(texto, quantidade) { // Retorna uma String com valor zero para as casas em branco de acordo com a quantidade de caracteres passada
	quantidadeAtual = texto.length;
	if (quantidade > quantidadeAtual) {
		quantidadeNova = "";
		for (i=quantidadeAtual;i<quantidade;i++) {
			quantidadeNova += "0";
		}
		quantidadeAtual = quantidadeNova+texto;
	}
	return quantidadeAtual;
}

// -------------------------------------------------------------------------------------------------------- //

function setImage(id, url) { // Seta a imagem no ID especificado
	var html = "<img src='"+url+"' border='0' height='75' id='imageID'>";
	document.getElementById(id).innerHTML = html;
}

function isArray(testObject) {   
	return testObject && !(testObject.propertyIsEnumerable('length')) && typeof testObject === 'object' && typeof testObject.length === 'number';
}

/*
*Fun��o que limita a quantidade de caracteres de um textarea.
*Forma de utilizar: onkeyup="textAreaLimit(this, 40, 'Limite atingido.'); 
*/

function textAreaLimit(field, maxlen) {
    if (field.value.length > maxlen) {
        field.value = field.value.substring(0, maxlen);
    }
}

function textAreaLimit2(txarea, tam) {
	total = tam;
	str = txarea.value;
	tam = txarea.value.length;

	search = str.match(/\n/g);

	if (search != null) { 
		if (!isArray(search)) {
			txarea.value = str.substr(0, total - 1);
		} else {
			txarea.value = str.substr(0, total - search.length);
		}
	} else {
		txarea.value = str.substr(0, total);
	}
}

/*
* Retorna a diferen�a de duas datas em dias.
*/
function diferencaDias(dataInicio, dataFim) {
    // Define a quantidade de dias existentes por mes
    var qntDiaMes = Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

    // Transforma as strings de datas recebidas em vetor
    var dtInicioVetor = dataInicio.split("/");
    var dtFimVetor = dataFim.split("/");

    // Identifica o dia informado em cada data
    var diaInicio = parseFloat(dtInicioVetor[0]);
    var diaFim = parseFloat(dtFimVetor[0]);

    // Inicializa as variaveis de defini��o do mes
    var mesInicio = -1;
    var mesFim = -1;

    // Identifica o ano em cada data
    var anoInicio = parseFloat(dtInicioVetor[2]);
    var anoFim = parseFloat(dtFimVetor[2]);


    // Transforma o mes informado em posi��o do vetor de dias do mes
    if (parseFloat(dtInicioVetor[1]) > 0) {
        mesInicio = parseFloat(dtInicioVetor[1]) - 1;
    }

    if (parseFloat(dtFimVetor[1]) > 0) {
        mesFim = parseFloat(dtFimVetor[1]) - 1;
    }

    // Calcula o ano para verificar se o ano � ou n�o bisexto
    var anoBisexto = 0;
    var anoBisextoValor = anoFim / 4;
    var anoBisextoString = new String(anoBisextoValor);
    if (anoBisextoString.indexOf(".") == -1) {
        anoBisexto = 1;
    }
    
    if ((anoFim - anoInicio) < 50) {
        // Percorre os meses de diferen�a entre as datas informadas para identificar a quantidade de dias entre eles
        var diaMes = 0; // Inicializa a variavel de dia do mes
        var totalDias = 0; // Inicializa o total de dias existentes no periodo
        if (mesInicio >= 0) {
            var qntDias = 0; // Variavel para armazenar a quantidade de dias totais dos meses percorridos

            if (anoInicio != anoFim) { // Calcula a quantidade de meses que o la�o deve percorrer
                qntMes = mesFim + (12 - mesInicio);
            }
            else {
                qntMes = mesFim - mesInicio;
            }

            if (qntMes < 0) { // Torna a quantidade de meses positiva
                qntMes = qntMes * -1;
            }

            if (anoInicio == anoFim && mesInicio > mesFim) {
                mesCont = mesInicio;
            }
            else {
                mesCont = mesFim;
            }
            for (i = 0; i <= qntMes; i++) { // Percorre a quantidade de meses no periodo
                if (mesCont < 0) {
                    mCont = 12 + mesCont;
                }
                else {
                    mCont = mesCont;
                }
                diaMes = qntDiaMes[mCont]; // Busca no vetor a quantidade de dias no mes

                if (mCont == 1 && anoBisexto == 1) {
                    diaMes++; // Adiciona um dia para o mes de fevereiro onde o ano � bisexto
                }

                //alert("mes: " + mCont + "\r\ndias: " + diaMes);

                qntDias += diaMes; // Incrementa a quantidade de dias percorridos

                mesCont--; // Diminui o mes
            }
        } else {
            qntDias = -1;
        }

//      alert("qntDias: " + qntDias + "\r\ndiaMes: " + diaMes + "\r\ndiaFim: " + diaFim + "\r\ndiaInicio: " + diaInicio);

        if (mesInicio == mesFim && anoInicio == anoFim) { // Valida total de dias no mesmo mes
            totalDias = diaFim - diaInicio;
        }
        else if (mesInicio > mesFim && anoInicio == anoFim) { // Valida total de dias para o mes inicio maior que o mes final no mesmo ano
            totalDias = (qntDias - diaMes) - diaFim;
        }
        else { // Valida total de dias em meses diferentes
            diasMesAtual = qntDiaMes[mesFim]; // Dias que faltam para o fim do mes atual
            if (mesFim == 1 && anoBisexto == 1) {
                diasMesAtual++; // Adiciona um dia para o mes de fevereiro onde o ano � bisexto
            }
            diferencaDiasMesFim = diasMesAtual - diaFim;
            if (diferencaDiasMesFim > 0) {
                qntDias = qntDias - diferencaDiasMesFim;
            }
            totalDias = qntDias - diaInicio;
        }
//      alert("diaInicio: " + diaInicio + "\r\nmesInicio: " + mesInicio + "\r\nanoInicio: " + anoInicio + "\r\ndiaFim: " + diaFim + "\r\nmesFim: " + mesFim + "\r\nanoFim: " + anoFim);
        if ((anoInicio < anoFim) || (mesInicio == mesFim && anoInicio == anoFim && diaInicio < diaFim) || (mesInicio < mesFim && anoInicio == anoFim)) { // Coloca negativo quando o mes inicial for maior que o mes final
//          totalDias = totalDias * -1;
        }
        
        if ((anoFim - anoInicio) > 2) {
            totalDias = totalDias + (365*(anoFim - anoInicio));
        }
    }
    else {
        totalDias = 365;
    }

    return totalDias;
}

/**
 * Fun��o para pre-carregar as imagens.
 */
function MM_preloadImages() { //v3.0
  var d = document; 
  if(d.images){ 
    if(!d.MM_p){
        d.MM_p = new Array();
    }
    var i;
    var j = d.MM_p.length;
    var a = MM_preloadImages.arguments; 
    
    for(i = 0; i < a.length; i++){
        if (a[i].indexOf("#")!=0){ 
            d.MM_p[j] = new Image(); 
            d.MM_p[j++].src = a[i];
        }
    }
  }
}
