// JavaScript Document -------------------- Funciones 

//Busca carácteres que no sean espacio en blanco en una cadena
function Texto_Vacio($texto) {
	for (i = 0; i < $texto.length; i++ ) {
		if ( $texto.charAt(i) != " " ) {
				return false;
		}
	}
	return true;
}


//Está función me permite validar el ingreso de textos sin espacios en blanco
function Valida_Texto($campo) {
	$texto_valido = Texto_Vacio($campo); 
	if ($texto_valido){
		$campo="";
	} 
	return $campo;
}

//Me permite remplazar valores dentro de una cadena
function str_replace($cambia_esto, $por_esto, $cadena) {
      return $cadena.split($cambia_esto).join($por_esto);
}

//Esta función me permite hacer focus
function Realizar_Focus($nombre_id){
	document.getElementById($nombre_id).focus();
}

//Valida la fecha del calendario
function Valida_Fecha($char, $mozChar) {
	if($mozChar != null) { // Navegadores compatibles con Mozilla
		if(($mozChar >= 48 && $mozChar <= 57) || $mozChar == 0 || $char == 8 || $mozChar == 13 || $mozChar == 45 || $mozChar == 9){
			$retorne_valor = true;
		} else{
			$retorne_valor = false;
		}
	} else { // navegadores compatibles con IE
		if(($char >= 48 && $char <= 57) || $char == 13 || $char == 45){
			$retorne_valor = true;
		} else{
			$retorne_valor = false;
		}
	}
	return $retorne_valor;
}


//Determino un numero de caracteres para un campo de linea multiple
function Limitar_Textarea($campo, $maximo_caracteres){
	var elemento = document.getElementById($campo);
	if(elemento.value.length >= $maximo_caracteres) {
		window.alert ("El número máximo de caracteres es de " + $maximo_caracteres);
		return false;
  	}
  	else {
   		return true;
  	}
}

//Mostar el número de carácteres dentro de un campo
function Cantidad_Caracteres($campo, $recipiente){
	$objeto = document.getElementById($campo);
	$contenedor = document.getElementById($recipiente);
	$numero_caracteres = $objeto.value.length;
	$numero_caracteres = $numero_caracteres + 1;
	if ($objeto.value == ""){
		$contenedor.innerHTML = "";
	} else {
		$contenedor.innerHTML = $numero_caracteres + " letras";
	}
}

//Valida la introducción de Texto en mayúsculas con números
function Valida_Texto_May($char, $mozChar){
	if($mozChar != null) { // Navegadores compatibles con Mozilla
		if(($mozChar >= 48 && $mozChar <= 57) || ($mozChar >= 65 && $mozChar <= 90) || ($mozChar >= 191 && $mozChar <= 223) || $mozChar == 0 || $char == 8 || $mozChar == 13 || $mozChar == 32 || $mozChar == 40 || $mozChar == 41 || $mozChar == 9){
			$retorne_valor = true;
		} else{
			$retorne_valor = false;
		}
	} else { // navegadores compatibles con IE
		if(($char >= 48 && $char <= 57) ||($char >= 65 && $char <= 90) || ($mozChar >= 191 && $mozChar <= 223) || $char == 13 || $char == 32  || $char == 40 || $char == 41){
			$retorne_valor = true;
		} else{
			$retorne_valor = false;
		}
	}
	return $retorne_valor;
}

//Valida la introducción de únicamente Texto y Números
function Valida_Texto_Num($char, $mozChar){
	if($mozChar != null) { // Navegadores compatibles con Mozilla
		if(($mozChar >= 48 && $mozChar <= 57) || ($mozChar >= 65 && $mozChar <= 90) || ($mozChar >= 97 && $mozChar <= 122) || $mozChar == 0 || $mozChar == 241 || $char == 8 || $mozChar == 13 || $mozChar == 9){
			$retorne_valor = true;
		} else{
			$retorne_valor = false;
		}
	} else { // navegadores compatibles con IE
		if(($char >= 48 && $char <= 57) || ($char >= 65 && $char <= 90) || ($char >= 97 && $char <= 122) || $char == 241 || $char == 13){
			$retorne_valor = true;
		} else{
			$retorne_valor = false;
		}
	}
	return $retorne_valor;
}


//Está función me permite verificar que el email sea valido
function Validar_Email($elemento, $nombre_elemento){
	var $s = $elemento.value;
	var $filter = /^[A-Za-z][A-Za-z0-9_]*@[A-Za-z0-9_]+\.[A-Za-z0-9_.]+[A-za-z]$/;

	if ($s.length == 0){
		return true;		
	}
	if ($filter.test($s)){
		return true;
	} else {
		window.alert("EMAIL NO VALIDO:\nIngrese una nueva dirección de correo, o verifique nuevamente su correo");	
	}
	return false;
}

//Valida la introducción de únicamente Números
function Valida_Num($char, $mozChar){
	if($mozChar != null) { // Navegadores compatibles con Mozilla
		if(($mozChar >= 48 && $mozChar <= 57) || $mozChar == 0 || $mozChar == 241 || $char == 8 || $mozChar == 13 || $mozChar == 9){
			$retorne_valor = true;
		} else{
			$retorne_valor = false;
		}
	} else { // navegadores compatibles con IE
		if(($char >= 48 && $char <= 57) || $char == 241 || $char == 13){
			$retorne_valor = true;
		} else{
			$retorne_valor = false;
		}
	}
	return $retorne_valor;
}

//Valido los datos enviados por el formulario de recuperación de usuario y contraseña
function confirmar_datos_recuperacion(formulario){
		$email = formulario.email_enviado.value;
		var $s = $email.value;
		var $filter = /^[A-Za-z][A-Za-z0-9_]*@[A-Za-z0-9_]+\.[A-Za-z0-9_.]+[A-za-z]$/;
		if ($s.length == 0){
			return true;		
		}
		if ($filter.test($s)){
			return true;
		} else {
			window.alert("EMAIL NO VALIDO:\nIngrese una nueva dirección de correo, o verifique nuevamente su correo");	
		}
		return false;
}

//Cambiar de carpeta para el listado de imagenes
function cambiar_carpeta($campo, $lugar2){
	$lugar = $lugar2+$campo.value;
	window.location = $lugar;
}

//Me permite la visualización de cualquier imagen
function visualizar_imagenes($ubicacion_archivo, $ancho_ventana, $alto_ventana, $nombre_ventana){
	var $atributos="width="+$ancho_ventana+",height="+$alto_ventana+",scrollbars=yes,top=10,left=10,resizable=yes,directories=no,location=no,menubar=no,status=no,toolbar=no";
	window.open($ubicacion_archivo, $nombre_ventana, $atributos);	
}

//Abrir ventanas externas
function abrir_ventana($ventana, $nombre, $atributos){
	window.open($ventana, $nombre, $atributos);	
}

//me permite mostrar o ocultar una region
function ocultar_mostrar_ventana($region){
	$objeto = document.getElementById($region);
	if($objeto.style.display == ""){
		$objeto.style.display = "none";
	}else{
		$objeto.style.display = "";
	}
}