function resaltar_error(campo,ok)
{
	if (!ok)
	{
		campo.style.backgroundColor="red";
		campo.style.color="white";
	} else {
		campo.style.backgroundColor="white";
		campo.style.color="black";
	}
}

function validar_entrada(id)
{
	if (id)
		var formu=document.getElementById(id);
	else
		var formu=document.formu;	
		
	for (var i=0; i < formu.elements.length; i++)
	{
		if (formu.elements[i].className=="obligatorio")
		{				
			switch (formu.elements[i].type)
			{
				case "text":
				case "textarea":
				case "password":
				case "file":
					if (formu.elements[i].value=="")
					{
						formu.elements[i].focus();						
						resaltar_error(formu.elements[i],false);
						alert (msj_estandar);						
						return false;
					} else 
						resaltar_error(formu.elements[i],true);
					break;
					
				case "select-one":
					if (formu.elements[i].selectedIndex <= 0)
					{
						formu.elements[i].focus();							
						resaltar_error(formu.elements[i],false);
						alert (msj_estandar);						
						return false;
					} else
						resaltar_error(formu.elements[i],true);
					break;
								
				case "select-multiple":					
					var opciones=formu.elements[i].options;					
					var ok=false;				
					for (var j=0; j < opciones.length; j++)
					{						
						ok=ok||opciones[j].selected;					
					}					
					if (!ok)
					{
						alert (msj_estandar);	
						formu.elements[i].focus();
						return false;
					}					
					break;
			}
		}	
	}
	return true;	
}/* funciones auxiliares */
if (!msj_estandar)
	var msj_estandar="Por favor complete todos los datos obligatorios.";
var URL="http://www.programadoresfreelance.com";
var PATH="/home/programa/public_html";
var fila_actual=0;

//muestra una foto en grande
//para que funcione el posicionamiento, hay que usar un id=img_src donde src es la ruta de la imagen
function mostrar_foto(src)
{	
	var pos=getPosition(document.getElementById("img_"+src));
	var winl=pos.x;
	var wint=pos.y;
	
	if (contenedor.style && contenedor.style.display=="none")
	{
	    ajax_load("programadoresfreelance.php","oper=mostrar_foto&src="+src,"contenedor");
		contenedor.style.left=winl;
		contenedor.style.top=wint;
		ocultar("contenedor","display");
	}
	var pos2=getWindowSize();
	var image_1 = new Image()
    image_1.src = src.substring(3);
	
	var pos3=(pos2.x-image_1.width)/2;
	//var pos4=(pos2.y-image_1.height)/2;

	contenedor.style.left=pos3+"px";
	contenedor.style.top=pos4+"px";	
	document.body.className="oscura";
	
	//alert(image_1.width);	
}


function getPosition(e){
	var left = 0;
	var top  = 0;

	while (e.offsetParent){
		left += e.offsetLeft;
		top  += e.offsetTop;
		e     = e.offsetParent;
	}

	left += e.offsetLeft;
	top  += e.offsetTop;

	return {x:left, y:top};
}

//opcionalmente recibe: dia, mes, año que indica que cosa se quiere elegir. Si por ejemplo se le pasa dia=false, mes=false, año=true solo selecciona el año	
function seleccionar_fecha(target)
{	
	ajax_load("seleccionar_fecha.php",
			  "fecha_target="+target+
			  "&dia="+arguments[1]+
			  "&mes="+arguments[2]+
			  "&ano="+arguments[3]+
			  "&hora="+arguments[4]+
			  "&minuto="+arguments[5]+
			  "&segundo="+arguments[6]+
			  "&elegir_dia="+arguments[7]+
			  "&elegir_mes="+arguments[8]+
			  "&elegir_ano="+arguments[9]+
			  "&elegir_hora="+arguments[10]+
			  "&elegir_minuto="+arguments[11]+
			  "&elegir_segundo="+arguments[12]+
			  "&dia_desde="+arguments[13]+
			  "&mes_desde="+arguments[14]+
			  "&ano_desde="+arguments[15]+
			  "&hora_desde="+arguments[16]+
			  "&minuto_desde="+arguments[17]+
			  "&segundo_desde="+arguments[18]+
			  "&dia_hasta="+arguments[19]+
			  "&mes_hasta="+arguments[20]+
			  "&ano_hasta="+arguments[21]+
			  "&hora_hasta="+arguments[22]+
			  "&minuto_hasta="+arguments[23]+
			  "&segundo_hasta="+arguments[24]+
			  "&lang="+arguments[25],
			  "contenedor");	
	var contenedor=document.getElementById("contenedor");	
	var destino=document.getElementById(target);	
	var pos=getPosition(destino);		
	contenedor.style.left=pos.x+"px";
	contenedor.style.top=pos.y-5+"px";		
	//ocultar("contenedor","display");
	contenedor.style.display="block";	
}

//add 15 8 08: agrego la posibilidad de elegir solo dia/mes mes/año y solo año asi que cuando valido tengo que tener en cuenta esto
//bugfix:13 6 10: agrego los parametros separador (arguments[1]) y lang(arguments[2]) de forma opcional para solucionar el problema de conversion de fechas
function validar_fecha(fecha_target)
{		
	var formu=document.formu_fecha;	
	var dia=formu.dia;
	var mes=formu.mes;
	var ano=formu.ano;
	var hora=formu.hora;
	var minuto=formu.minuto;
	var segundo=formu.segundo;	
	var target=document.getElementById(fecha_target);		
	var separador;
	var lang;
	
	//separador
	if (arguments[1])
		separador=arguments[1];
	else
		separador="/";
	
	//lang
	if (arguments[2])
		lang=arguments[2];		
	
	//dd/mm/yyyy hh:ii:ss
	if (dia && mes && ano && hora && minuto && segundo)
	{
		if (dia.selectedIndex <= 0 || mes.selectedIndex <= 0 || ano.selectedIndex <= 0 || hora.selectedIndex <= 0 || minuto.selectedIndex <= 0 || segundo.selectedIndex <= 0)
		{
			alert ("Por favor seleccione una fecha y hora válida");
			return false;
		}
	}

	//dd/mm/yyyy hh:ii
	if (dia && mes && ano && hora && minuto)
	{
		if (dia.selectedIndex <= 0 || mes.selectedIndex <= 0 || ano.selectedIndex <= 0 || hora.selectedIndex <= 0 || minuto.selectedIndex <= 0)
		{
			alert ("Por favor seleccione una fecha y hora válida");
			return false;
		}
	}

	//dd/mm/yyyy hh
	if (dia && mes && ano && hora)
	{
		if (dia.selectedIndex <= 0 || mes.selectedIndex <= 0 || ano.selectedIndex <= 0 || hora.selectedIndex <= 0)
		{
			alert ("Por favor seleccione una fecha y hora válida");
			return false;
		}
	}

	// dd/mm/yyyy
	if (dia && mes && ano)
	{
		if (dia.selectedIndex <= 0 || mes.selectedIndex <= 0 || ano.selectedIndex <= 0)
		{
			alert ("Por favor seleccione una fecha válida");
			return false;
		}

		switch (lang)
		{
			case "en":
				target.value=mes.options[mes.selectedIndex].value + separador + dia.options[dia.selectedIndex].value + separador + ano.options[ano.selectedIndex].value;		
				break;

			default:
				target.value=dia.options[dia.selectedIndex].value + separador + mes.options[mes.selectedIndex].value + separador + ano.options[ano.selectedIndex].value;		
				break;
		}
		
		if (!isDate(dia.options[dia.selectedIndex].value + "/" + 
			        mes.options[mes.selectedIndex].value + "/" + 
					ano.options[ano.selectedIndex].value))
		{
			alert ("La fecha ingresada no es válida");		
			target.value="";
			return false;
		}
	}

	// dd/mm
	if (dia && mes && !ano)
	{	
		switch (lang)
		{
			case "en":			
				target.value=mes.options[mes.selectedIndex].value + separador + dia.options[dia.selectedIndex].value;			
				break;

			default:					
				target.value=dia.options[dia.selectedIndex].value + separador + mes.options[mes.selectedIndex].value;
				break;
				
		}
	}
	
	// mm/yyyy
	if (!dia && mes && ano)
		target.value=mes.options[mes.selectedIndex].value + separador + ano.options[ano.selectedIndex].value;
	
	// yyyy
	if (!dia && !mes && ano)					
		target.value=ano.options[ano.selectedIndex].value;						

	if (hora)
		target.value+=" "+hora.options[hora.selectedIndex].value;
		
	if (minuto)
		target.value+=":"+minuto.options[minuto.selectedIndex].value;
		
	if (segundo)
		target.value+=":"+segundo.options[segundo.selectedIndex].value;
			
	ocultar("contenedor","display");		
}


var dtCh= "/";
var minYear=1900;
var maxYear=2100;

function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++){   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag){
	var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function daysInFebruary (year){
	// February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n) {
	for (var i = 1; i <= n; i++) {
		this[i] = 31
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		if (i==2) {this[i] = 29}
   } 
   return this
}

function isDate(dtStr){
	var daysInMonth = DaysArray(12)
	var pos1=dtStr.indexOf(dtCh)
	var pos2=dtStr.indexOf(dtCh,pos1+1)
	var strDay=dtStr.substring(0,pos1)
	var strMonth=dtStr.substring(pos1+1,pos2)	
	var strYear=dtStr.substring(pos2+1)
	strYr=strYear
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
	for (var i = 1; i <= 3; i++) {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
	}
	month=parseInt(strMonth)
	day=parseInt(strDay)
	year=parseInt(strYr)
	if (pos1==-1 || pos2==-1){		
		return false
	}
	if (strMonth.length<1 || month<1 || month>12){		
		return false
	}
	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		
		return false
	}
	if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){		
		return false
	}
	if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){		
		return false
	}
	return true
}

function recomendar_oferta(id_oferta,id_usuario,emails,target)
{	
	ajax_load("programadoresfreelance.php","oper=recomendar_oferta&id_oferta="+id_oferta+"&emails="+emails,"contenedor");	
	var contenedor=document.getElementById("contenedor");
	contenedor.style.display="block";	
	var destino=document.getElementById(target);	
	var pos=getPosition(destino);		
	contenedor.style.left=pos.x;
	contenedor.style.top=pos.y-5;		
}

//dado un id de un objeto html, un caracter a reemplazar y un caracter por el cual reemplazar busca en el objeto todas las ocurrencias del caracter y las reemplaza
function reemplazar(id,aguja,pajar)
{
	var obj=document.getElementById(id);
	var	texto=obj.value;
	//var def_texto= texto.replace(/\n/g, "<br />"); 
	var def_texto=texto.replace(aguja, pajar); 
	obj.value = def_texto; 	
}

function email_valido(str) 
{
   return (str.indexOf("@")); 
}

//valida un conjunto de emails ingresados en un textarea
function validar_emails(id)
{
	var obj=document.getElementById(id);
	var texto=obj.value;
	var texto2=texto.replace(/\n/g,",");
	var email="";
	
	var arr=texto2.split(",");	
	for (var i=0; i < arr.length; i++)
	{
		email=arr[i];
		if (!email_valido(email))
		{			
			var msj=email + " no es un email valido ingrese 1 email por linea sin espacios intermedios";
			alert (msj.replace(/\n/g,""));
			obj.focus();
			return false;
		} 
			
	}
	reemplazar(id,/\n/g,",");
	return true;
}

function validar_entrada_recomendacion()
{	
	var remitente=document.getElementById("remitente");	
	if (!email_valido(remitente.value))
	{
		alert (remitente.value + " no es un email valido");
		remitente.focus();
		return false;
	}
	if ($("emails").value!="")
		return (validar_emails("emails"));				
	else 
	{
		if ($("estoy_logueado").value=="false")
		{
			alert("debe ingresar al menos 1 email valido.");
			$("emails").focus();
			return false;
		} else {
			var ids=$("ids_usuarios");
			var ok=false;
			for (var i=0; i < ids.options.length; i++)
				ok=ok||ids.options[i].selected;
			if (!ok)			
				alert("Debe seleccionar al menos 1 destinatario o bien ingresar al menos 1 email válido.");			
			return ok;
		}
	}
}

function validar_longitud(obj,longitud_minima)
{
	if (obj.value.length < longitud_minima)
	{
		alert (obj.name + " debe tener al menos " + longitud_minima + " caracteres");
		obj.focus();
		return false;
	} else {
		return true;
	}
}

function filtrar_usuario(id)
{
	var formu=document.form_filtros;
	var id_usuario=formu.id_usuario;
	for (var i=0; i < id_usuario.options.length; i++)
	{
		if (id_usuario.options[i].value==id)
			id_usuario.selectedIndex=i;
	}
	formu.submit();
}

/* inicio funciones para sugerir */
var nom_tabla;
var guia;
var valor;
var campos;
var proyeccion;
var filtros;
var receptor;
var limit;
//add 17/8/08: el parametro limit es opcional y representa la pagina a la cual se quiere ir comenzando desde 0
//bugfix: solo inicializo si la tecla es letra o numero o simbolo
//TODO: seleccion filas con cursor
function cargar_sugerencias(nom_tabla_,guia_,valor_,campos_,proyeccion_,filtros_)
{
	//var unicode=event.keyCode?event.keyCode:event.charCode;	
	//if (unicode < 37 || unicode > 40)
	//{
		nom_tabla=nom_tabla_;
		guia=guia_;
		valor=valor_;
		campos=campos_;	
		proyeccion=proyeccion_;
		filtros=filtros_;	
		if (arguments[6]) //parametro opcional
			limit=arguments[6];
		else
			limit=0;
		setTimeout("cargar_opciones();",1000*1); //tiempo de respuesta a la sugerencia		
	/*} else {
		switch (unicode)
		{
			case 38: 
				seleccionar_fila("arriba");
				break;				
				
			case 40: 
				seleccionar_fila("abajo");
				break;				
		}
	}
	*/
}

//TODO: NO ME TOMA EL PARAMETRO URL, ES DECIR NO SE X Q MOTIVO NO ANDA CON UNA URL DE LA FORMA http://www.programadoresfreelance.com/sugerir.inc.php
function cargar_opciones()
{	
	//var url=URL+"/sugerir.inc.php";	
	var url="sugerir.inc.php";		
	ajax_load(url,"nom_tabla="+nom_tabla+"&valor="+valor+"&guia="+guia+"&campos="+campos+"&proyeccion="+proyeccion+"&filtros="+filtros+"&limit="+limit,"div_sugerir");			
	if (document.getElementById("div_sugerir").style.display=="none")
		ocultar("div_sugerir","display");	
}

function inicializar_sugerir(receptor_)
{
	fila_actual=0;
	receptor=receptor_;
	pos=getPosition(receptor_);
	var sugerir=document.getElementById("div_sugerir");
	sugerir.style.left=pos.x+2+"px";
	sugerir.style.top=pos.y+20+"px";		
	sugerir.style.width=receptor_.style.width;		
}

function seleccionar_fila(sentido)
{
	var tabla=$("tabla_sugerir");
	if (sentido=="abajo")
	{
		for (var i=0; i < tabla.rows.length-2; i++)
		{
			tabla.rows[i].focus();
			if (i != fila_actual)		
				tabla.rows[i].className=i%2==0?"color1":"";
			else
				tabla.rows[i].className="color2";
		}	
		if (fila_actual < tabla.rows.length-2) 
			fila_actual++;
		else
			fila_actual=0;
	} else {		
		for (var i=tabla.rows.length-2; i >= 0; i--)
		{
			tabla.rows[i].focus();
			if (i != fila_actual)		
				tabla.rows[i].className=i%2==0?"color1":"";
			else
				tabla.rows[i].className="color2";
		}	
		if (fila_actual > 0) 
			fila_actual--;
		else
			fila_actual=tabla.rows.length-2;		
	}
}

function depurar(str)
{
	var aux=new String(str);		
	return aux.replace(/^\s+|\s+$/g,"");	
}
var arg=new Array();
function copiar_valores()
{
	for (var i=0 ; i < arguments[0].childNodes.length; i++) 
	{
		arg[i]=(arguments[0].cells[i].id);
	}	
	copiar_valores2();
	ocultar("div_sugerir","display");	
}
function copiar_valores2()
{
	var formu=document.formu;					
	receptor.value=arg[1];
	if (arg[2])
	{
		receptor.value+=' '+arg[2];
		arg[2]=null;
	}
}

/* fin funciones sugerir */

function editar_oferta()
{
	/*
	var o=document.getElementById("oferta");
	var o2=document.getElementById("oferta2");	
	o2.style.width="400px";
	o2.style.height="200px";
	o2.value=o.innerHTML;
	*/
	ajax_load_handler("form_oferta","oferta","programadoresfreelance.php");
}

function validar_url(url) {
	var re=/^(http:|https:|ftp:)\/\/\w+(\.\w+)*(\-\w+)?\.\w{2,3}(\:\d{2,6})?(\/{1,2}(\:|\-|\w|\.|\?|\/|\=|\&|\%|\@|\\|\,)*)?$/;
	return re.test(url);
}

function insertAtCursor(myField, myValue) {
  //IE support
  if (document.selection) {
    myField.focus();
    sel = document.selection.createRange();
    sel.text = myValue;
  }
  //MOZILLA/NETSCAPE support
  else if (myField.selectionStart || myField.selectionStart == '0') {
    var startPos = myField.selectionStart;
    var endPos = myField.selectionEnd;
    myField.value = myField.value.substring(0, startPos)
                  + myValue
                  + myField.value.substring(endPos, myField.value.length);
  } else {
    myField.value += myValue;
  }
}

function insertar_campos(sel,txtArea)
{
	for (var i=0; i < sel.options.length; i++)
	{
		if (sel.options[i].selected)
		{
			insertAtCursor(txtArea,"\$reemplazo[\""+sel.options[i].value+"\"]");
		}
	}
}

//los checkbox deben llamarse chk_<id>
function seleccionar(que)
{
	var chks=document.getElementsByTagName("input");	
	for (var i=0; i<chks.length; i++)
	{
		if (chks[i].type=="checkbox" && chks[i].name.substring(0,4)=="chk_")
		{
			switch (que)
			{
				case "todos":				
					chks[i].checked=true;
					break;
					
				case "ninguno":
					chks[i].checked=false;
					break;
			}		
		}			
	}
}

//los checkbox deben llamarse chk_<id>
function borrar(url)
{
	var chks=document.getElementsByTagName("input");	
	var ids="";
	for (var i=0; i<chks.length; i++)
	{
		if (chks[i].type=="checkbox" && chks[i].name.substring(0,4)=="chk_" && chks[i].checked)		
			ids+=chks[i].name.substring(4)+",";		
	}	
	ids=ids.substring(0,ids.length-1);
	if (ids=="")	
		alert(ERROR_SELECCION);		
	else {
		if (confirm(CONFIRMAR_BORRADO))
		{
			ir_a(url+ids+"&sbmt=1");
		}
	}
}

//los checkbox deben llamarse chk_<id>
function restaurar(url)
{
	var chks=document.getElementsByTagName("input");	
	var ids="";
	for (var i=0; i<chks.length; i++)
	{
		if (chks[i].type=="checkbox" && chks[i].name.substring(0,4)=="chk_" && chks[i].checked)		
			ids+=chks[i].name.substring(4)+",";		
	}	
	ids=ids.substring(0,ids.length-1);
	if (ids=="")	
		alert(ERROR_SELECCION);		
	else {
		if (confirm(CONFIRMAR_RESTAURAR))
		{
			ir_a(url+ids+"&sbmt=1");
		}
	}
}

//los checkbox deben llamarse chk_<id>
function marcar(url)
{
	var chks=document.getElementsByTagName("input");	
	var ids="";
	for (var i=0; i<chks.length; i++)
	{
		if (chks[i].type=="checkbox" && chks[i].name.substring(0,4)=="chk_" && chks[i].checked)		
			ids+=chks[i].name.substring(4)+",";		
	}	
	ids=ids.substring(0,ids.length-1);
	if (ids=="")	
		alert(ERROR_SELECCION);		
	else {
		ir_a(url+ids+"&sbmt=1");		
	}
}

//los checkbox deben llamarse chk_<id>
function ir_a2(url)
{
	var chks=document.getElementsByTagName("input");	
	var ids="";
	for (var i=0; i<chks.length; i++)
	{
		if (chks[i].type=="checkbox" && chks[i].name.substring(0,4)=="chk_" && chks[i].checked)		
			ids+=chks[i].name.substring(4)+",";		
	}	
	ids=ids.substring(0,ids.length-1);
	if (ids=="")	
		alert(ERROR_SELECCION);		
	else {
		ir_a(url+ids);		
	}
}

//para funcionar el formu debe tener un campo hidden llamado avanzada
function mostrar_ocultar_avanzado(obj,
								  etiqueta,
								  clase,
								  titulo1,
								  titulo2,
								  id_formu)
{
	var formu
	
	if (id_formu)
		formu=document.getElementById(id_formu);
	else
		formu=document.formu;
	
	if (formu)
		var avanzada=formu.avanzada;
	
	if (!titulo1)
		titulo1="ver todas las noticias...";
		
	if (!titulo2)
		titulo2="ocultar noticias...";
		
	var objs=document.getElementsByTagName(etiqueta);
	for (var i=0; i<objs.length; i++)
	{
		if (objs[i].className==clase)
		{		
			if (objs[i].style.display=="block")
			{
				objs[i].style.display="none";
				obj.innerHTML="<img src='img/flecha-abajo.jpg' border='0' /> " + titulo1 + "</a>";
				if (avanzada) 
					avanzada.value="n";
			} else {
				objs[i].style.display="block";
				obj.innerHTML="<img src='img/flecha-arriba.jpg' border='0' /> " + titulo2 + "</a>";				
				if (avanzada) 
					avanzada.value="s";
			}
		}
	}
}

function mostrar_imagen(ruta,titulo,descripcion)
{
	var w=window.open("mostrar_imagen.inc.php?ruta="+ruta+"&titulo="+titulo+"&descripcion="+descripcion,"imagen","scrollbars=yes,menu=no,status=no,title=no,width=400px,height=500px");
}

function validar_entrada_recomendacion(id)
{
	var formu=document.getElementById(id);
	var para=formu.para;
	var cc=formu.cc;
	var bcc=formu.bcc;
	var separador=",";
	
	if  (validar_destinatarios(para,separador) && validar_destinatarios(cc,separador) && validar_destinatarios(bcc,separador))
		return validar_entrada(id);
	else
		return false;
}

function validar_destinatarios(str,separador)
{
	var ok=true;
	if (str.value!="")
	{
		var emails=str.value.split(separador);
		for (var i=0; i < emails.length; i++)
		{
			if (!email_valido(emails[i]))
			{
				alert("'"+emails[i]+"' NO es un email válido");
				resaltar_error(str,false);
				str.focus();
				ok=ok&&false;
			}
		}
	}
	if (ok)
		resaltar_error(str,true);
	return ok;
}

//actualizacion ajax de cualquier campo
function actualizar_campo(obj,nom_tabla,clave)
						  
{
	if (obj.value)
	{
		ajax_load("index.php","ajax=1&o=actualizar_campo&nom_tabla="+nom_tabla+"&nom_campo="+obj.name+"&clave="+clave+"&valor="+obj.value,"contenedor");
		obj.className='editar_off';
	}
}

function actualizar_campo_handler(id1,id2)
{
	var obj1=$(id1);
	var obj2=$(id2);
	
	if (obj2.className=="editar")
	{
		obj1.focus();
		obj2.className="guardar";
		obj2.innerHTML=" guardar";
	} else {
		obj2.focus();
		obj2.className="editar";
		obj2.innerHTML=" editar";
	}
}

function habilitar_foto()
{
	var formu=document.formu;
	var ruta=formu.ruta;
	var actualizar_foto=formu.actualizar_foto;
	ruta.disabled=!actualizar_foto.checked;
}

/*
fecha1
fecha2
incluir_dia=true
incluir_mes=true
incluir_año=true
incluir_hora=true
incluir_minuto=true
incluir_segundo=true
separador_fecha"/"
separador_hora=":"
*/
function comparar_fechas(fecha1,fecha2)
{
	if (fecha1.value==""||fecha2.value=="")
		return -1;
		
	var arr1=fecha1.value.split(" ");
	var arr2=fecha2.value.split(" ");
	var arr_fecha1=arr1[0].split("/");
	var arr_fecha2=arr2[0].split("/");
	var arr_hora1=arr1[1].split(":");
	var arr_hora2=arr2[1].split(":");
	
	var nro1=(arr_fecha1[2]+arr_fecha1[1]+arr_fecha1[0]+arr_hora1[0]+arr_hora1[1])*1;
	var nro2=(arr_fecha2[2]+arr_fecha2[1]+arr_fecha2[0]+arr_hora2[0]+arr_hora2[1])*1;
	
	if (nro1==nro2)
		return 0;
		
	if (nro1<nro2)
		return 1;
		
	if (nro1>nro2)
		return 2;	
}

//se debe colocar en el evento onKeyPress="detectar_enter(event);"
function detectar_enter(e)
{
	var characterCode;
	if(e && e.which) // NN4 specific code
	{
		e = e;
		characterCode = e.which;
	} else {
		e = event;
		characterCode = e.keyCode; // IE specific code
	}
	
	if (characterCode == 13) //// Enter key is 13
	{
		//alert("enter");
		return true;
	} else 
		return false;
}

//el check debe estar dentro de un <td>, ejemplo: <tr><td><input type='checkbox' onclick='pintar_fila(this);' /></td></tr>
function pintar_fila(chk)
{
	if (chk.checked)
		chk.parentNode.parentNode.className="azul";
	else
		chk.parentNode.parentNode.className="";
}

//retorna la extension de un archivo
function obtener_extension_archivo(valor)
{
	var arr=valor.split(".");
	var ext=arr[arr.length-1].toLowerCase();
	return ext;
}
