








/***************************************************************\
*  INICIO - FUNÇÕES DE DATA                                     *
\***************************************************************/
function Hoje(){
	var objData = new Date();
	var dia = new String(objData.getDate());
	var mes = new String(objData.getMonth() +1);
	var ano = new String(objData.getFullYear());
	if(parseInt(dia.length) == 1){
		dia = "0" + dia;
	}
	if(parseInt(mes.length) == 1){

		mes = "0" + mes;
	}
	return dia + "/" + mes + "/" + ano;
}
function comparaData(data1, data2){
	//------------------------------
	// Uso: comparaData("10/01/2002", "10/03/2002");
	// data1 e data2 no formato "dd/mm/aaaa"
	// se retornar 1 "data1" é maior
	// se retornar 2 "data2" é maior
	// se retornar 0 "data1" é igual a "data2"
	//------------------------------
	var dataDiff = transformaData(data2) - transformaData(data1);
	var maiorData;
	if(dataDiff > 0){dataSaida = 2;}
	else if(dataDiff < 0){dataSaida = 1;}
	else {dataSaida == 0;}

	return dataSaida;
}
function transformaData(data){// data no formato dd/mm/aaaa
	var data = trim(data);
	argDia = parseInt(data.substring(0,2), 10);
	argMes = parseInt(data.substring(3,5), 10) - 1;
	argAno = parseInt(data.substring(6,10),10);
	data = new Date(argAno, argMes, argDia);
	return data;
}

function isDate(data){
	var data = trim(data);
	if(data != ""){
		dia = parseInt(data.substring(0,2), 10);
		mes = parseInt(data.substring(3,5), 10);
		ano = parseInt(data.substring(6,10),10);
		//Verifica se o tamanho da string é 10 
		if(data.length < 10 || (mes < 1 || mes > 12) || (dia > 31 || dia < 1)) 
			return false;
		var quantDias;
		if(mes==4 || mes==6 || mes==9 || mes==11)//mes com 30 dias
			quantDias = 30;
		else if(mes==1 || mes==3 || mes==5 || mes==7 || mes==8 || mes==10 || mes==12)//mes com 31	
			quantDias = 31;
		else if(mes==2){ //mes com 28
			if((ano % 4 == 0) && (ano % 100 != 0 || ano % 400 ==0)) quantDias = 29; //verifica se é bissexto
			else quantDias = 28;
		}
		if(dia > quantDias || dia < 1) return false;
	}
	return true;
}
/***************************************************************\
*  FINAL - FUNÇÕES DE DATA                                      *
\***************************************************************/
/***************************************************************\
*  INICIO - FUNÇÕES DE FORMATACAO                              *
\***************************************************************/
function trim(valorTrim){
	var len = valorTrim.length;
	for(var x=0; x<len; x++) if(valorTrim.charCodeAt(x)!=32 && valorTrim.charCodeAt(x)!=10 && valorTrim.charCodeAt(x)!=13) break;
	valorTrim = valorTrim.substring(x,len);
	len = valorTrim.length;
	for(x=len-1; x>1; x--) if(valorTrim.charCodeAt(x)!=32 && valorTrim.charCodeAt(x)!=10 && valorTrim.charCodeAt(x)!=13) break;
	valorTrim = valorTrim.substring(0,x+1);
	return valorTrim;
}
function criaMascara(_RefObjeto, _Modelo){
	var valorAtual = _RefObjeto.value;
	var valorNumerico = '';
	var nIndexModelo = 0;
	var nIndexString = 0;
	var valorFinal = '';
	var adicionarValor = true;
	// limpa a string valor atual para verificar
	// se todos os caracteres são números
	for (i=0;i<_Modelo.length;i++){
	  if (_Modelo.substr(i,1) != '#'){
	    valorAtual = valorAtual.replace(_Modelo.substr(i,1),'');
	}}
	// verifica se todos os caracteres são números
	for (i=0;i<valorAtual.length;i++){
	  if (!isNaN(parseFloat(valorAtual.substr(i,1)))){
    	valorNumerico = valorNumerico + valorAtual.substr(i,1);
	}}
	// aplica a máscara ao campo informado usando
	// o modelo de máscara informado no script
	for (i=0;i<_Modelo.length;i++){
	 
	  if (_Modelo.substr(i,1) == '#'){
		if (valorNumerico.substr(nIndexModelo,1) != ''){
		  valorFinal = valorFinal + valorNumerico.substr(nIndexModelo,1);
		  nIndexModelo++;nIndexString++;
		}
		  else {
			adicionarValor = false;
	  }}
	 
		else {
		  if (adicionarValor && valorNumerico.substr(nIndexModelo,1) != ''){
		  valorFinal = valorFinal + _Modelo.substr(nIndexString,1)
		  nIndexString++;
		}}
	}
	_RefObjeto.value = valorFinal
}
function criaMascaraMoeda(fld, milSep, decSep, e,maximo) {
	var sep = 0;
	var key = '';
	var i = j = 0;
	var len = len2 = 0;
	var strCheck = '0123456789';
	var aux = aux2 = '';
	var whichCode = (window.Event) ? e.which : e.keyCode;
	
	if(whichCode == 0) {fld.value = ""; return true;}
	if (whichCode == 13) return true;  // Enter
	key = String.fromCharCode(whichCode);  // Get key value from key code
	if (strCheck.indexOf(key) == -1) return false;  // Not a valid key
	len = fld.value.length;
	if (len <= maximo) { 
		for(i = 0; i < len; i++)
			if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep)) break;
		aux = '';
		for(; i < len; i++)
			if (strCheck.indexOf(fld.value.charAt(i))!=-1) aux += fld.value.charAt(i);
		aux += key;
		len = aux.length;
		if (len == 0) fld.value = '';
		if (len == 1) fld.value = '0'+ decSep + '0' + aux;
		if (len == 2) fld.value = '0'+ decSep + aux;
		if (len > 2) {
			aux2 = '';
			for (j = 0, i = len - 3; i >= 0; i--) {
				if (j == 3) {
					aux2 += '.';
					j = 0;
				}
				aux2 += aux.charAt(i);
				j++;
			}
			fld.value = '';
			len2 = aux2.length;
			for (i = len2 - 1; i >= 0; i--)
				fld.value += aux2.charAt(i);
			fld.value += decSep + aux.substr(len - 2, len);
		}	
		string = fld.value
		for (i=1;i<string.lenght;i++){
			string = string.replace('.','.');
		}
		fld.value = string;
		return false;
	}
	return false;
}
function formatCurrency(num) {
	num = num.toString().replace(/\$|\,/g,'');
	if(isNaN(num))
	num = "0";
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001);
	cents = num%100;
	num = Math.floor(num/100).toString();
	if(cents<10)
	cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
	num = num.substring(0,num.length-(4*i+3))+'.'+
	num.substring(num.length-(4*i+3));
	return (((sign)?'':'-') +  num + ',' + cents);
}

/***************************************************************\
*  FINAL - FUNÇÕES DE FORMATACAO                               *
\***************************************************************/
/***************************************************************\
*  INICIO - FUNÇÕES DE VALIDACAO                              *
\***************************************************************/
function CEP(cep)
{
	c = eval("document." + obj);
	txCep = trim(c.value);

	if(txCep.length == 0)
		return false;

	txCep = txCep.replace("-","");
	txCep = txCep.replace(".","");
	if(txCep.length != 8 || isNaN(txCep))
		return false;
	else
		return true;
}
function CPF(EntraCPF){
	
	VetCPF = new Array(12);
	var TempCPF, DG1, DG2;
	var Tot1, Tot2;
	var I, X;
	TempCPF = EntraCPF;
	TempCPF = TempCPF.replace('.','');
	TempCPF = TempCPF.replace('.','');
	TempCPF = TempCPF.replace('-','');
	
	while (TempCPF.length < 11){
		TempCPF = '0' + TempCPF;
		}
	if (TempCPF == 11111111111 || TempCPF == 22222222222 || TempCPF == 33333333333 || TempCPF == 44444444444 || TempCPF == 55555555555 || TempCPF == 66666666666 || TempCPF == 77777777777 || TempCPF == 88888888888 || TempCPF == 99999999999 || TempCPF == 00000000000){ return false; } 
	for (I=1;I<12;I++){
		VetCPF[I] = TempCPF.substr(I-1,1);
		}
	Tot1 = 0;
	Tot2 = 0;
	X = 1;
	for (I=10;I>=2;I--){ // to 3 step -1
		Tot1 = Tot1 + VetCPF[X] * I;
		X++;
		}
	X = 1;
	for (I=11;I>=2;I--){
		Tot2 = Tot2 + VetCPF[X] * I;
		X++;
		}
	DG1 = Tot1 % 11;
	DG2 = Tot2 % 11;
	if (DG1 == 0 || DG1 == 1){
		DG1 = 0;
		}
	else{
		DG1 = 11 - DG1;
		}
	if (DG2 == 0 || DG2 == 1){
		DG2 = 0;
		}
	else{
		DG2 = 11 - DG2;
		}
	if (parseInt(DG1,10) == parseInt(VetCPF[10],10) && parseInt(DG2,10) == parseInt(VetCPF[11],10) && Tot1 > 0 && Tot2 > 0){
		return true;
		} //ValidaCPF = TRUE
	else{
		return false;
		}//ValidaCPF = FALSE
}
function CNPJ(EntraCNPJ){
	
	VetCNPJ = new Array(16);
	var TempCNPJ, DG1, DG2;
	var Tot1, Tot2;
	var I, X;
	var Peso1 = "543298765432";
	var Peso2 = "6543298765432";

	TempCNPJ = EntraCNPJ;
	TempCNPJ = TempCNPJ.replace('.','');
	TempCNPJ = TempCNPJ.replace('.','');
	TempCNPJ = TempCNPJ.replace('/','');
	TempCNPJ = TempCNPJ.replace('-','');
	
	while (TempCNPJ.length < 14){
		TempCNPJ = '0' + TempCNPJ;
		}
	if (TempCNPJ == 11111111111111 || TempCNPJ == 22222222222222 || TempCNPJ == 33333333333333 || TempCNPJ == 44444444444444 || TempCNPJ == 55555555555555 || TempCNPJ == 66666666666666 || TempCNPJ == 77777777777777 || TempCNPJ == 88888888888888 || TempCNPJ == 99999999999999 || TempCNPJ == 00000000000000){ return false; } 
	for (I=1;I<=14;I++){
		VetCNPJ[I] = TempCNPJ.substr(I-1,1);
		}
	Tot1 = 0;
	Tot2 = 0;

	for (I=1;I<=12;I++){ // to 3 step -1
		Tot1 = Tot1 + VetCNPJ[I] * parseInt(Peso1.substr(I - 1,1),10);
		}
	for (I=1;I<=13;I++){
		Tot2 = Tot2 + VetCNPJ[I] * parseInt(Peso2.substr(I - 1,1),10);
		}
	DG1 = Tot1 % 11;
	DG2 = Tot2 % 11;
	if (DG1 == 0 || DG1 == 1){
		DG1 = 0;
		}
	else{
		DG1 = 11 - DG1;
		}
	if (DG2 == 0 || DG2 == 1){
		DG2 = 0;
		}
	else{
		DG2 = 11 - DG2;
		}
	if (parseInt(DG1,10) == parseInt(VetCNPJ[13],10) && parseInt(DG2,10) == parseInt(VetCNPJ[14],10) && Tot1 > 0 && Tot2 > 0){
		return true;
		} //ValidaCNPJ = TRUE
	else{
		return false;
		}//ValidaCNPJ = FALSE
}
function EMAIL(email) 
{	email = email;
	 if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email)){
		return true;
	 }else{ 
	    return false;
	 }
}

/***************************************************************\
*  FINAL - FUNÇÕES DE VALIDAÇÃO                                 *
\***************************************************************/
/***************************************************************\
*  INICIO - FUNÇÕES DE NAVEGADOR                                *
\***************************************************************/

function addBookmark()
{
	url = 'http://www.surya.com.br'
	title = 'Attytude Papel de Parede e Decoração'
	
/*	//url: Endereço a ser adicionado
	//titulo: Título que aparecerá nos Favoritos
	
	 if (window.external) 
		window.external.AddFavorite(url, titulo)

	if (window.sidebar) 
		window.sidebar.addPanel(titulo, url,"");	
*/

	var ua=navigator.userAgent.toLowerCase();
    var isKonq=(ua.indexOf('konqueror')!=-1);
    var isSafari=(ua.indexOf('webkit')!=-1);
    var isMac=(ua.indexOf('mac')!=-1);
    var buttonStr=isMac?'Command/Cmd':'CTRL';

    if(window.external && (!document.createTextNode ||
      (typeof(window.external.AddFavorite)=='unknown'))) {
        // IE4/Win generates an error when you
        // execute "typeof(window.external.AddFavorite)"
        // In IE7 the page must be from a web server, not directly from a local 
        // file system, otherwise, you will get a permission denied error.
        window.external.AddFavorite(url, title); // IE/Win
    } else if(isKonq) {
      alert('Você precisa precionar CTRL + B para adicionar nosso site em seus favoritos.');    
    } else if(window.opera) {
      void(0); // do nothing here (Opera 7+)
    } else if(window.home || isSafari) { // Firefox, Netscape, Safari, iCab
      alert('Você precisa precionar  '+buttonStr+' + D para adicionar nosso site em seus favoritos.');    
    } else if(!window.print || isMac) { // IE5/Mac and Safari 1.0
      alert('Você precisa precionar Command/Cmd + D para adicionar nosso site em seus favoritos.');    
    } else {
      alert('Para adcionar nosso site em seus favoritos é necessário seguir  pelo modo manual, clique em favoritos e seguida adicionar');
    }


}


var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
/***************************************************************\
*  FINAL - FUNÇÕES DE NAVEGADOR                                 *
\***************************************************************/
function mata_file(arg){
	document.getElementById(arg).innerHTML = document.getElementById(arg).innerHTML
}
