// JavaScript Document
//configs:

isIE=document.all;
isNN=!document.all&&document.getElementById;
isN4=document.layers;

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_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_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 mascara(campo, Mascara, evtKeyPress) {
      var i, nCount, Texto, tCampo, tMascara,bolMask, retTexto, codTecla;
      if(isIE) { // Internet Explorer
        codTecla = evtKeyPress.keyCode; }
      else if(isNN) { // Nestcape
        codTecla = evtKeyPress.which;
      };
  if (codTecla != 8) { // backspace
      Texto = campo.value;
      // Limpa todos os caracteres de formatação que
      // já estiverem no campo.
	  re = /[^A-Z0-9]/gi
	  Texto = Texto.toString().replace( re, "");
      tCampo = Texto.length;
      tMascara = Mascara.length;
      i = 0;
      nCount = 0;
      retTexto = "";
      tMascara = tCampo;

      while (i <= tMascara) {
		bolMask = ((Mascara.charAt(i) == ":") || (Mascara.charAt(i) == "-") || (Mascara.charAt(i) == ".") || (Mascara.charAt(i) == "/"))
        bolMask = bolMask || ((Mascara.charAt(i) == "(") || (Mascara.charAt(i) == ")") || (Mascara.charAt(i) == " "))
        if (bolMask) {
          retTexto += Mascara.charAt(i);
          tMascara++; 
		} else {
          retTexto += Texto.charAt(nCount);
          nCount++;
        }
        i++;
      }

      campo.value = retTexto;
		if (Mascara.charAt(i-1) == "9") { // so numero
			return ((codTecla > 47) && (codTecla < 58)); // números de 0 a 9
		} else { // livre
			return true;
		};

  } else {
	return true;
  };	
};




function mascaraMoeda(campo, evtKeyPress) {
	  //onKeyPress="return(mascaraMoeda(this,event))"
      var codTecla;
      if(isIE) { // Internet Explorer
        codTecla = evtKeyPress.keyCode; }
      else if(isNN) { // Nestcape
        codTecla = evtKeyPress.which;
      };
/*  if(campo.value=='0,00'){
  	campo.value='';
	if((codTecla > 47) && (codTecla < 58)){
		return true;
	}else{
		return false;
	};
  };
  */
  if (codTecla != 8 && codTecla!=0) { // backspace
	if(((codTecla > 47) && (codTecla < 58)) || String.fromCharCode(codTecla)==',' || String.fromCharCode(codTecla)=='.'){
		if((String.fromCharCode(codTecla)==',' || String.fromCharCode(codTecla)=='.') && campo.value.indexOf(',')!=-1){
			return false;
		}else{
			if(campo.value.length==0 && (String.fromCharCode(codTecla)==',' || String.fromCharCode(codTecla)=='.')){
				return false;
			}else{
				if(campo.value.indexOf(',')!=-1){
						if(String.fromCharCode(codTecla)=='.' || String.fromCharCode(codTecla)==','){
							return false;
						}else{
							return true;
						};
				}else{
					if(String.fromCharCode(codTecla)=='.'){
						campo.value+=',';
						return false;
					}else{
						return true;
					};
				};
			};
		};
	}else{
		return false;
	};
  } else {
	return true;
  };
};

function formataMoeda(num) {
	num = num.toString().replace(/[^0-9,]/g,'');
	num = num.toString().replace(',','.');
	if( parseInt(num) > 0 || parseFloat(num) > 0){
		parseFloat(num);
		if(isNaN(num)){
			num = 0;
		}else{
			var x = new Number(num);
			num=x.toFixed(2);
		};
		numFormatado=num.toString();
		return numFormatado.replace(/[.]/g,',');
	}else{
		return '0,00';
	};
};



function selItemSelectValor(obj,valorSel){
	for(i=0;i<obj.length;i++){
		if((obj.options[i].value==valorSel) || (obj.options[i].value=='' && obj.options[i].text==valorSel)){
			obj.selectedIndex=i;
		};
	};
};

function AdicItemSelect(Sel,Texto,Valor){
	if(Texto==''){
		var NOp = new Option(Texto,Texto);
	}else{
		var NOp = new Option(Texto,Valor);
	};
	Sel.options[Sel.options.length] = NOp;
};


function hideLayer(Layer){
  if (isIE||isNN) eval(Layer+'.style.visibility="hidden"');
  else if (isN4) eval('document.'+Layer+'.visibility="hide"');
}

function showLayer(Layer){
  if (isIE||isNN) eval(Layer+'.style.visibility="visible"');
  else if (isN4) eval('document.'+Layer+'.visibility="show"');
}


function checkCheckboxes(F,ChkName,ChkV){
	F=eval(F);
	for (var i = 0; i < F.elements.length; i++) {
		if(F.elements[i].type=='checkbox' && F.elements[i].name.indexOf(ChkName) != -1){
			F.elements[i].checked=ChkV;
		};
	};
};


function confereCheckboxes(F,ChkName){
	F=eval(F);
	for (var i = 0; i < F.elements.length; i++) {
		if(F.elements[i].type=='checkbox' && F.elements[i].name.indexOf(ChkName) != -1){
			if(F.elements[i].checked==1) return true;
		};
	};
	return false;
};

/* retorna o valor da opcao marcada em um conjunto  de radio, ou false se nada foi marcado*/
function valorRadioBts(RadioBt){
	for (var i = 0; i < RadioBt.length; i++) {
		if(RadioBt[i].checked){
			return RadioBt[i].value;
		};
	};
	return false;
};

/* abre a janela pra visualizar uma cobertura */
function abrirCobertura(Cobertura){
	url = 'verCobertura.php?Album='+Cobertura;
	window.open(url, 'janFechar', 'menubar=no,scrollbars=no,resizable=yes,width=780,height=520');
};

/* abre o player do programa */
function verPrograma(Prog) {
	var width = 470;
	var height = 365;
	var left = 0
	var top = 0   
	url = 'verprograma.php?Programa='+Prog;
	window.open(url, 'verProg', 'width='+width+', height='+height+', top='+top+', left='+left+', toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, fullscreen=no');
}




/* funcoes ajax */
function AjaxRequest() {
	var obj;
	try {
		obj=new ActiveXObject("Msxml2.XMLHTTP");
	} catch (e) {
		try {
			obj=new ActiveXObject("Microsoft.XMLHTTP");
		} catch (oc) {
			obj=null;
		}
	}
	if(!obj && typeof(XMLHttpRequest) != "undefined")
		obj = new XMLHttpRequest();
	if (!obj){
		return false;
	}else{
		return obj;
	};			
}

function AjaxRequestRun(URL, Metodo, FuncRetOK, FuncRetFail){
	con = AjaxRequest();
	if(con){
		if (Metodo == "GET") {
			URL += "?t="+new Date().getTime();
			if(arguments.length>4){
				for (i = 4; i < arguments.length; i++) URL +='&'+arguments[i];
			};
//			alert(URL);
			con.open('GET', URL, true);
		} else {
			var dados;						
			if(arguments.length>4){			
				for (i = 4; i < arguments.length; i++) dados += '&' +arguments[i];
			};
			con.open('POST', URL, true);
			con.setRequestHeader("Method", "POST " + URL + " HTTP/1.1");
			con.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");				
		};
		con.onreadystatechange = AjaxRequestStateHandler(con,FuncRetOK,FuncRetFail);
		con.send(dados);
		return true;
	}else{
		return false;
	};
}

function AjaxRequestStateHandler(obj, callBackSucess, callBackFail) {    
	// Retorna uma funcao que monitora o status do obj e chama a funcao de callback
	return function () {
		if (obj.readyState == 4) {      // Se  status 4(completo)       
			if (obj.status == 200) {      // Confirma se o servidor retornou ok
				callBackSucess(obj.responseText);  // Pass the XML payload of the response to the handler function.
//				alert(obj.responseText);
				//callBackSucess(obj.responseXML);  // Pass the XML payload of the response to the handler function.
			} else {
				callBackFail();
			}
		}
	}
}

String.prototype.parseJSON = function () {
    try {
        return !(/[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]/.test(
                this.replace(/"(\\.|[^"\\])*"/g, ''))) &&
            eval('(' + this + ')');
    } catch (e) {
        return false;
    }
};
