function mostra_foto(foto,wdh,hgt,legenda){
  posL = screen.availWidth/2 - wdh/2;
  posT = screen.availHeight/2 - hgt/2;
  str = 'width='+wdh+', height='+hgt+', left='+posL+', top='+posT+', scrollbars=no';
  window.open('mostra_foto.asp?foto='+foto+'&legenda='+legenda, 'foto', str);
}

  //limpa os campos
  
  function (c){
    while((cx=c.indexOf("-"))!=-1){		
      c = c.substring(0,cx)+c.substring(cx+1);
    }
    while((cx=c.indexOf("/"))!=-1){		
      c = c.substring(0,cx)+c.substring(cx+1);
    }
    while((cx=c.indexOf(","))!=-1){		
      c = c.substring(0,cx)+c.substring(cx+1);
    }
    while((cx=c.indexOf("."))!=-1){		
      c = c.substring(0,cx)+c.substring(cx+1);
    }
    while((cx=c.indexOf("("))!=-1){		
      c = c.substring(0,cx)+c.substring(cx+1);
    }
    while((cx=c.indexOf(")"))!=-1){		
      c = c.substring(0,cx)+c.substring(cx+1);
    }
    while((cx=c.indexOf(" "))!=-1){		
      c = c.substring(0,cx)+c.substring(cx+1);
    }
    return(c);
  }


  //valida CNPJ
  function validaCNPJ(StrCGC){
    
    var varFirstChr = StrCGC.charAt(0);
    var vlMult,vlControle,s1, s2 = "";
    var i,j,vlDgito,vlSoma = 0;
    
    for ( var i=0; i<=13; i++ ){
      var c = StrCGC.charAt(i);
      if(!(c>="0") && (c<="9")){
        return false;
      }
      if(c!=varFirstChr){
        vaCharCGC = true;
      }
    }
    
    if(!vaCharCGC){
      return false;
    }
    
    s1 = StrCGC.substring(0,12);
    s2 = StrCGC.substring(12,15);
    vlMult = "543298765432";
    vlControle = "";
     
    for (j=1; j<3; j++){
      vlSoma = 0;
      for (i=0; i<12; i++){
        vlSoma += eval( s1.charAt(i) )* eval( vlMult.charAt(i) );
      }
     
      if(j == 2){
        vlSoma += (2 * vlDgito);
      }
      
      vlDgito = ((vlSoma*10) % 11);
      
      if(vlDgito == 10){
        vlDgito = 0;
      }
      
      vlControle = vlControle + vlDgito;
      vlMult = "654329876543";
    }
  
    if(vlControle != s2){
      return false;
    } else {
      return true;
    }
  }

  //valida CPF
  function validaCPF(StrCPF){
    
    x = 0;
    soma = 0;
    dig1 = 0;
    dig2 = 0;
    texto = "";
    StrCPF1="";
    len = StrCPF.length;
    x = len -1;
    
    for (var i=0; i <= len - 3; i++){
      y = StrCPF.substring(i,i+1);
      soma = soma + ( y * x);
      x = x - 1;
      texto = texto + y;
    }
    
    dig1 = 11 - (soma % 11);
    if (dig1 == 10) dig1=0 ;
    if (dig1 == 11) dig1=0 ;
    StrCPF1 = StrCPF.substring(0,len - 2) + dig1 ;
    x = 11; soma=0;
    
    for (var i=0; i <= len - 2; i++){
      soma = soma + (StrCPF1.substring(i,i+1) * x);
      x = x - 1;
    }
    
    dig2= 11 - (soma % 11);
    
	if (dig2 == 10) dig2=0;
    if (dig2 == 11) dig2=0;
    if ((dig1 + "" + dig2) == StrCPF.substring(len,len-2)){
      return true;
    } else {
      return false;
	}
  }

  //valida a data
  function isdate(Data){
    
    var dma = -1;
    var data = Array(3);
    var ch = Data.charAt(0); 
    for(i=0; i < Data.length && (( ch >= '0' && ch <= '9' ) || ( ch == '/' && i != 0 ) ); ){
     data[++dma] = '';
     if(ch!='/' && i != 0) return false;
     if(i != 0 ) ch = Data.charAt(++i);
     if(ch=='0') ch = Data.charAt(++i);
     while( ch >= '0' && ch <= '9' ){
     data[dma] += ch;
     ch = Data.charAt(++i);
     } 
    }
    if(ch!='') return false;
    if(data[0] == '' || isNaN(data[0]) || parseInt(data[0]) < 1) return false;
    if(data[1] == '' || isNaN(data[1]) || parseInt(data[1]) < 1 || parseInt(data[1]) > 12) return false;
    if(data[2] == '' || isNaN(data[2]) || ((parseInt(data[2]) < 0 || parseInt(data[2]) > 99 ) && (parseInt(data[2]) < 1900 || parseInt(data[2]) > 9999))) return false;
    if(data[2] < 50) data[2] = parseInt(data[2]) + 2000;
    else if(data[2] < 100) data[2] = parseInt(data[2]) + 1900;
    switch(parseInt(data[1])){
     case 2: { if(((parseInt(data[2])%4!=0 || (parseInt(data[2])%100==0 && parseInt(data[2])%400!=0)) && parseInt(data[0]) > 28) || parseInt(data[0]) > 29 ) return false; break; }
     case 4: case 6: case 9: case 11: { if(parseInt(data[0]) > 30) return false; break;}
     default: { if(parseInt(data[0]) > 31) return false;}
    }
    return true;
    
  }

  //valida o e-mail
  function validaemail(src) {
    emailReg = "^[\\w-_\.]*[\\w-_\.]\@[\\w]\.+[\\w]+[a-zA-Z]$"
    var regex = new RegExp(emailReg);
    return regex.test(src);	
  }
  
  //somente números são desbloqueados
  function digitos(digit){
	digit.keyCode = ((digit.keyCode < 48) || (digit.keyCode > 57))?0:digit.keyCode;
  }

  //somente dígitos e vírgula são aceitos
  function valores(digit){
	digit.keyCode = (((digit.keyCode < 48) || (digit.keyCode > 57)) && (digit.keyCode != 44))?0:digit.keyCode;
  }
  
  //somente dígitos e barra são aceitos
  function datas(digit){
	digit.keyCode = ((digit.keyCode < 47) || (digit.keyCode > 57))?0:digit.keyCode;
  }
  
  
  //vê se tem algum checkbox marcado
  function selecionoucheck(checkitem){
    selecionou = false;
	if (isNaN(checkitem.length)){
	  selecionou = checkitem.checked;
	} else {
	  i = 0;
	  while ( (i <= (checkitem.length -1)) && (!selecionou) ){
/*
		if (checkitem[i].checked){
		  selecionou = true;
		}
*/
	selecionou = checkitem[i].checked;
    	i++;
	  }
	}
    return selecionou;
  }
  
  function getTimeNow(ano, mes, dia){
    var now = new Date();
    var data = new Date(ano, mes, dia, now.getHours(),now.getMinutes(), now.getSeconds());
	return data;
  }
  
  //cria um objeto do tipo date
  function createdate(dia, mesano){
	mes = mesano;
	ano = mesano;
	
	mes = mes.substring(0, 2) - 1;
	ano = ano.substring(3, ano.length);
	
    var data = getTimeNow(ano, mes, dia);//, now.getMilliseconds());
	return data;
  }
  
  //converte uma string de data no formato brasileiro em um objeto do tipo date;
  function cdate(strdata){
    strdata = strdata.split('/');
    datacv  = getTimeNow(strdata[2], strdata[1] - 1, strdata[0]);
    return datacv;
  }
  
  //verifica se é numérico
  function isNumeric (str){
    if (str.length == 0) {
	  return false;
	} else {
	  //return !isNaN(String(str.replace('.', '')).replace(',', '.'))
	  return !isNaN(str.replace(',', '.'))
	}
  }
  
  
  //tira os espaços em branco e retorna o tamanho da string
  function limpa(str){
	var x = String(str).trim();
	x = x.replace(/[^A-Za-z0-9_]*/, '');
	
	// cadeia inteira => @#$%¨&*()[]{}^~_-="'<>/\|;:`´,•+?!
	// cadeia que passa => _-="'<>/\|;:`´,•+?!
	
//	chars = '@#$%¨&*()[]{}^~_-="\'<>/\\|;:`´,•+\?\!';
//	alert(chars +'\n'+ str);
//	for (i=0; i < chars.length; i++){
//	  c = chars.charAt(i);
//	  x = x.replace(c, '');
//	  alert(x);
//	}
	return x.length;
  }
  
  //procura por caracteres inválidos na string
  function ehvalido(str){
	var aux = str.trim();
	if (aux.length == 0){
	  return false;
	} else {
	  chars = '@#$%¨&*()[]{}^~_-="\'<>/\\|;:`´,•+\?\!';
	  i = 0;
	  invalido = false;
	  while ((i < chars.length) && (!invalido)){
		c = chars.charAt(i);
		if (aux.indexOf(c) != -1) { invalido = true; }
		i++;
	  }
	  return !invalido;
	}
  }  
  
  //pôe o cursor no objeto e seleciona o conteúdo
  function setfocus(obj){
	obj.focus();
	obj.select();
  }
  /*

  //instancia o método trim
  String.prototype.trim = function(){
	var x=this;
	x=x.replace(/^\s*(.*)/, "$1");
	x=x.replace(/(.*?)\s*$/, "$1");
	return x;
  }
  
  //instancia o método strRev
  String.prototype.strRev = function(){
	var tmp = "";
	var str = this;
	for (i=str.length-1; i>=0; i--){
      tmp += str.charAt(i);
	}
	return tmp;
  }
  */
  function PopUp(I, W, H){
	lpos = (screen.availWidth/2) - (W/2);
	tpos = (screen.availHeight/2) - (H/2);
	window.open(I,'','scrollbars=0,left='+lpos+',top='+tpos+',width='+W+',height='+H).focus();
  //window.open(I,'','scrollbars=0,left='+lpos+',top='+tpos+',width='+W+',height='+H).focus();
  }
	
	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 addbookmark(){
	var bookmarkurl=document.location
	var bookmarktitle=document.title
			
	if (document.all)
	window.external.AddFavorite(bookmarkurl,bookmarktitle)
}
