function lib_bwcheck(){ //Browsercheck (needed)
	this.ver=navigator.appVersion
	this.agent=navigator.userAgent
	this.dom=document.getElementById?1:0
	this.opera5=this.agent.indexOf("Opera 5")>-1
	this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0; 
	this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
	this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
	this.ie=this.ie4||this.ie5||this.ie6
	this.mac=this.agent.indexOf("Mac")>-1
	this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
	this.ns4=(document.layers && !this.dom)?1:0;
	this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
	return this
}


// ----------------------------------------------
// Escribe dentro de un div - necesito la func lib_bwcheck()
// ----------------------------------------------
function layerWrite(id,nestref,text)
{
  var nav = new lib_bwcheck();
  if (nav.ns4)
	{if (nestref) var lyr = eval('document.'+nestref+'.document.'+id+'.document');
	else var lyr = document.layers[id].document;
	lyr.open();
	lyr.write(text);
	lyr.close();
	}
  else document.all[id].innerHTML = text;
}


// ----------------------------------------------
// agrega dentro de un div - necesito la func lib_bwcheck()
// ----------------------------------------------
function layerWriteAdd(id,nestref,text)
{
  var nav = new lib_bwcheck();
  if (nav.ns4)
	{if (nestref) var lyr = eval('document.'+nestref+'.document.'+id+'.document');
	else var lyr = document.layers[id].document;
	lyr.open();
	lyr.write(text);
	lyr.close();
	}
  else document.all[id].innerHTML += text;
}


//--------------------------------------------------------------------------------------------------------------
// esta func. valida que los valores pasados en fieldsArray de un Formulario, no sean vacíos
//--------------------------------------------------------------------------------------------------------------
function valid()
{
var fieldsArray = valid.arguments[0];
var displayArray = valid.arguments[1];
if (valid.arguments.length==2) var form = document.forms[0];
else var form = document.forms[valid.arguments[2]];
 result = true;
 for (var i = 1; ((i < fieldsArray.length) && (result)); i++)
  {
    if (form.elements[fieldsArray[i]].value == '') 
     {alert('El campo "'+displayArray[i]+'" no puede estar vacio.');
      result = false;
      form.elements[fieldsArray[i]].focus();}
  }  
 return result 
}


// ----------------------------------------------
// Esta función valida que el campo tengo un formato válido de extension de archivos
// ----------------------------------------------
function valid_ext()
{
  var field_name = valid_ext.arguments[0];
  var display_name = valid_ext.arguments[1];
  if (valid_ext.arguments.length==2) var form = document.forms[0];
  else var form = document.forms[valid_ext.arguments[2]];
  var str=form[field_name].value;
  var formato=/^\.[\w]+$/;
  var result=true;
  if (result && !formato.test(str)) result=false;
  if (!result)
	{alert('El campo "'+ display_name +'" no posee un extensión de archivo válida');
	form[field_name].focus();
	}
  return result;
}



// ----------------------------------------------
// Esta función valida que una fecha este correcta y viene el formulario
// ----------------------------------------------
function valid_date()
{
var field_name = valid_date.arguments[0];
var display_name = valid_date.arguments[1];
if (valid_date.arguments.length==2) var form = document.forms[0];
else var form = document.forms[valid_date.arguments[2]];
var pDate = form.elements[field_name].value;
result = false;
// Create a variable to hold the correct format.
var CorrectFormat = /[0-3][0-9]\/[0-1][0-9]\/[0-9][0-9][0-9][0-9]/;
// If the field has value, validate the date.
if (pDate && CorrectFormat.test(pDate))
	{
	// Split out the month, day and year variables.
	var Day = pDate.substr(0,2);
	var Month = pDate.substr(3,2);
	var Year = pDate.substr(6,4);
	// Ensure all the values are greater than 0
	if (Month > 0 && Month <=12 && Day > 0 && Day <=31  && Year > 0)
		{
		// Find the max day for the month
		// The default max day is 31
		var maxDays = 31;
		// If the month is April, June, September or November the max day is 30
		if (Month == 4 || Month == 6 || Month == 9 || Month == 11) maxDays = 30;
		if (Month == 2)
			if (Year % 4 > 0) maxDays =28;
			else
				if (Year % 100 == 0 && Year % 400 > 0) maxDays = 28;
				else maxDays = 29;
			// Determine if the day entered is less than the max days for that month.
			if (Day <= maxDays) result = true;
		}
	}
if (!result)
	{alert('El campo "'+display_name+'" no contiene un fecha válida.');
	form.elements[field_name].focus();
	}
return result;
}


// ----------------------------------------------
// Esta función valida que una el texto tenga la forma de hora hh:mm
// ----------------------------------------------
function valid_time()
{
var field_name = valid_time.arguments[0];
var display_name = valid_time.arguments[1];
if (valid_time.arguments.length==2) var form = document.forms[0];
else var form = document.forms[valid_time.arguments[2]];
var pTime = form.elements[field_name].value;
result = false;
// Create a variable to hold the correct format.
var CorrectFormat = /[0-2][0-9]:[0-5][0-9]/;
// If the field has value, validate the date.
if (pTime && CorrectFormat.test(pTime))
	{
	// Split out the hour and minutes variables.
	var hour = pTime.substr(0,2);
	var minute = pTime.substr(3,2);
	// Ensure all the values are greater than 0
	if (hour >= 0 && hour <=23 && minute >= 0 && minute <=59) result=true;
	}
if (!result)
	{alert('El campo "'+display_name+'" no contiene una hora válida.');
	form.elements[field_name].focus();
	}
return result;
}


// -----------------------------------------
// Esta función valida una direccion de e-mail
// -----------------------------------------
function valid_email()
{
var field_name = valid_email.arguments[0];
var display_name = valid_email.arguments[1];
var language = valid_email.arguments[2];
if (valid_email.arguments.length==3) var form = document.forms[0];
else var form = document.forms[valid_email.arguments[3]];
var str = form.elements[field_name].value; 
var formato=/^[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z]+\.{0,1}[a-zA-Z]$/;
result = true;
if ( !formato.test(str) ) result=false;
//if ((str.indexOf('@') == -1) || (str.indexOf('@') == 0) || (str.indexOf('@') == str.length -1)) result = false;
if (!result)
 { if (language==1) alert('El campo "'+display_name+'" no contiene una dirección de email válida.') 
   else alert('The field "'+display_name+'" is not a valid email address.');
   form.elements[field_name].focus(); }
return result
}



// --------------------------------------------
// Esta función valida que un número sea entero
// --------------------------------------------
function valid_int()
{
var field_name = valid_int.arguments[0];
var display_name = valid_int.arguments[1];
if (valid_int.arguments.length==2) var form = document.forms[0];
else var form = document.forms[valid_int.arguments[2]];
var str = form.elements[field_name].value;
var formato=/^-{0,1}\d+$/;
result = true;
if ( !formato.test(str) ) result=false;
if (!result)
 { alert('El campo "'+display_name+'" no es un entero válido.') 
   form.elements[field_name].focus(); }
return result
}


// --------------------------------------------
// Esta función valida que un número sea float y viene el nombre del form
// --------------------------------------------
function valid_float()
{
var field_name = valid_float.arguments[0];
var display_name = valid_float.arguments[1];
var language = valid_float.arguments[2];
if (valid_float.arguments.length==3) var form = document.forms[0];
else var form = document.forms[valid_float.arguments[3]];
var str = form.elements[field_name].value;
result = true;
var formato=/^\d*\.{0,1}\d+$/;
if ( !formato.test(str) ) result=false;
if (!result)
 { if (language==1) alert('El campo "'+display_name+'" no es válido.') 
   else alert('The field "'+display_name+'" is not valid.');
   form.elements[field_name].focus(); }
return result
}


// --------------------------------------------
// Esta función valida que un número este en un rango
// --------------------------------------------
function valid_range(field_name, display_name, range_bot, range_top, formName)
{
var str = document.forms[formName].elements[field_name].value; 
result = true;
if ( str < range_bot || str > range_top ) result = false;
if (!result)
 { alert('El campo "'+display_name+'" debe estar en el rango: '+range_bot+' - '+range_top+'.');
   document.forms[formName].elements[field_name].focus(); }
return result
}


// ---------------------------------------------
// esta funcion verifica que se elija un boton radio
// ---------------------------------------------
function radioSelected(radio_name, display_name, formName)
 {var result = false;
 if (document.forms[formName].elements[radio_name].length)
	for (i=0; i < document.forms[formName].elements[radio_name].length && !result ; i++)
		result = document.forms[formName].elements[radio_name][i].checked;
 else
	result = document.forms[formName].elements[radio_name].checked;
 if (!result)
 	{alert('Debe seleccionar "'+display_name+'".');}
 return result;
 }


// ---------------------------------------------
// esta funcion devuelve el valor elegido en un grupo de radio
// ---------------------------------------------
function getRadioSelected(radio_name, formName)
{var returnResult='';
  if (document.forms[formName].elements[radio_name].length > 0)
	{for (i=0; i < document.forms[formName].elements[radio_name].length; i++)
		if (document.forms[formName].elements[radio_name][i].checked)
			returnResult = document.forms[formName].elements[radio_name][i].value;
	}
else if (document.forms[formName].elements[radio_name].checked)
	returnResult = document.forms[formName].elements[radio_name].value;
return returnResult;
 }


// ---------------------------------------------
// esta funcion pone el array del radio en la forma val1| val2| val3
// ---------------------------------------------
function serializarRadio(radio_name, formName, separator)
 {var returnResult='';
  if (document.forms[formName].elements[radio_name].length > 0)
	{for (i=0; i < document.forms[formName].elements[radio_name].length; i++)
		{if (document.forms[formName].elements[radio_name][i].checked)
			if (returnResult=='') returnResult = document.forms[formName].elements[radio_name][i].value;
			else returnResult += separator+document.forms[formName].elements[radio_name][i].value;
		}
	}
else
	{if (document.forms[formName].elements[radio_name].checked) returnResult = document.forms[formName].elements[radio_name].value;
	}
 return returnResult;
 }


// ---------------------------------------------
// esta funcion tilda todos los chebox
// ---------------------------------------------
function selectRadioAll(radio_name, formName)
 {if (document.forms[formName].elements[radio_name].length > 0)
	{for (i=0; i < document.forms[formName].elements[radio_name].length; i++)
		document.forms[formName].elements[radio_name][i].checked=true;
	}
else
	document.forms[formName].elements[radio_name].checked=true;
 }


// ---------------------------------------------
// esta funcion chequea el valor de un radio o checkbox
// ---------------------------------------------
function setRadioCheck(radio_name, radio_to_check, formName)
 {var result = false;
  if (document.forms[formName].elements[radio_name].length > 0)
	{for (i=0; i < document.forms[formName].elements[radio_name].length && !result ; i++)
		{if (document.forms[formName].elements[radio_name][i].value == radio_to_check)
			{document.forms[formName].elements[radio_name][i].checked = true;
			result = true;}
		}
	}
else
	{if (document.forms[formName].elements[radio_name].value == radio_to_check)
		{document.forms[formName].elements[radio_name].checked = true;
		result = true;}
	}
 return result;
 }



// ---------------------------------------------
// esta funcion verifica que se elija un item de una lista (dropdown)
// ---------------------------------------------
function itemListSelected(select_name, display_name, formName)
 {var result = (document.forms[formName].elements[select_name].selectedIndex > -1);
 if (!result)
 	{alert('Debe seleccionar "'+display_name+'".');
 	//document.forms[formName].elements[radio_name][0].focus();
 	}
 return result;
 }



// ---------------------------------------------
// esta funcion verifica que exista algun valor en la lista
// ---------------------------------------------
function itemListFilled(select_name, display_name, formName)
 {var result = (document.forms[formName].elements[select_name].length > 0);
 if (!result)
 	{alert('Debe seleccionar "'+display_name+'".');
 	//document.forms[formName].elements[radio_name][0].focus();
 	}
 return result;
 }


// ---------------------------------------------
// esta funcion devuelve el valor elegido en una lista (dropdown)
// ---------------------------------------------
function getItemSelected(select_name, formName)
 {var result = false;
 var returnResult;
  if (document.forms[formName].elements[select_name].length > 0)
	{var itemSeleccionado = document.forms[formName].elements[select_name].selectedIndex;
	returnResult = document.forms[formName].elements[select_name].options[itemSeleccionado].value;}
else returnResult = null;
 return returnResult;
 }



// ---------------------------------------------
// agrega el item seleccionado en la lista src a la lista dest
// ---------------------------------------------
function agregarItem(formName, srcList, destList)
{ 
var listSrc =  document.forms[formName].elements[srcList];
  var listDest =  document.forms[formName].elements[destList];
  if (listSrc.selectedIndex > -1)
     {var optValue = listSrc.options[listSrc.selectedIndex].value;
      var optText = listSrc.options[listSrc.selectedIndex].text;
       //me fijo si no existe
       var existe = false;
       for (i=0; i<listDest.length && !existe; i++)
       	if (listDest.options[i].value==optValue) existe=true;
       if (!existe && optValue!='')
      	{listDest.options[listDest.length] = new Option(optText, optValue);
      	}
     }
}


// ---------------------------------------------
// agrega el item seleccionado en la lista src a la lista dest
// ---------------------------------------------
function quitarItem(formName, srcList)
{ var listSrc =  document.forms[formName].elements[srcList];
  if (listSrc.selectedIndex > -1) listSrc.options[listSrc.selectedIndex] = null;
}



// ---------------------------------------------
// esta funcion muestra un dialogo de confirmacion y lo reenvia a la página que viene como parámetro
// ---------------------------------------------
function delConfirmation(delMessage, pageDel, arrayNameParam, arrayValueParam)
 { if (window.confirm(delMessage))
	{ var str = pageDel +'?';
	for (i=1; i < arrayNameParam.length; i++)   str = str + arrayNameParam[i] +'='+ arrayValueParam[i] +'&';
	window.location.assign(str);
	}
 }




function openVerFoto(idFoto) {
window.open('/fotos_ver.asp?idFoto='+idFoto, null, "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=420,height=300");
}

function openImprimir(pagina) { window.open(pagina, null, "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=520,height=500");
}
function enviarEmail(pagina) { window.open(pagina, null, "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=481,height=350");
}
function openOpinionNoticia(id_opinion)
{ window.open('/novedades_opinion_ver.asp?id_opinion='+id_opinion, null, "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=498,height=300"); }
function openOpinionNoticiaNueva(id_noticia)
{ window.open('/novedades_opinion_nueva.asp?id_noticia='+id_noticia, null, "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=481,height=300"); }

function popup_tarjeta_magnetica()
{ window.open('/popup_tarjetas_magneticas.asp', null, "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=520,height=400"); }
function popup_tarjeta_magnetica2()
{ window.open('popup_tarjetas_magneticas.asp', null, "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=520,height=400"); }

function popup_mapa_local(local)
{ window.open('/popup_mapa_local.asp?local='+ local, null, "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=400,height=310"); }



function popup_registrese()
{ window.open('/popup_registrese.htm', null, "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=170,height=180"); }


