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;
}




// ----------------------------------------------
// Esta función valida que una fecha este correcta y viene el formulario
// ----------------------------------------------
function ValidDate()
{
var field_name = ValidDate.arguments[0];
var display_name = ValidDate.arguments[1];
if (ValidDate.arguments.length==2) var form = document.forms[0];
else var form = document.forms[ValidDate.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 una direccion de e-mail
// -----------------------------------------
function parse_email()
{
var field_name = parse_email.arguments[0];
var display_name = parse_email.arguments[1];
var language = parse_email.arguments[2];
if (parse_email.arguments.length==3) var form = document.forms[0];
else var form = document.forms[parse_email.arguments[3]];
var str = form.elements[field_name].value; 
result = true;
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
}



function parse_DNI(field_name, display_name, language)
{
var str = document.forms[0].elements[field_name].value; 
result = true;
if ( (isNaN(str)==true) || (str.length != 11)) result = false;
if (!result)
 { if (language==1) alert('El campo "'+display_name+'" no contiene un numero válido de DNI.') 
   else alert('The field "'+display_name+'" is not a valid email address.');
   document.forms[0].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];
var language = valid_int.arguments[2];
if (valid_int.arguments.length==3) var form = document.forms[0];
else var form = document.forms[valid_int.arguments[3]];
var str = form.elements[field_name].value;
result = true;
if ( (isNaN(parseInt(str))==true) || str.indexOf('.') > -1 ||  str.indexOf(',') > -1) 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 sea float y viene el nombre del form
// --------------------------------------------

function valid_float(field_name, display_name, language, formName)
{
var str = document.forms[formName].elements[field_name].value; 
result = true;
if ( (isNaN(parseFloat(str))==true) ) 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.');
   document.forms[formName].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 función valida que el texto de un campo no sea maoy que size
// compare 1= | 2< | 3<= | 4> | 5>= 
// --------------------------------------------
function check_size(field_name, display_name, size, compare, formName)
{
var str = document.forms[formName].elements[field_name].value; 
result = false;
if (compare==1 && str.length == size) result = true;
if (compare==2 && str.length <  size) result = true;
if (compare==3 && str.length <= size) result = true;
if (compare==4 && str.length >  size) result = true;
if (compare==5 && str.length >= size) result = true;
if (!result)
 { alert('El tamaño del campo "'+display_name+'" no es válido.') 
   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;
 for (i=0; i < document.forms[formName].elements[radio_name].length && !result ; i++)
 	result = document.forms[formName].elements[radio_name][i].checked;
 if (!result)
 	{alert('Debe seleccionar "'+display_name+'".');
 	document.forms[formName].elements[radio_name][0].focus();
 	}
 return result;
 }

// ---------------------------------------------
// esta funcion devuelve el valor elegido en un grupo de radio
// ---------------------------------------------
function getRadioSelected(radio_name, formName)
 {var result = false;
 var returnResult;
  if (document.forms[formName].elements[radio_name].length > 0)
	{for (i=0; i < document.forms[formName].elements[radio_name].length && !result ; i++)
		{result = document.forms[formName].elements[radio_name][i].checked;
		returnResult = document.forms[formName].elements[radio_name][i].value;}
	}
else
	{result = document.forms[formName].elements[radio_name].checked;
	returnResult = document.forms[formName].elements[radio_name].value;
	}
 return returnResult;
 }


// ---------------------------------------------
// 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 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;
 }


//--------------------------------------------------------------------------------------------------------------
// 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 
}



function openImprimir(id_n, id_s) { window.open('imprimeNota.asp?id_n='+ id_n +'&id_s='+ id_s, null, "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=520,height=500");
}

function openConsultar(id_n) { window.open('consultarNota.asp?id_n='+ id_n, null, "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=450,height=400");
}
