function vaiPara(url){
  window.location = url;
}

function popup(url, larg, alt, barra){
  if(larg == null) larg = "350";
  if(alt == null) alt = "250";
  if(barra == null) barra = "no";
  else barra = "yes";

  var posX = ((screen.width / 2) - (larg / 2) );
  var posY = ((screen.height / 2) - (alt / 2) );

  janela = window.open( "/popup" + url ,"_blank", "toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=" + barra + ", resizable=no, copyhistory=no, width=" + larg + ", height=" + alt + ", top= " + posY + ", left=" + posX );
  janela.focus();
}

function retiraAcento(texto) {
  var acento    = 'áàãâäéèêëíìîïóòõôöúùûüçÁÀÃÂÄÉÈÊËÍÌÎÏÓÒÕÖÔÚÙÛÜÇ';
  var semacento = 'aaaaaeeeeiiiiooooouuuucAAAAAEEEEIIIIOOOOOUUUUC';
  var nova = '';

  for (i = 0; i < texto.length; i++) {
    if (acento.search(texto.substr(i, 1)) >= 0) {
      nova += semacento.substr(acento.search(texto.substr(i, 1)), 1);
    } else {
      nova += texto.substr(i, 1);
    }
  }
  return nova;
} 

function somenteLetrasNumeros(texto){
  var nova = "";
  nova = texto.replace(/[^ a-zA-Z0-9áàãâäéèêëíìîïóòõôöúùûüçÁÀÃÂÄÉÈÊËÍÌÎÏÓÒÕÖÔÚÙÛÜÇ]+/g,"");
  return nova;
}

function utf8_decode ( str_data ) {
  var tmp_arr = [], i = 0, ac = 0, c1 = 0, c2 = 0, c3 = 0;
  str_data += '';
  while ( i < str_data.length ) {
      c1 = str_data.charCodeAt(i);
      if (c1 < 128) {
          tmp_arr[ac++] = String.fromCharCode(c1);
          i++;
      } else if ((c1 > 191) && (c1 < 224)) {
          c2 = str_data.charCodeAt(i+1);
          tmp_arr[ac++] = String.fromCharCode(((c1 & 31) << 6) | (c2 & 63));
          i += 2;
      } else {
          c2 = str_data.charCodeAt(i+1);
          c3 = str_data.charCodeAt(i+2);
          tmp_arr[ac++] = String.fromCharCode(((c1 & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
          i += 3;
      }
  }
  return tmp_arr.join('');
}

function utf8_encode (argString) {
    // Encodes an ISO-8859-1 string to UTF-8  
    // 
    // version: 1109.2015
    // discuss at: http://phpjs.org/functions/utf8_encode    // +   original by: Webtoolkit.info (http://www.webtoolkit.info/)
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: sowberry
    // +    tweaked by: Jack
    // +   bugfixed by: Onno Marsman    // +   improved by: Yves Sucaet
    // +   bugfixed by: Onno Marsman
    // +   bugfixed by: Ulrich
    // +   bugfixed by: Rafal Kukawski
    // *     example 1: utf8_encode('Kevin van Zonneveld');    // *     returns 1: 'Kevin van Zonneveld'
    if (argString === null || typeof argString === "undefined") {
        return "";
    }
     var string = (argString + ''); // .replace(/\r\n/g, "\n").replace(/\r/g, "\n");
    var utftext = "",
        start, end, stringl = 0;
 
    start = end = 0;    stringl = string.length;
    for (var n = 0; n < stringl; n++) {
        var c1 = string.charCodeAt(n);
        var enc = null;
         if (c1 < 128) {
            end++;
        } else if (c1 > 127 && c1 < 2048) {
            enc = String.fromCharCode((c1 >> 6) | 192) + String.fromCharCode((c1 & 63) | 128);
        } else {            enc = String.fromCharCode((c1 >> 12) | 224) + String.fromCharCode(((c1 >> 6) & 63) | 128) + String.fromCharCode((c1 & 63) | 128);
        }
        if (enc !== null) {
            if (end > start) {
                utftext += string.slice(start, end);            }
            utftext += enc;
            start = end = n + 1;
        }
    } 
    if (end > start) {
        utftext += string.slice(start, stringl);
    }
     return utftext;
}
