function MakeBkMark(strURL,strTitle) {
	if (document.all) { window.external.AddFavorite(strURL,strTitle); }
	else { alert("Disponivel somente para Internet Explorer"); }
}

function NovaJanela(pagina,nome,w,h,scroll,toolbar){
	var win = null;
	LeftPosition = (screen.width) ? (screen.width-w)/2 : 0;
	TopPosition = (screen.height) ? (screen.height-h)/2 : 0;
	settings = 'height='+h+',width='+w+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',toolbar='+toolbar+',resizable=no'
	win = window.open(pagina,nome,settings);
}

function CarregaFlash(caminho,largura,altura)
{
	if (arguments[3] != null) { 
		wmode = arguments[3]; // Para forçar o wmode=transparent quando necessario
	} else {
		wmode = "opaque";
	}
	document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="'+largura+'" height="'+altura+'">');
	document.write('<param name="movie" value="'+caminho+'">');
	document.write('<param name="quality" value="high">');
//	document.write('<param name="scale" value="noscale" />');
	document.write('<param name="salign" value="lt" />');
	document.write('<param name="wmode" value="'+wmode+'" />');
	document.write('<param name="menu" value="false">');
	document.write('<embed src="'+caminho+'" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="'+wmode+'" salign="lt" width="'+largura+'" height="'+altura+'"></embed>');
	document.write('</object>');
}

var ie4 = (document.all) ? 1:0;
function HideLayer(Layer) {
	if (ie4) {
		document.all(Layer).style.visibility="hidden";
	} else {
		document.getElementById(Layer).style.visibility="hidden";
	}
}

function ShowLayer(Layer) {
	if (ie4) {
		document.all(Layer).style.visibility="visible";
	} else {
		document.getElementById(Layer).style.visibility="visible";
	}
}

function MM_preloadImages() {
	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() {
	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) {
	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 && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() {
	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 Trim(obj)
{
	while (obj.value.indexOf('  ') != -1) {
		obj.value = obj.value.substring(0,obj.value.indexOf('  ')) + obj.value.substring(obj.value.indexOf('  ')+1,obj.value.length);
	}

	if (obj.value.indexOf(' ') == 0) {
		obj.value = obj.value.substring(1,obj.value.length);
	}

	if (obj.value.charAt(obj.value.length-1) == ' ') {
		obj.value = obj.value.substring(0,obj.value.length-1);
	}

	return(true);
}

function SomenteNumero(Campo) {
	if (Campo.value.length > 0) {
		if (VerificarCaracteres(Campo.value, "0123456789") == false)
		{
			alert('Digite somente numeros.');
			Campo.value = "";
			Campo.focus();
			return false;
		}
	}
}

function VerificarEmail(obj)
{
	if (obj.value!="") {
		while (obj.value.indexOf(' ') != -1) {
			obj.value = obj.value.substring(0,obj.value.indexOf(' ')) + obj.value.substring(obj.value.indexOf(' ')+1,obj.value.length);
		}

		var checkOK = "\@.";
		obj.value = obj.value.toLowerCase();
		var checkStr = obj.value;
		var achar = true;
		var erro = false;
		i = 0;

		while ((i<checkOK.length)&&(achar)) {
			ch = checkOK.charAt(i);
			t = 0;
			achar = false;
			while ((!achar)&&(t<checkStr.length)) {
				if (ch==checkStr.charAt(t))
					achar=true;
				t++;
			}
			i++;
		}

		if (achar) {
			cta = 0;
			ctpp=0;
			for (i=0;i<checkStr.length;i++)
				if (checkStr.charAt(i)=='\@') {
					cta++;
					if ((checkStr.charAt(i+1)=='.') || (checkStr.charAt(i-1)=='.'))
						cta++;
				}
				for (i=0;i<checkStr.length;i++)
					if (checkStr.charAt(i)=='.')
						if (checkStr.charAt(i+1)=='.') ctpp++;
							if ((cta>1)||(ctpp!=0)) erro=true;
						if ((checkStr.charAt(0)=='\@') || (checkStr.charAt(0)=='.') || (checkStr.charAt(checkStr.length-1)=='\@') || (checkStr.charAt(checkStr.length-1)=='.'))
							erro = true;
						if ((checkStr.charAt(checkStr.length-4)!='.') && (checkStr.charAt(checkStr.length-3)!='.'))
							erro = true;
				}

				if ((erro)||(!achar))
				{
					alert("Digite o e-mail no formato user\@dominio");
					obj.value="";
					obj.focus();
					return (false);
				}

				var checkOK = "abcdefghijklmnopqrstuvwxyz0123456789\@%_-.";
				var allValid = true;

				for (i = 0;  i < checkStr.length;  i++)
				{
					ch = checkStr.charAt(i);
					for (j = 0;  j < checkOK.length;  j++)
						if (ch == checkOK.charAt(j))
							break;

						if (j == checkOK.length)
						{
							allValid = false;
							break;
						}
				}
				if (!allValid)
				{
					alert("O e-mail possui caracteres invalidos.");
					obj.value="";
					obj.focus();
					return (false);
				}
		else
			return(obj.value);
	}
}

function QuantidadeCaracteres(Campo, Quantidade, Mascara) {
	if ((Campo.value.length > 0) && (Campo.value.length != Quantidade))
		{
			if (Mascara != "")
			{
				alert("Formato: " + Mascara);
			}
			Campo.value = "";
			Campo.focus();
		}
}

function VerificarCaracteres(str1, str2)
{
	var chvalidos = str2;
	var i = 0;
	var valid = true;
	while ((i<str1.length) && (valid)) {
		valid = false;
		for(j=0; j<chvalidos.length; j++) {
			if (str1.charAt(i) == chvalidos.charAt(j)) {valid=true;}
		}
		i++;
	}
	if (!valid) {
		return false;
	}
	return true;
}

function ConsistirData(str) {
	if (str.length != 10 || str.charAt(2) != "/" || str.charAt(5) != "/")
		return false;

	if (VerificarCaracteres(str, "/0123456789") == false)
		return false;

	var d = str.substring(0,2);
	var m = str.substring(3,5);
	var y = str.substring(6,10);

  	if (d == 0 || m == 0 || y == 0)
		return false;

	if (m > 12)
		return false;

	if (m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12)
		var dmax = 31;
	else
		if (m == 4 || m == 6 || m == 9 || m == 11)
			dmax = 30;
		else
			if ((y%400 == 0) || (y%4 == 0 && y%100 != 0))
				dmax = 29;
			else
				dmax = 28;

	if (d > dmax)
		return false;
	if (y < 1900)
		return false;
	return true;

}

function FF_FormatarData(Campo, teclapres)
{
	var vr = new String(Campo.value);
	var keypress;
	
	if(document.all)
		keypress = teclapres.keyCode;
	else
		keypress = teclapres.which;
    
	if (VerificarCaracteres(vr, "/0123456789") == false)
	{
		Campo.value = "";
		Campo.focus();
	}
	
	if (keypress != 13 && keypress != 8 && keypress != 9 && keypress != 46)
	{
		separacao = '/';
		vr = vr.replace("/", "");
				
	        if(document.all)
			event.returnValue = false;
				
		if (Campo.value.length == 2)
			Campo.value = Campo.value + separacao;
		if (Campo.value.length == 5)
			Campo.value = Campo.value + separacao;

		if(document.all)
			event.returnValue = true;
	}

	if (Campo.value.length == 10)
	{
		if (!ConsistirData(Campo.value))
		{
			alert("Data invalida.");
			Campo.value = "";
			Campo.focus();
		}
	}

	if (Campo.value.length > 10)
		Campo.value = Campo.value.substring(0,10);
}

function FF_FormatarData2(Campo, teclapres, AnoMax)
{
	var vr = new String(Campo.value);
	var keypress;
	
	if(document.all)
		keypress = teclapres.keyCode;
	else
		keypress = teclapres.which;
	
	if (VerificarCaracteres(vr, "/0123456789")==false)
	{
		Campo.value = "";
		Campo.focus();
	}

	if (keypress != 13 && keypress != 8 && keypress != 9 && keypress != 46)
	{
		separacao = '/';
		vr = vr.replace("/", "");
				
	        if(document.all)
			event.returnValue = false;
               
		if (Campo.value.length == 2) 
			Campo.value = Campo.value + separacao;
		if (Campo.value.length == 5) 
			Campo.value = Campo.value + separacao;

		if(document.all)
			event.returnValue = true;
	}

	if (Campo.value.length == 10)
	{
		if (!ConsistirData(Campo.value))
		{
			alert("Data invalida.");
			Campo.value = "";
			Campo.focus();
		}
		else
		{
			var Data = new Date();
			var AnoFut = Data.getYear() + AnoMax;
			var AnoPas = Data.getYear() - AnoMax;
			var AnoDig = Campo.value.substr(6,4);
			
			if (Math.round(AnoDig) >= Math.round(AnoFut))
			{
				if (!confirm("Atencao: Data igual ou superior a "+AnoMax+" anos.\nConfirma?"))
				{
					Campo.value = "";
					Campo.focus();
				}
			}
			if (Math.round(AnoDig) <= Math.round(AnoPas))
			{
				if (!confirm("Atencao: Data igual ou inferior a "+AnoMax+" anos.\nConfirma?"))
				{
					Campo.value = "";
					Campo.focus();
				}
			}
		}
	}

	if (Campo.value.length > 10)
		Campo.value = Campo.value.substring(0,10);
}

function ConsistirHora(str) {
	if (str.length != 5 || str.charAt(2) != ":")
		return false;

	if (VerificarCaracteres(str, ":0123456789") == false)
		return false;

	var h = str.substring(0,2);
	var m = str.substring(3,5);

	if (h.length != 2)
		return false;

	if (m.length != 2)
		return false;

	if (h > 23)
		return false;

	if (m > 59)
		return false;

	return true;
}

function FF_FormatarHora(Campo, teclapres)
{
	var vr = new String(Campo.value);
	var keypress;

	if(document.all)
		keypress = teclapres.keyCode;
	else
		keypress = teclapres.which;
    
	if (VerificarCaracteres(vr, ":0123456789") == false)
	{
		Campo.value = "";
		Campo.focus();
	}
	
	if (keypress != 13 && keypress != 8 && keypress != 9 && keypress != 46)
	{
		separacao = ':';
		vr = vr.replace(":", "");

		if(document.all)
			event.returnValue = false;

		if (Campo.value.length == 2)
			Campo.value = Campo.value + separacao;

		if(document.all)
			event.returnValue = true;
	}

	if (Campo.value.length == 5)
	{
		if (!ConsistirHora(Campo.value))
		{
			alert("Hora invalida.");
			Campo.value = "";
			Campo.focus();
		}
	}

	if (Campo.value.length > 5)
		Campo.value = Campo.value.substring(0,5);
}

function VerificarSomenteNumero(Campo) {
    if (VerificarCaracteres(Campo.value, "0123456789") == false)
    {
		alert("Digite apenas numeros.");
		Campo.value = "";
		Campo.focus();
    }
}