
	var arrayOfRolloverClasses = new Array();
	var arrayOfClickClasses = new Array();
	var activeRow = false;
	var activeRowClickArray = new Array();
	
	function highlightTableRow()
	{
		var tableObj = this.parentNode;
		if(tableObj.tagName!='TABLE')tableObj = tableObj.parentNode;

		if(this!=activeRow){
			this.setAttribute('origCl',this.className);
			this.origCl = this.className;
		}
		this.className = arrayOfRolloverClasses[tableObj.id];
		
		activeRow = this;
		
	}
	
	function clickOnTableRow()
	{
		var tableObj = this.parentNode;
		if(tableObj.tagName!='TABLE')tableObj = tableObj.parentNode;		
		
		if(activeRowClickArray[tableObj.id] && this!=activeRowClickArray[tableObj.id]){
			activeRowClickArray[tableObj.id].className='';
		}
		this.className = arrayOfClickClasses[tableObj.id];
		
		activeRowClickArray[tableObj.id] = this;
				
	}
	
	function resetRowStyle()
	{
		var tableObj = this.parentNode;
		if(tableObj.tagName!='TABLE')tableObj = tableObj.parentNode;

		if(activeRowClickArray[tableObj.id] && this==activeRowClickArray[tableObj.id]){
			this.className = arrayOfClickClasses[tableObj.id];
			return;	
		}
		
		var origCl = this.getAttribute('origCl');
		if(!origCl)origCl = this.origCl;
		this.className=origCl;
		
	}
		
	function addTableRolloverEffect(tableId,whichClass,whichClassOnClick)
	{
		
		arrayOfRolloverClasses[tableId] = whichClass;
		arrayOfClickClasses[tableId] = whichClassOnClick;
		
		
		var tableObj = document.getElementById(tableId);
		var tBody = tableObj.getElementsByTagName('TBODY');
		if(tBody){
			var rows = tBody[0].getElementsByTagName('TR');
		}else{
			var rows = tableObj.getElementsByTagName('TR');
		}
		for(var no=0;no<rows.length;no++){
			rows[no].onmouseover = highlightTableRow;
			rows[no].onmouseout = resetRowStyle;
			
			if(whichClassOnClick){
				rows[no].onclick = clickOnTableRow;	
			}
		}
		
	}
	
	function checkEnter(e){ //e is event object passed from function invocation
		var characterCode //literal character code will be stored in this variable
		
		if(e && e.which){ //if which property of event object is supported (NN4)
			e = e
			characterCode = e.which //character code is contained in NN4's which property
		}
		else{
			e = event
			characterCode = e.keyCode //character code is contained in IE's keyCode property
		}
		
		if(characterCode == 13){ //if generated character code is equal to ascii 13 (if enter key)
			return true
		}
		else{
			return false
		}
		
	}
	
	
	
	function validate_not_null(fieldname, formid, count, caption) {
    var err = '';
    var f = fieldname;
    if(document.forms[formid] && document.forms[formid][f]) {
			var v = document.forms[formid][f].value;
			err += ( (/[\S]+/).test(v) ?'':' \nEl campo "'+caption+'" no puede estar vacío.');
    }
    return err;
}

function validate_number(fieldname, formid, etiqueta) {
    var err = '';
    var f = fieldname;
    if(document.forms[formid] && document.forms[formid][f]) {
			if(isNaN(document.forms[formid][f].value)) {
				err = '\nEl campo "'+etiqueta+'" debe ser numérico';
			}
    }
    return err;
}

function validate_fk(fieldname, formid, etiqueta) {
    var e=0;
    var err = '';
	if(document.forms[formid] && document.forms[formid][fieldname]) {
		var v = document.forms[formid][fieldname].value;
		if(v == -1){
			err = '\nDebe seleccionar un valor para el campo "'+etiqueta+'"';
		}
	}
    return err;
}

function validate_date(fieldname, formid, etiqueta) {
    var err = '';
    if (document.forms[formid][fieldname + '_dia'].value == 0 || document.forms[formid][fieldname + '_mes'].value == 0 || document.forms[formid][fieldname + '_anio'].value == 0)
		err = '\nEl campo "'+etiqueta+'" debe poseer una fecha valida';

	return err;

}

function mask_number(f,e,dot,signed) {
    var c=((!isNaN(e.which))?e.which:(e.keyCode?e.keyCode:0));

	if (arguments[3] == null){
		signed = false;
	}

	//backspace
	if (c == 8) 
		return c;
	else
		if(c)
			if(dot)  	
				if (signed)
					if (f.value.length == 0)
						return ((/^\d$|^-$/).test(String.fromCharCode(c)+f.value));										
					else
						return ((/^-?\d+\.?\d*$/).test(f.value+String.fromCharCode(c)));										
				else
					return ((/^\d+\.?\d*$/).test(f.value+String.fromCharCode(c)));
				
			else
				if (signed)
					if (f.value.length == 0)
						return ((/^\d$|^-$/).test(String.fromCharCode(c)+f.value));						
					else
						return ((/^-?\d*$/).test(f.value+String.fromCharCode(c)));		
				else
					return ((/^\d+$/).test(f.value+String.fromCharCode(c)));
					

}	


function validate_extension(fieldname,formid,etiqueta){
	var err = '';
	if(document.forms[formid][fieldname]){
		var filename = document.forms[formid][fieldname].value;
		if(filename != ''){
			var ext = filename.substr(filename.lastIndexOf('.'),4);
			if(ext != '.jpg' && ext !='.gif')
				err = '\nFormato de foto no aceptado. La foto debe ser ".gif" o ".jpg" ';
		}
	}
	return err;

}

function    fecha_es_mayor( form, campo1, campo2 ) {
    var err = '';
    var fecha1 = (new Date(
		document.forms['ABM'][campo1+'_anio'].value,
		document.forms['ABM'][campo1+'_mes'].value,
		document.forms['ABM'][campo1+'_dia'].value
		)).getTime();
	var fecha2 = (new Date(
		document.forms['ABM'][campo2+'_anio'].value,
		document.forms['ABM'][campo2+'_mes'].value,
		document.forms['ABM'][campo2+'_dia'].value
		)).getTime();

	if(fecha1>fecha2) {
		err = '\nLa fecha de inicio debe ser menor a la fecha de fin';
	}
	return err;
}

function    ASSERT(cond, msg) {
    if(!cond) alert('ASSERT: '+msg);
    return;
}
function    DEBUG(msg) {
    var pt = dom_html('DEBUG');
    if(!pt) pt='';
    dom_html('DEBUG', pt+'<br/>* '+msg );
}

function    INPUTMASK(elt, evt, re) {
    var c = String.fromCharCode(evt.keyCode?evt.keyCode:evt.which);
    if(c.charCodeAt(0)<32) return true;
    re = new RegExp(re);
    var s = elt.value + c;
    return re.test(s)
}

function ValidateMacAddress(macaddr) {  
	var reg1 = /^[A-Fa-f0-9]{2}[A-Fa-f0-9]{2}[A-Fa-f0-9]{2}[A-Fa-f0-9]{2}[A-Fa-f0-9]{2}[A-Fa-f0-9]{2}$/;

   if (reg1.test(macaddr)) {
      return true;
   }else {
	  return false;
   }
}


function submitenter(myfield,e)
{
var keycode;
if (window.event) keycode = window.event.keyCode;
else if (e) keycode = e.which;
else return true;

if (keycode == 13)
   {
   myfield.form.submit();
   return false;
   }
else
   return true;
}


