/**
 * @param etiquetaCufon (por ejemplo .table a)
 * @param tipoFuente (Helvetica)
 * @param esHover (true o false)
 * @param valorSombreado (2px color negro)
 */
function aplicarCufon(etiquetaCufon,tipoFuente,esHover,valorSombreado){
	Cufon.replace(etiquetaCufon, {hover: esHover, fontFamily: tipoFuente, textShadow: valorSombreado });
}

/**
 * Para evitar redudancia de datos, colocamos aqui la configuracion cufon para las tabs
 * de competicion
 */
function aplicarCufonCompeticion(){
	aplicarCufon("#tblCompetition a","Pirulen",true,"2px 2px #000000");
}

/* comprueba si la cadena es vacia */
function trim(cadena){
	return cadena.replace(/^\s+|\s+$/gi, "");
}

/* Introduce los valores por defecto del mapa googleMaps */
function initialize(idMapa) {
	geocoder = new google.maps.Geocoder();
	var myOptions = {
	  scrollwheel: false,
      draggable: true,
      disableDoubleClickZoom: true,
      streetViewControl: false,
      mapTypeControl: false,
      scaleControl: false,
      navigationControl: false,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    }
	map = new google.maps.Map(document.getElementById(idMapa), myOptions);
}

/* centra el mapa de googleMaps segun la dirección que reciba por parametro */
function centrarMapa(address, zoom){
	map.setZoom(zoom);
    if (geocoder) {
      geocoder.geocode( { 'address': address}, function(results, status) {
        if (status == google.maps.GeocoderStatus.OK) {
        	map.setCenter(results[0].geometry.location);
        } else {
        	map.setCenter(new google.maps.LatLng(0,0));
        }
      });
	}
}

/* Añade un mensaje a la posicion seleccionadaen en googleMaps */
function anyadirMarcador(address, titulo, centrar, zoom, imagenMarcador){
    if (geocoder) {
    	if(zoom > 0) {
    		map.setZoom(zoom);
    	}
	    geocoder.geocode( {'address': address}, function(results, status) {
	    	if (status == google.maps.GeocoderStatus.OK) {
		        if(centrar == true) {
		        	map.setCenter(results[0].geometry.location);
		        }
		        if(trim(titulo) != "") {
					var marker = new google.maps.Marker({
						icon: imagenMarcador,
						map: map, 
						position: results[0].geometry.location
					});
					var infowindow = new google.maps.InfoWindow({ content: titulo });
					google.maps.event.addListener(marker, 'click', function() {});
		        }
			}
		});
	}
}

/* validar formato del correo electrónico */
function validarEmail(email){
	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	return reg.test(email);
}

/* comprueba si la cadena es vacia */
function trim(cadena){
	return cadena.replace(/^\s+|\s+$/gi, "");
}
