//  frm: Nombre del formulario para las funciones que lo incluyen

//  Verificar si toda la cadena es espacios en blanco
	function countblank(str) {
		var cont=0;
		for (var i=0; i<str.length; i++) {
			if (str.charAt(i)==" ") {
				cont=cont+1;
			}
		}
		return cont;
	}

//  Suprimir espacios en blanco a la izquierda
	function ltrim(str) {
		if (countblank(str)==str.length) {
			return "";
		}
		else{
			for (var i=0; str.charAt(i)<=" "; i++);
			return str.substring(i,str.length);
		}
	}

//  Suprimir espacios en blanco a la derecha
	function rtrim(str) {
		if (countblank(str)==str.length) {
			return "";
		}
		else{
			for (var i=str.length-1; str.charAt(i)<=" "; i--);
			return str.substring(0,i+1);
		}
	}

//  Suprimir espacios en blanco a la izquierda y derecha
	function trim(str) {
		return ltrim(rtrim(str));
	}

//  Actualizar los valores de los controles "text" de un formulario a cadena sin espacios en blanco al inicio y fin
	function formdeleteblank(frm){
		var control="";
		var valcontrol="";
		for (var i=0; i<eval(frm+".elements.length"); i++){
			if(eval(frm+".elements[i].type")=="text"){
				control=frm+"."+eval(frm+".elements[i].name")+".value";
				valcontrol=trim(eval(frm+".elements[i].value"));
				eval(control+"='"+valcontrol+"'");
			}
		}
	}

//  Verificar si email es válido
	function valida_email(email){
		if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email))){
			return (0);
		}
	}

//  1. Evento onKeyPress: Contar caracteres en un control text de un control textarea
	// ctextarea: nombre del control textarea
	// ctext: nombre del control text
	// maxcar: número máximo de caracteres permitidos
	function cuenta_caracteres(frm, ctextarea, ctext, maxcar){
		var texto=eval(frm+"."+ctextarea+".value");
		var longitud=texto.length+1; // Se suma 1 por el Keypress
		if(longitud<=maxcar){
			eval(frm+"."+ctext+".value="+longitud);
		}
		else{
			eval(frm+"."+ctext+".value="+maxcar);
			alert("El texto debe contener hasta "+maxcar+" caracteres");
			eval(frm+"."+ctextarea+".focus()");
		}
	}			

//  2. Evento onFocus: Confirmar el texto que debe quedar en el control textarea luego del evento onKeyPress
	function establecer_caracteres(frm, ctextarea, ctext, maxcar){
		var texto=eval(frm+"."+ctextarea+".value");
		var longitud=texto.length;
		if(longitud>maxcar){
			eval(frm+"."+ctextarea+".value='"+texto.substr(0,maxcar)+"'");
			eval(frm+"."+ctextarea+".focus()");
		}
		else{
			eval(frm+"."+ctext+".value="+longitud);
		}
	}
