
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,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];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MostraPQComprar()
{
	window.open('pqComprarnoMakro.asp','email','toolbar=no,scrollbars=no,resizable=no,location=no,directories=no,status=no,menubar=no,width=550,height=400');
	document.dados.submit ()
}

function AbreWindow(pagina){
	window.open(pagina, 'makro', 'scrollbars=yes,status=yes,menubar=yes,width=780,height=450, scrollbars=yes, resizable=yes')
}

function AbreWindowTrabalhe(){
	window.open('http://vagas.com.br/makro', 'makro', 'scrollbars=yes,status=yes,menubar=yes,width=780,height=450, scrollbars=yes,toolbar=yes, resizable=yes')
}

function AbreWindowB2b(){
	window.open('https://www.makrob2b.com/makro_br/', 'makro', 'scrollbars=yes,status=yes,menubar=yes,width=780,height=450,toolbar=yes, scrollbars=yes, resizable=yes')
}

/************************************************
* function isEmpty
* Verifica se um campo está vazio
* Input: s - campo a ser verificado
************************************************/               
function isEmpty(s) {
	return ((s == null) || (s.length == 0));
}

/*******************************************************************
* function Trim
* Elimina espaços em branco do conteúdo do parâmetro s
* Input: s - campo a ser verificado
********************************************************************/
function Trim(s) {
	var sFinal = "";
	
	for (x=0;x<s.length;x++) {
		if (s.charAt(x) != " ") 
			sFinal = sFinal + s.charAt(x);
	}
	
	return sFinal;
}
	
/*******************************************************************************
* function warnInvalid
* Gera um alert para o usuário e volta o foco para o campo que está com problema
* Input: theField - campo do formulário com problema
*        warnText - texto a ser mostrado no alert
*        temSelect - indica se deve aplicar select()
********************************************************************************/
function warnInvalid (theField, warnText, temSelect) {   
	theField.focus();
    if (temSelect) {
		theField.select();
	}
    alert(warnText);
    return false;
}

/************************************************	
* function isDigit
* Verifica se o caracter é um dígito de 0 a 9
* Input: c - dígito a ser verificado
************************************************/
function isDigit (c) { 
	return ((c >= "0") && (c <= "9")) 
}
	
/*******************************************************************
* function isNumeric
* Verifica se um campo é numérico. Se contém apenas dígitos de 0 a 9
* Input: s - campo a ser verificado
********************************************************************/
function isNumeric(s) {
	var i;
	if (isEmpty(s)) 
		return false;
		
	for (i = 0; i < s.length; i++) {   
		var c = s.charAt(i);
		if (!isDigit(c)) return false;
	}
	
	return true;
}

/*******************************************************************
* function converteMoney
* Verifica se um campo é valor monetário e se for, formata 
* devidamente; caso contrário retorna string vazia
* Input: s - campo a ser verificado
********************************************************************/
function converteMoney(s) {
	var sSemPontos;
	var sConvertido;
	var sRetorno = "";
	
	sSemPontos = Trim(s.replace(".", ""));
	
	// Verifica se é formado apenas por números, retirando "," e "." que possam existir
	if (!isNumeric(sSemPontos.replace(",", ""))) {
		return sRetorno;
	} else {
		// Verifica se o número é coerente
		sConvertido = sSemPontos.replace(",", ".");  // substitui "," por "."
		
		if (sConvertido > parseFloat(sConvertido) || sConvertido < parseFloat(sConvertido)) {
			return sRetorno;
		} else {
			if (s.indexOf(".") >= 0) {alert("Os pontos do valor " + s + " serão ignorados.");}
		}
	}
	
	sRetorno = sSemPontos;
	return sRetorno;
}

/************************************************
* function verificaTexto
* Verifica se um texto é válido
* Input: texto a ser verificado
************************************************/
function verificaTexto(texto) {
    var s = new String(texto);
    // { } ( ) < > [ ] | \ /
    if ((s.indexOf("{")>=0) || (s.indexOf("}")>=0) || (s.indexOf("(")>=0) || (s.indexOf(")")>=0) || (s.indexOf("<")>=0) || (s.indexOf(">")>=0) || (s.indexOf("[")>=0) || (s.indexOf("]")>=0) || (s.indexOf("|")>=0) || (s.indexOf("\"")>=0) || (s.indexOf("/")>=0) )
            return false;
    // * $ % ? ! ^ ~ ` @ "
    if ((s.indexOf("*")>=0) || (s.indexOf("$")>=0) || (s.indexOf("%")>=0) || (s.indexOf("?")>=0) || (s.indexOf("!")>=0) || (s.indexOf("^")>=0) || (s.indexOf("~")>=0) || (s.indexOf("`")>=0) || (s.indexOf("@")>=0) || (s.indexOf('"')>=0) )
            return false;
    // , ; : = #
    if ((s.indexOf(",")>=0) || (s.indexOf(";")>=0) || (s.indexOf(":")>=0) || (s.indexOf("=")>=0) || (s.indexOf("#")>=0) )
            return false;
    return true;
}

/************************************************
* function vogalAcentuada
* Verifica se uma string tem vogais acentuadas
* Input: string a ser verificada
************************************************/
function vogalAcentuada(s) {
	ls = s.toLowerCase();
	if ((ls.indexOf("á")>=0) || (ls.indexOf("à")>=0) || (ls.indexOf("ã")>=0) || (ls.indexOf("â")>=0) || (ls.indexOf("é")>=0) || (ls.indexOf("í")>=0) || (ls.indexOf("ó")>=0) || (ls.indexOf("õ")>=0) || (ls.indexOf("ô")>=0) || (ls.indexOf("ú")>=0) || (ls.indexOf("ü")>=0))
		return true;
}

/************************************************
* function verificaEmail
* Verifica se um email é válido
* Input: email a ser verificado
************************************************/
function verificaEmail(email) {
   var s = new String(email);

	// { } ( ) < > [ ] | \ /
    if ((s.indexOf("{")>=0) || (s.indexOf("}")>=0) || (s.indexOf("(")>=0) || (s.indexOf(")")>=0) || (s.indexOf("<")>=0) || (s.indexOf(">")>=0) || (s.indexOf("[")>=0) || (s.indexOf("]")>=0) || (s.indexOf("|")>=0) || (s.indexOf("\"")>=0) || (s.indexOf("/")>=0) )
    	return false;

	// Verifica se existe alguma vogal acentuada
	ls = s.toLowerCase();
	if ((ls.indexOf("á")>=0) || (ls.indexOf("à")>=0) || (ls.indexOf("ã")>=0) || (ls.indexOf("â")>=0) || (ls.indexOf("é")>=0) || (ls.indexOf("í")>=0) || (ls.indexOf("ó")>=0) || (ls.indexOf("õ")>=0) || (ls.indexOf("ô")>=0) || (ls.indexOf("ú")>=0) || (ls.indexOf("ü")>=0))
		return false;
		
	// & * $ % ? ! ^ ~ ` ' " espaço em branco
	if ((s.indexOf("&")>=0) || (s.indexOf("*")>=0) || (s.indexOf("$")>=0) || (s.indexOf("%")>=0) || (s.indexOf("?")>=0) || (s.indexOf("!")>=0) || (s.indexOf("^")>=0) || (s.indexOf("~")>=0) || (s.indexOf("`")>=0) || (s.indexOf("'")>=0) || (s.indexOf(" ")>=0) )
		return false;
        
	// , ; : = #
	if ((s.indexOf(",")>=0) || (s.indexOf(";")>=0) || (s.indexOf(":")>=0) || (s.indexOf("=")>=0) || (s.indexOf("#")>=0) )
		return false;
        
	// procura se existe apenas um @
	if ( (s.indexOf("@") < 0) || (s.indexOf("@") != s.lastIndexOf("@")) )
		return false;
        
	// verifica se tem pelo menos um ponto após o @
	if (s.lastIndexOf(".") < s.indexOf("@"))
		return false;
    
	// verifica se não tem "@" seguido de "."
	if (s.indexOf("@.") >= 0)
		return false;
        
	return true;
}

/*******************************************************************
* function anobissexto
* Verifica se o ano eh bissexto
* Input: iano - ano
********************************************************************/
function anobissexto(iano) {
	if (parseInt(iano, 10) % 4 == 0) {
		return true;
	} else
		return false;	
}

/*******************************************************************
* function ver_data
* Verifica se uma data eh valida
* Input: idia - dia, imes - mes, iano - ano
********************************************************************/
function ver_data(idia, imes, iano) {
	// verifica se a data eh invalida
	if (parseInt(idia, 10) < 1 || parseInt(idia, 10) > 31) {
		return false;
	}
	
	//verifica se o mes eh invalido
	if (parseInt(imes, 10) < 1 || parseInt(imes, 10) > 12) {
		return false;
	}
		
	//verifica se o dia estah de acordo com o mes
	//para os meses de jan a jul, os meses com dia 31 sao os impares
	if (parseInt(idia, 10) == 31 && parseInt(imes, 10) < 8 && (parseInt(imes, 10) % 2) == 0) {
		return false;
	}
	
	//para os meses de ago a dez, os meses com dia 31 sao os pares
	if (parseInt(idia, 10) == 31 && parseInt(imes, 10) > 7 && (parseInt(imes, 10) % 2) != 0) {
		return false;
	}
	
	//o mes de fevereiro so permite dia 29 se for um ano bissexto
	if ((parseInt(idia, 10) >= 29 && parseInt(imes, 10) == 2 && !(anobissexto(parseInt(iano, 10)))) || 
	(parseInt(idia, 10) >= 30 && parseInt(imes, 10) == 2 && anobissexto(parseInt(iano, 10)))) {
		return false;
	}
		
	//o ultimo dia do mes de fevereiro eh dia 28 para os anos comuns
	if (parseInt(idia, 10) > 28 && parseInt(imes, 10) == 2 && !(anobissexto(parseInt(iano, 10)))) {
		return false;
	}
		
	return true; 
}

/************************************************
* function busca
* Verifica se o campo de busca tem mais de 3 caracteres
* Input: texto a ser verificado
************************************************/
function busca(sValue) {
	if (sValue.length < 14) {
		alert("Você precisa digitar mais de 3 caracteres no campo de busca");
		return false;
	} else {
		if (!verificaTexto(sValue)) {
			return false;
		} else {
			//document.frm_busca.submit();			
			return true;
		}
	}
}

/************************************************
* function validaPassaporte
* Verifica se o valor do passaporte é válido
* Input: texto a ser verificado
************************************************/
function validaPassaporte(iValue, aiLojas, aiEstabelecimentos) {
	if (iValue.length != 13) {
		return 1 //O passaporte precisa ter 13 caracteres numéricos
	} else {
		iSetimaPosicao = iValue.substr(0,7)
		iNonaPosicao = iValue.substr(7,2)
		iDecimaSegundaPosicao = iValue.substr(9,3)
		iDecimaTerceiraPosicao = iValue.substr(12,1)
	
		//Verifica se as primeiras 7 posicoes é menor que 13.
		if (iSetimaPosicao == 0) {
			return 2
		}
		//Verifica se as primeiras 7 posicoes é multipla de 13.
		iResto = (iSetimaPosicao / 13)
		if ((parseInt(iResto) * 13) != iSetimaPosicao) {
			return 2
		}
		//Verifica se a loja informada existe no banco de dados
		for (i = 0; i < aiLojas.length; i++) {
			if (parseInt(iNonaPosicao, 10) == parseInt(aiLojas[i], 10)) {
				iLoja = 1
				break;
			} else {
				iLoja = 0
			}
		}
		if (iLoja == 0) {
			return 2
		}
		//Verifica se o estabelecimento informado existe no banco de dados
		/*for (i = 0; i < aiEstabelecimentos.length; i++) {
			if (parseInt(iDecimaSegundaPosicao, 10) == parseInt(aiEstabelecimentos[i], 10)) {
				iEstabelecimentos = 1
				break;
			} else {
				iEstabelecimentos = 0
			}
		}*/
		
		if (parseInt(iDecimaSegundaPosicao, 10) >= 1 && parseInt(iDecimaSegundaPosicao, 10) <= 200) {
				iEstabelecimentos = 1
			} else {
				iEstabelecimentos = 0
			}
		
		if (iEstabelecimentos == 0) {
			return 2
		}

		//Verifica se a 13ª esta entre 0 e 3
		if (iDecimaTerceiraPosicao < 0 || iDecimaTerceiraPosicao > 3) {
			return 2
		}
	}
	
	return 0
}

function verificaPartes(stexto)
	{
		parte1 = 0;
		parte2 = 0;
		sretorno = "";
		stamanho = stexto.length;
		
		for (i=0;i<stexto.length;i++)
		{
			if ((stexto.substr(i,1) == " "))
			{
				stamanho = stamanho - i;
				snovo_texto = (stexto.substr(i,stamanho));
				
				if ((snovo_texto != " ") && (snovo_texto != false))
				{
					sretorno = true;
					break;
				}
				sretorno = false;
				break;
			}
			else
			{
				sretorno = sretorno + stexto.substr(i,1);
				sretorno = false;
			}
		}
		return sretorno;
	}