	function Excecao(ex)
	{
		try
		{
			var mes="Nome:"+ex.name;
			mes+="\nMessagem:"+ex.message;
			if(typeof ex.number != "undefined")
				mes+="\nLinha:"+ex.number;
			if(typeof ex.lineNumber != "undefined")
				mes+="\nLinha:"+ex.lineNumber;
			if(typeof ex.fileName != "undefined")
				mes+="\nArquivo:"+ex.fileName;
			if(typeof ex.description != "undefined")
				mes+="\nDesciçao:"+ex.description;
			if(typeof ex.stack != "undefined")
				mes+="\nDesciçao:"+ex.stack;
			alert(mes);
			
			return false;
		} 
		catch (ex)
		{ 
			var mes="Nome:"+ex.name;
			mes+="\nMessagem:"+ex.message;
			if(typeof ex.number != "undefined")
				mes+="\nLinha:"+ex.number;
			if(typeof ex.lineNumber != "undefined")
				mes+="\nLinha:"+ex.lineNumber;
			if(typeof ex.fileName != "undefined")
				mes+="\nArquivo:"+ex.fileName;
			if(typeof ex.description != "undefined")
				mes+="\nDesciçao:"+ex.description;
			if(typeof ex.stack != "undefined")
				mes+="\nDesciçao:"+ex.stack;
			alert(mes);
			
			return false;
		}
	}
	
	function ProximoElemento(campo)
	{
		try
		{
				var form = campo.form;
				var encotrado=false;
				for (var i = 0; i < form.elements.length; i++)
				{//alert(form.elements[i].tagName.toUpperCase( ));
					if (encotrado)
					{
						var tag = form.elements[i].tagName.toUpperCase( );
						if( tag == "SELECT")
							return form.elements[i];
						else
							if(tag == "INPUT")
							{
								var tipo = form.elements[i].type.toUpperCase( );
								if(tipo != "HIDDEN")
									return form.elements[i];
							}
							else
								if(tag == "TEXTAREA")
									return form.elements[i];
								else
									if(tag == "BUTTON")
										return form.elements[i];
					}

					if (form.elements[i].id == campo.id)
					{
						encotrado=true;
					}
				}
				return null;
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
	}

	function ValidaForm(form)
	{
		try
		{

			if('string'==typeof form)
				form=document.getElementById(form);
				
			for (var i = 0; i < form.elements.length; i++)
			{
				if (form.elements[i].title != "")
				{

					var obj=form.elements[i];
					if(obj.tagName.toUpperCase() == "SELECT")
					{
						if( (obj.options[obj.selectedIndex].value == "") || (obj.options[obj.selectedIndex].value == "0") )
						{
							alert("O campo " + obj.title+" é de preenchimento obrigatório!");
							obj.focus();
							return false;
						}
					}
					else
						if( (obj.tagName.toUpperCase( ) == "INPUT") || (obj.tagName.toUpperCase( ) == "TEXTAREA") )
							{
								if(obj.value == "")
								{
									alert("O campo " + obj.title + " é de preenchimento obrigatório!");
									obj.focus();
									return false;
								}
							}
				}

			}
			return true;
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
	}

	function SelectObjetoForm(form,obj)
	{
		try
		{	
			if( 'string' == typeof(form) )
				var form = document.getElementById(form);
			for (var i = 0; i < form.elements.length; i++)
			{

				var aux=form.elements[i];
				if(obj == aux.id)
					return aux;
			}
			return null;
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
	}

	function SetFocus(form,obj)
	{
		try
		{
			var objeto = SelectObjetoForm(form,obj);
			objeto.focus();
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
	}

	function SetValor(form,obj,valor)
	{
		try
		{
			xajax.dom.assign( SelectObjetoForm( form, obj),'value', valor);
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
	}

	function FormatarCPF(campo,ObjEvento)
	{
		if (ObjEvento.keyCode) // Internet Explorer
			var tecla = ObjEvento.keyCode;
		else
			if(ObjEvento.which) // Nestcape
				var tecla = ObjEvento.which;
			else
				var tecla = ObjEvento.which;
		vr = campo.value;
		vr = vr.replace(/([^0-9])/g,'');
		tam = vr.length + 1;
		campo.maxLength = 14;
		if(tecla != 8 && tecla != 0 && tecla != 127 && tecla != 9 && tecla != 13 && tecla != 37 && tecla != 39 && tecla != 46 )
		{ 
			if(tam <= 3)
				campo.value = vr;

			if((tam > 3) && (tam <= 6))

				campo.value = vr.substr(0, 3) + '.' + vr.substr(3, tam);

			if((tam > 6) && (tam <= 9))

				campo.value = vr.substr(0, 3) + '.' + vr.substr(3, 3) + '.' + vr.substr(6, tam);

			if(tam > 9)

				campo.value = vr.substr(0, 3) + '.' + vr.substr(3, 3) + '.' + vr.substr(6, 3) + '-' + vr.substr(9, 2);

		}

	

		return true;

	}

	function addOption(element,optionId,txt,val)
	{
		if('string'==typeof(element))
			element=this.$(element);

		var objOption = new Option(txt,val);
		objOption.id = optionId;
		element.options.add(objOption);
	}
	
	function removeOption(element)
	{
		if('string'==typeof(element))
			element = xajax.$(element);

		var iLen = element.options.length;
		for(var i=0;i < iLen;i++)
		{
			xajax.dom.remove(element.options[0]);
		}
	}

	// funçao recebe um this do obejto que sofre o evento e passa o focos para outro objeto que e passado o ID do mesmo

	function proximo(obj,ObjEvento,novoCampo)
	{
		try
		{
			if ((obj.type == "text")||(obj.type == "password")||(obj.type == "textarea"))
			{
				if (ObjEvento.keyCode) // Internet Explorer
					var tecla = ObjEvento.keyCode;
				else
					if(ObjEvento.which) // Nestcape
						var tecla = ObjEvento.which;
					else
						var tecla = ObjEvento.which;
	
				if ((tecla == 13)&&(obj.type != "textarea")) 
				{
					if(novoCampo=='')
						var objfocus=ProximoElemento(obj);
					else
						var objfocus=SelectObjetoForm(obj.form,novoCampo);
					
					if(objfocus)
					objfocus.focus();
				}
				if ((tecla != 37)&& (tecla != 39))    
					if (obj.maxLength == obj.value.length)
					{
						if(novoCampo=='')
							var objfocus=ProximoElemento(obj);
						else
							var objfocus=SelectObjetoForm(obj.form,novoCampo);
							
						if(objfocus)
							objfocus.focus();
					}
			}
			else
			{
				if(novoCampo == '')
					var objfocus = ProximoElemento(obj);
				else
					var objfocus=SelectObjetoForm(obj.form,novoCampo);
				if(objfocus)
					objfocus.focus();
			}
			
			return;	 
			
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
	}	
	 
	function FormatarData(campo,ObjEvento)
	{
		if (ObjEvento.keyCode) // Internet Explorer
			var tecla = ObjEvento.keyCode;
		else
			if(ObjEvento.which) // Nestcape
				var tecla = ObjEvento.which;
			else
				var tecla = ObjEvento.which;
		if(tecla != 8 && tecla != 0 && tecla != 127 && tecla != 9 && tecla != 13 && tecla != 37 && tecla != 39 && tecla != 46 )
		{
			campo.value = campo.value.replace(/([a-z])|([A-Z])/g,'');
			var separador = "/";
			var dia = 2;
			var mes = 5;
			if (campo.value.length == dia)
				campo.value = campo.value + separador;
			
			if (campo.value.length == mes)
				campo.value = campo.value + separador;
		}
		campo.maxLength = 10;
		return true;
		
	}
	
	function FormatarHora(campo,ObjEvento)
	{
		if (ObjEvento.keyCode) // Internet Explorer
			var tecla = ObjEvento.keyCode;
		else
			if(ObjEvento.which) // Nestcape
				var tecla = ObjEvento.which;
			else
				var tecla = ObjEvento.which;
		if(tecla != 8 && tecla != 0 && tecla != 127 && tecla != 9 && tecla != 13 && tecla != 37 && tecla != 39 && tecla != 46 )
		{
			var separador = ":";
			var dia = 2;
			var mes = 5;
			if (campo.value.length == dia)
				campo.value = campo.value + separador;
			
			if (campo.value.length == mes)
				campo.value = campo.value + separador;
		}
		return true;
	}
	
	function FormatarTelefone(campo,ObjEvento)
	{
		if (ObjEvento.keyCode) // Internet Explorer
			var tecla = ObjEvento.keyCode;
			else
				if(ObjEvento.which) // Nestcape
					var tecla = ObjEvento.which;
				else
					var tecla = ObjEvento.which;
		if(tecla != 8 && tecla != 0 && tecla != 127 && tecla != 9 && tecla != 13 && tecla != 37 && tecla != 39 && tecla != 46 )
		{
			var separador = "-";
			var abre = "(";
			var fecha = ") ";
			var ddd = 2;
			var telefone = 9;
			campo.value = campo.value.replace(/([a-z])|([A-Z])/g,'');
			var vr = campo.value;
			vr = vr.replace(/([^0-9])/g,'');
			if(vr.length>2)
			vr=vr.substr(0, 3);
			//alert(vr);
			if(vr=='080')
			{
				if (campo.value.replace(/([^0-9])/g,'').length == 3)
					campo.value = campo.value.replace(/([^0-9])/g,'') ;
				if (campo.value.replace(/([^0-9])/g,'').length == 4)
					campo.value = campo.value.replace(/([^0-9])/g,'') + separador;
				if (campo.value.length == 8)
					campo.value = campo.value + separador;
				campo.maxLength=13;
			}
			else
			{
				if (campo.value.length == ddd)
					campo.value = abre + campo.value + fecha;
				
				if (campo.value.length == telefone)
					campo.value = campo.value + separador;
				campo.maxLength=14;
			}
		}
		return true;
	}
	
	function FormatarCEP(campo,ObjEvento)
	{  		
		if (ObjEvento.keyCode) // Internet Explorer
			var tecla = ObjEvento.keyCode;
		else
			if(ObjEvento.which) // Nestcape
				var tecla = ObjEvento.which;
			else
				var tecla = ObjEvento.which;
		
		if(tecla != 8 && tecla != 0 && tecla != 127 && tecla != 9 && tecla != 13 && tecla != 37 && tecla != 39 && tecla != 46 )
		{
			var vr = campo.value;
			if (vr.length == 5)
				campo.value = vr + "-";
		}
		campo.maxLength = 9;
		return true;
	}

	function FormatarPlaca(campo,ObjEvento)
	{  
		if (ObjEvento.keyCode) // Internet Explorer
				var tecla = ObjEvento.keyCode;
			else
				if(ObjEvento.which) // Nestcape
					var tecla = ObjEvento.which;
				else
					var tecla = ObjEvento.which;
		if(tecla != 8 && tecla != 0 && tecla != 127 && tecla != 9 && tecla != 13 && tecla != 37 && tecla != 39 && tecla != 46 )
		{
			var vr = campo.value;
			if (vr.length == 3)
			{
				campo.value = vr + "-";
				campo.value = campo.value.toUpperCase();
			}
		}
		return true;
	}
	
	function FormatarCNPJ(campo,ObjEvento)
	{
		 if (ObjEvento.keyCode) // Internet Explorer
				var tecla = ObjEvento.keyCode;
			else
				if(ObjEvento.which) // Nestcape
					var tecla = ObjEvento.which;
				else
					var tecla = ObjEvento.which;

		vr = campo.value;
		vr = vr.replace(/([^0-9])/g,'');
		tam = vr.length + 1;
		campo.maxLength = 18;
		// Formata Mask de CNPJ
		if ( tecla != 9 && tecla != 0 && tecla != 8 && tecla != 13 && tecla != 37 && tecla != 39 && tecla != 46 && tecla != 58)
		{
			if ( tam <= 2 ) 
				campo.value = vr ;
			if ( (tam > 2) && (tam <= 5) ) 
				campo.value = vr.substr( 0, 2 ) + '.' + vr.substr( 2, tam ) ;
			if ( (tam > 5) && (tam <= 8) ) 
				campo.value = vr.substr( 0, 2 ) + '.' + vr.substr( 2, 3 ) + '.' + vr.substr( 5, tam ) ;
			if ( (tam > 8) && (tam <= 12) ) 
				campo.value = vr.substr( 0, 2 ) + '.' + vr.substr( 2, 3 ) + '.' + vr.substr( 5, 3 ) + '/' + vr.substr( 8, tam ) ;
			if ( (tam > 12)  ) 
				campo.value = vr.substr( 0, 2 ) + '.' + vr.substr( 2, 3 ) + '.' + vr.substr( 5, 3 ) + '/' + vr.substr( 8, 4 ) + '-' + vr.substr( 12, 2) ;
		}
	}
	
	function ValidarCNPJ(arguments)
	{
		var cgc = arguments.value;
		var n1 ,n2 , n3, n4, n5, n6, n7, n8, n9, n10 , n11, n12, n13, n14;
		var d1,d2;
		var digitado, calculado;
		cgc = cgc.replace( /([^0-9])/g,'');
		if(cgc.length < 14)
		{
			arguments.IsValid = false ;
			return arguments.IsValid ;
		}

		n1 = cgc.substring(0,1);
		n2 = cgc.substring(1,2);
		n3 = cgc.substring(2,3);
		n4 = cgc.substring(3,4);
		n5 = cgc.substring(4,5);
		n6 = cgc.substring(5,6);
		n7 = cgc.substring(6,7);
		n8 = cgc.substring(7,8);
		n9 = cgc.substring(8,9);
		n10 = cgc.substring(9,10);
		n11 = cgc.substring(10,11);
		n12 = cgc.substring(11,12);
		n13 = cgc.substring(12,13);
		n14 = cgc.substring(13,14);
		
		d1 = n12*2+n11*3+n10*4+n9*5+n8*6+n7*7+n6*8+n5*9+n4*2+n3*3+n2*4+n1*5;
		d1= 11-(d1 % 11);
		if (d1 >= 10)
		  d1=0;
		d2 = d1*2+n12*3+n11*4+n10*5+n9*6+n8*7+n7*8+n6*9+n5*2+n4*3+n3*4+n2*5+n1*6;
		d2 = 11-(d2 % 11);
		if (d2 >= 10)
		   d2=0;
		calculado = d1 + d2;
		digitado = n13*1 + n14*1;
		if (calculado == digitado)
			arguments.IsValid = true;
		else
			arguments.IsValid = false;
		return arguments.IsValid ;
	}

	function FormatarValor(campo,ObjEvento)
	{
		 if (ObjEvento.keyCode) // Internet Explorer
				var tecla = ObjEvento.keyCode;
			else
				if(ObjEvento.which) // Nestcape
					var tecla = ObjEvento.which;
				else
					var tecla = ObjEvento.which;

		if ( tecla != 9 && tecla != 0 && tecla != 8 && tecla != 13 && tecla != 37 && tecla != 39 && tecla != 46 && tecla != 58)
		{
			campo.value = campo.value.replace(/\D/g,"") //Remove tudo o que nao é dígito
			if(campo.value.length >= 1)
			{
				var valor = parseFloat( campo.value );
				campo.value = valor;
			}

			if(campo.value.length < 4)
			{
				var limite = 3  - campo.value.length;
				for(i=0; i < limite; i++)
					campo.value = '0' + campo.value;
			}
			campo.value = campo.value.replace(/(\d)(\d{2})$/,"$1.$2") //Coloca ponto antes dos 2 últimos digitos
		}
    }
	
	function FormatarPeso(campo,ObjEvento)
	{
		 if (ObjEvento.keyCode) // Internet Explorer
				var tecla = ObjEvento.keyCode;
			else
				if(ObjEvento.which) // Nestcape
					var tecla = ObjEvento.which;
				else
					var tecla = ObjEvento.which;

		if ( tecla != 9 && tecla != 0 && tecla != 8 && tecla != 13 && tecla != 37 && tecla != 39 && tecla != 46 && tecla != 58)
		{
			campo.value = campo.value.replace(/\D/g,"") //Remove tudo o que nao é dígito
			if(campo.value.length >= 1)
			{
				var valor = parseFloat( campo.value );
				campo.value = valor;
			}

			if(campo.value.length < 5)
			{
				var limite = 4  - campo.value.length;
				for(i=0; i < limite; i++)
					campo.value = '0' + campo.value;
			}
			campo.value = campo.value.replace(/(\d)(\d{3})$/,"$1.$2") //Coloca ponto antes dos 2 últimos digitos
		}
    }
	
	function FormatarNumero(campo,ObjEvento)
	{
		 if (ObjEvento.keyCode) // Internet Explorer
				var tecla = ObjEvento.keyCode;
			else
				if(ObjEvento.which) // Nestcape
					var tecla = ObjEvento.which;
				else
					var tecla = ObjEvento.which;

		if ( tecla != 9 && tecla != 0 && tecla != 8 && tecla != 13 && tecla != 37 && tecla != 39 && tecla != 46 && tecla != 58)
		{
			campo.value = campo.value.replace(/\D/g,"") //Remove tudo o que nao é dígito
			if(campo.value.length >= 1)
			{
				var valor = parseFloat( campo.value );
				campo.value = valor;
			}

			campo.value = campo.value.replace(/(\d)$/,"$1") //Coloca ponto antes dos 2 últimos digitos
		}
    }
	
	function FormatarMaiusculo(campo,ObjEvento)
	{
		 if (ObjEvento.keyCode) // Internet Explorer
				var tecla = ObjEvento.keyCode;
			else
				if(ObjEvento.which) // Nestcape
					var tecla = ObjEvento.which;
				else
					var tecla = ObjEvento.which;

		if ( tecla != 9 && tecla != 0 && tecla != 8 && tecla != 13 && tecla != 37 && tecla != 39 && tecla != 46 && tecla != 58)
		{
			campo.value = campo.value.toUpperCase( );
		
		}
    }

	function VerificaData(args)
	{
		var _Data=args.value;
		_Data = _Data.replace(/([^0-9])/g,'');
		if (_Data.length != 8)
		{
			args.IsValid = false;
			return false;
		}
		
		var aux=args.value.split('/');
		if((aux[1]=='09')||(aux[1]=='08'))
			aux[1]=aux[1].replace('0','');
		if((aux[0]=='09')||(aux[0]=='08'))
			aux[0]=aux[0].replace('0','');
		var dia = parseInt(aux[0]);
		var mes = parseInt(aux[1]);
		var ano = parseInt(aux[2]);
		
		if ((mes > 12)||(mes < 1))
		{
			args.IsValid = false;
			return false;
		}
		if ((mes == 2)&&(( (ano % 4==0) && (ano % 100!=0) || (ano % 400==0)))&&(dia > 29))
		{
			args.IsValid = false;
			return false;
		}
		if ((mes == 2)&&(!( (ano % 4==0) && (ano % 100!=0) || (ano % 400==0)) )&&(dia > 28))
		{
			args.IsValid = false;
			return false;
		}
		if ((mes == 4 || mes == 6 || mes == 9 || mes == 11)&&(dia > 30))
		{
			args.IsValid = false;
			return false;
		}
		if (dia > 31)
		{
			args.IsValid = false;
			return false
		}
		
		args.IsValid = true;
		return true;
			
	}
	
	function ValidaCPF(args)
	{
		var s = args.value;
		s = s.replace(/[.]/g,'');
		s = s.replace('-','');

		if (isNaN(s)) {
			return args.IsValid = false;
		}
		var result = true
		for (i=1; i<s.length; i++)
		{
			result = result && (s.charAt(i-1) == s.charAt(i));
		}   

		var i;
		var c = s.substr(0,9);
		var dv = s.substr(9,2);
		var d1 = 0;
		for (i = 0; i < 9; i++) {
			d1 += c.charAt(i)*(10-i);
		}

		if (d1 == 0){
			return args.IsValid = false;
		}

		d1 = 11 - (d1 % 11);
		if (d1 > 9) d1 = 0;
		if (dv.charAt(0) != d1) {
			return args.IsValid = false;
		}

		d1 *= 2;
		for (i = 0; i < 9; i++) {
			d1 += c.charAt(i)*(11-i);
		}

		d1 = 11 - (d1 % 11);
		if (d1 > 9) d1 = 0;
		if (dv.charAt(1) != d1) {
			return args.IsValid = false;
		}
		return args.IsValid = (!result);
	}

	function ValidaEmail(args)
	{
		var txt = args.value;
		var aux=txt.split("@");
		txt = txt.replace(/[^@]/g,'');
		if(aux.length!=2)
			return args.IsValid = false;
		else
		{
			if((aux[0]=="")||(aux[1]==""))
			return args.IsValid = false; 
		}
		
		if(txt.length!=1)
			return args.IsValid = false;
		else
			return args.IsValid = true;
	} 

	function ValidaTelefone(args)
	{
		var txt = args.value;
		txt = txt.replace(/[A-Z]?[a-z]/g,'');
		if(txt.length!=14)
			return args.IsValid = false;
		else
			return args.IsValid = true;
	}  

	function ValidaTexto(args)
	{
		var txt = args.value;
		txt = txt.replace(/[^A-Z]?[^a-z]/g,'');
		if(txt.length==0)
			return args.IsValid = false;
		else
			return args.IsValid = true;
	}

	function ValidaNulo(args)
	{
		var txt = args.value;
		if(txt.length==0)
			return args.IsValid = false;
		else
			return args.IsValid = true;
	} 

	function ValidaNumero(args)
	{
	   var txt = args.value;
		txt = txt.replace(/[^0-9]/g,'');
		if(txt.length==0)
		  return args.IsValid = false;
		else
		  return args.IsValid = true;
	}

	function dataAtual()
	{
		var now = new Date();
		var hours = now.getHours();
		var minutes = now.getMinutes();
		var timeValue = "" + ((hours >12) ? hours -12 :hours)
		timeValue += ((minutes < 10) ? ":0" : ":") + minutes
		timeValue += (hours >= 12) ? " PM" : " AM"
		timerRunning = true;

		mydate = new Date();
		myday = mydate.getDay();
		mymonth = mydate.getMonth();
		myweekday= mydate.getDate();
		weekday= myweekday;
		myyear= mydate.getYear();

		if (myyear<1000) {
			myyear+=1900;
		}

		year = myyear

		if(myday == 0)		day = " Domingo, "
		else if(myday == 1)	day = " Segunda-feira, "
		else if(myday == 2)	day = " Terça-feira, "
		else if(myday == 3)	day = " Quarta-feira, "
		else if(myday == 4)	day = " Quinta-feira, "
		else if(myday == 5)	day = " Sexta-feira, "
		else if(myday == 6)	day = " Sábado, "

		if(mymonth == 0)		month = " de janeiro de "
		else if(mymonth ==1) 	month = " de fevereiro de "
		else if(mymonth ==2)	month = " de março de "
		else if(mymonth ==3)	month = " de abril de "
		else if(mymonth ==4)	month = " de maio de "
		else if(mymonth ==5)	month = " de junho de "
		else if(mymonth ==6)	month = " de julho de "
		else if(mymonth ==7)	month = " de agosto de "
		else if(mymonth ==8) 	month = " de setembro de "
		else if(mymonth ==9)	month = " de outubro de "
		else if(mymonth ==10)	month = " de novembro de "
		else if(mymonth ==11)	month = " de dezembro de "

		return document.write( day + myweekday + month + year);
	}

	function criafreme(IDiframe,formulario,func)
	{
		try
		{	
			var iframe = xajax.$(IDiframe);
			var Form = xajax.$(formulario);
			iframe.title="Load";
			Form.submit();
			
			if(typeof iframe.onreadystatechange == 'object') // for IE
			{
				iframe.onreadystatechange = function()
				{
					if(iframe.readyState == 'complete' && !iframe.loaded)
						eval(func); 
				}
			}
			else // for FF
			{
				iframe.onload = function()
				{
					xmlDoc = iframe.contentWindow;
					//alert(iframe.contentWindow.name);
					//alert(xmlDoc.window.document.location + " | " +  iframe.src);
					if(xmlDoc.window.document.location != iframe.src)
						var text = eval(func);
				}
			}

		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
	}

	function ConfirmaUPLoad(objeto, extencoes)
	{
		try
		{
			var txt=objeto.value;
			if(txt == "")
			{
				return false;
			} 
			
			var valida = txt;
			valida = valida.substr( txt.lastIndexOf(".") + 1 );
			valida = valida.toUpperCase();
			
			var teste=false;
			for( i=0;i<extencoes.length;i++ )
			{
				if(valida == extencoes[i])
				{
					teste = true;
					break;
				}
			} 
			if(teste) 
			{
				txt = txt.substr( txt.lastIndexOf("\\") + 1 );
				return true;
			}	 
			else
			{
				objeto.value='';
				objeto.src='';
				objeto.parentNode.innerHTML = objeto.parentNode.innerHTML;
				txt='Extençao nao é válida!\n Selecione das seguinte extençao:';
				for( i=0;i<extencoes.length-1;i++ )
				{
					txt+=' *.'+extencoes[i].toLowerCase()+',';
				}
				
				txt+=' e *.'+extencoes[extencoes.length-1].toLowerCase()+'.';  
				alert(txt);
				objeto.focus();
				return false;
			}
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
	}

	function createCookie(name,value,days)
	{
		if(value.replace(" ","").length == 0 )
			return;

		if (days)
		{
			var date = new Date();
			date.setTime(date.getTime()+(days*24*60*60*1000));
			var expires = "; expires="+date.toGMTString();
		}
		else 
			var expires = "";
		document.cookie = name+"="+value+expires+"; path=/";
	}

	function readCookie(name)
	{
		var nameEQ = name + "=";
		var ca = document.cookie.split(';');
		for(var i=0;i < ca.length;i++)
		{
			var c = ca[i];
			while (c.charAt(0)==' ')
				c = c.substring(1,c.length);
			if (c.indexOf(nameEQ) == 0)
				return c.substring(nameEQ.length,c.length);
		}
		return null;
	}

	function eraseCookie(name)
	{
		createCookie(name,"",-1);
	}

	function ExibeEditor(evt,campo,form)
	{
		try
		{
			var obj = SelectObjetoForm(form,campo);
			var i=0;
			var t = 150;
			var l = 150;
			var i=0;
			for(i=0; i < document.forms.length; i++)
			{
				if(document.forms[i] == obj.form)
				   break;
			}
			xajax_Editor(obj.value,campo,i,t,l);
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
	}

	function SetCampo(objeto)
	{
		try
		{
			var campo = xajax.$(objeto);

			if( (typeof(campo) == "undefined") || (campo == null) )
				return;
			var text = xajax.$('_DIV_'+objeto);
			if( text.innerHTML == "" )
				return;
			if( campo.type == "file" )
				return;
			campo.value = text.innerHTML;
			return;
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
	}
	
	var Controle_OnBlue = true;
	function SelectClass(Evento,obj, nomeClass)
	{
		if('string' == typeof(obj))
			obj = xajax.$(obj);
		obj.className = nomeClass;
		if(Evento.type == 'mouseover')
			Controle_OnBlue = false;
		else
			Controle_OnBlue = true;
			//xajax.$("CATEGORIA").value = Controle_OnBlue;
		/*var pai = obj.parentNode;
		var divs = pai.getElementsByTagName('div');
		var Intdivs = obj.getElementsByTagName('div');
		//xajax.$('CATEGORIA').value = 'divs.length = ' + divs.length+' Intdivs.length='+Intdivs.length+' children ='+obj.children.length ;
		for (var i = 0; i < divs.length; i++) 
		{
			var x = divs[i];
			var sumir = true;
			if(x.className != 'contener')
				continue;
			for (var j = 0; j < Intdivs.length; j++)
			{
				if(x == Intdivs[j])
				{
					sumir = false;
					break;
				}
			}
			if(sumir)
				x.style.display = 'none';
		}*/
	}
	
	function ExibeSelect()
	{
		try
		{
			if(!Controle_OnBlue)
			 return;
			if(arguments.length == 0)
			 return;
			var div = arguments[0];
			if(arguments.length > 2)
				var zindex = arguments[2];
			else
				var zindex = 2000;
			var obj = xajax.$(div);
			if(arguments.length == 1)
			{
				if( obj.style.display != 'none')
					new Effect.Fade(obj, {duration: 0.5});
				else
					new Effect.Appear(obj, { duration: 0.5 });
			}
			else
			{
				var op = arguments[1];
				if(op)
					new Effect.Appear(obj, { duration: 0.5 });
				else
				{
					new Effect.Fade(obj, {duration: 0.5});
				}
				
			}
			obj.style.zIndex = zindex;
			Controle_OnBlue = true;
			var divs = obj.getElementsByTagName('div');
			for (var i = 0; i < divs.length; i++) 
			{
				var x = divs[i];
				if(x.className != 'contener')
					continue;
				x.style.display = 'none';
			}
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
	}
	
	function SelectItem(obj, InpValor, InpText, ValValor, valText)
	{
		try
		{
			InpValor = xajax.$(InpValor);
			InpText = xajax.$(InpText);
			InpValor.value = ValValor;
			InpText.value = valText;
			Controle_OnBlue = true;
			ExibeSelect(obj, false, 1);
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
		
	}
	
	function MostraSelectBoxes()
	{
		if(arguments.length > 0)
		{
			objeto = document.getElementById(arguments[0]);
			var selects = objeto.getElementsByTagName("select");
		}
		else
			var selects = document.getElementsByTagName("select");
		for (i = 0; i != selects.length; i++) 
		{
			selects[i].style.visibility = "visible";
		}
	}
	
	function OcultaSelectBoxes()
	{
		if(arguments.length > 0)
		{
			objeto = document.getElementById(arguments[0]);
			var selects = objeto.getElementsByTagName("select");
		}
		else
			var selects = document.getElementsByTagName("select");
		for (i = 0; i != selects.length; i++)
		{
			selects[i].style.visibility = "hidden";
		}
	}
	
	function MostraFlash()
	{
		if(arguments.length > 0)
		{
			objeto = document.getElementById(arguments[0]);
			var flashObjects = objeto.getElementsByTagName("object");
		}
		else
			var flashObjects = document.getElementsByTagName("object");
		
		for (i = 0; i != flashObjects.length; i++) 
		{
			flashObjects[i].style.visibility = "visible";
		}
		
		if(arguments.length > 0)
		{
			objeto = document.getElementById(arguments[0]);
			var flashEmbeds = objeto.getElementsByTagName("embeds");
		}
		else
			var flashEmbeds = document.getElementsByTagName("embeds");
		
		for (i = 0; i != flashEmbeds.length; i++) 
		{
			flashEmbeds[i].style.visibility = "visible";
		}
	}
	
	function OcultaFlash()
	{
		if(arguments.length > 0)
		{
			objeto = document.getElementById(arguments[0]);
			var flashObjects = objeto.getElementsByTagName("object");
		}
		else
			var flashObjects = document.getElementsByTagName("object");
			
		for(i = 0; i != flashObjects.length; i++) 
		{
			flashObjects[i].style.visibility = "hidden";
		}
		
		if(arguments.length > 0)
		{
			objeto = document.getElementById(arguments[0]);
			var flashEmbeds = objeto.getElementsByTagName("embeds");
		}
		else
			var flashEmbeds = document.getElementsByTagName("embeds");
			
		for(i = 0; i != flashEmbeds.length; i++) 
		{
			flashEmbeds[i].style.visibility = "hidden";
		}
	}
	
	function ZoomUp(janela)
	{
		try
		{
			var windowWidth, windowHeight;
			nome_ = janela;
			
			window.onresize = function(){ ZoomUp(nome_); };
			if(document.documentElement && document.documentElement.clientHeight)
			{ // Explorer 6 Strict Mode
				windowWidth = document.documentElement.clientWidth;
				windowHeight = document.documentElement.clientHeight;
			}
			else if(document.body)
			{ // other Explorers
				windowWidth = document.body.clientWidth;
				windowHeight = document.body.clientHeight;
			}	
			if(document.body)
			{ 
				var Height = document.body.scrollHeight;
			}
			else
			{
				var Height = windowHeight;
			}
			OcultaSelectBoxes();
			OcultaFlash();
			var nomejanela = janela;
			div = document.getElementById('Painel_Oculto_'+janela);
			if((typeof(div) == "undefined") || (!div))
			{
				janela = document.getElementById(janela);
				div = document.createElement("div");
				div.setAttribute('id','Painel_Oculto_'+janela.id);
				div.className = 'PainelOculta';
				div.style.display = 'none';
				
				oculto = document.createElement("div");
				oculto.setAttribute('id','Fundo_Oculto_'+janela.id);
				oculto.className='FundoOculta';
				
				oculto.onclick = function(){ZoomDown(nome_);};
				
				CJanela = document.createElement("div");
				CJanela.setAttribute('id','Janela_Oculto_'+janela.id);
				CJanela.className = janela.className;
				CJanela.style.display = janela.style.display;
				CJanela.style.width = janela.style.width;
				CJanela.style.height = janela.style.height;
				CJanela.innerHTML = janela.innerHTML;
				
				div.appendChild(oculto);
				div.appendChild(CJanela);
				document.body.appendChild(div);	
				div = document.getElementById('Painel_Oculto_'+janela.id);	
				xajax.dom.remove(janela);
			}
			
			oculto= document.getElementById('Fundo_Oculto_'+nomejanela);
			janela = document.getElementById('Janela_Oculto_'+nomejanela);
			if(janela.offsetHeight)
				JanelaHeight = janela.offsetHeight;
			else
				JanelaHeight = parseInt(janela.style.height);
			if(janela.offsetWidth)
				JanelaWidth = janela.offsetWidth;
			else
				JanelaWidth = parseInt(janela.style.width);
			JanelaTop = (windowHeight - JanelaHeight)/2;
			JanelaLeft = (windowWidth - JanelaWidth)/2;
			
			if((!JanelaTop) ||(JanelaTop<0))
				JanelaTop = 20;
			if(!JanelaLeft)
				JanelaLeft = 200;
			Height += Height * 0.1;
			div.style.top = '0px';
			div.style.left = '0px';
			div.style.width = windowWidth + 'px';
			div.style.height = Height + 'px';
			div.style.zIndex = 2000;
			oculto.style.top = '0px';
			oculto.style.left = '0px';
			oculto.style.width = windowWidth + 'px';
			oculto.style.height = Height + 'px';
			janela.style.top = JanelaTop + 'px';
			janela.style.left = JanelaLeft + 'px';
			
			MostraSelectBoxes(janela.id);
			MostraFlash(janela.id);
			janela.style.display = 'none';
			scroll(0,0);
			if(div.style.display == 'none')
			{
				//Effect.SlideDown(janela, { duration: 0.5 });
				Effect.Appear(janela, { duration: 0.2 });
				Y = parseInt(janela.style.top);
				X = parseInt(janela.style.left);
				janela.style.top ='-400px';
				new Effect.Move(janela, { x: X, y: Y, mode: 'absolute' });

				Effect.Appear(div, { duration: 1.0 });
				//div.style.display = '';
				//
			}
			else
			{
				janela.style.display = '';
			}
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}

	}
	
	function ZoomDown(janela)
	{
		try
		{
			div = document.getElementById('Painel_Oculto_'+janela);
			janela = document.getElementById('Janela_Oculto_'+janela);
			window.onresize = function(){};
			Y = -400;
			X = parseInt(janela.style.left);
			new Effect.Move(janela, { x: X, y: Y, mode: 'absolute' });
			new Effect.Fade(div, { duration: 1.5 });
			new Effect.Fade(janela, { duration: 1.0 });
			
			//janela.style.display = 'none';
			//div.style.display = 'none';
			div.style.zIndex = 1;
			MostraSelectBoxes();
			MostraFlash();
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
	}
	
	function AbrirEspera()
	{
		try
		{
			var img = document.getElementById('Espera');
			scroll(0,0);
			new Effect.Appear(img, { duration: 1.5 });
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
	}
	
	function FechaEspera()
	{
		try
		{
			var img = document.getElementById('Espera');
			new Effect.Fade(img, { duration: 1.5 });
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
	}
	function isIE()
	{
		try
		{
			var texte = navigator.userAgent;
			texte = texte.toUpperCase( );
			if(texte.search('MSIE') < 0)
				return false;
			else
				return true;
		} 
		catch (ex)
		{ 
			return Excecao(ex);
		}
	}
