/**
 * Scripts personalizados para el módulo default
 */

var timeout;

$(function() {
	
	// Slideshow de clubs
	$("#gallery-club #slideshow-clubs").easySlider({ 
			auto: false, 
			continuous: true, 
			numeric: false, 
			width: 216, 
			height: 150, 
			speed: 1000, 
			pause: 4500, 
			prevShow:		true,
			nextShow:		true,
			buttonsShow:	true });
	
	// Calendario de regatas
	$("#calendar-race").datepicker({
		firstDay: 1,
		dayNamesMin: ['Do', 'Lu', 'Ma', 'Mi', 'Ju', 'Vi', 'Sa'],
		monthNames: ['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre'],
		dateFormat:'yy-mm-dd',
		onChangeMonthYear: function(year, month, inst) {
			//timeout = setTimeout(function () {revisa();},1000);
		},
		beforeShowDay: function(date) {
			dateFormated = date.getFullYear()+'-'+(date.getMonth()-(-1))+'-'+date.getDate();

			// Lanzamos una petición de Ajax para darle funcionalidad al calendario
			// Lo hacemos al pintar el día 21, para garantizarnos que solo se hace una vez
			if (date.getDate() == 21) {
				
				$.ajax({ 
					url: Common.url('/default/ajax/puntualracesdays/date/'+dateFormated), 
					success: function(data) {
						var count = 0; 
						
						$('#calendar-race tbody td').each(function () {
							if ($(this).hasClass('calendar-'+data.dates[count])) {
								$(this).find('a').addClass('ui-state-highlight');
								count++;
							}
							else {
								$(this).addClass('ui-datepicker-unselectable');
								if ($(this).find('a').hasClass('ui-state-highlight')) {
									$(this).find('a').removeClass('ui-state-highlight');
								}
							}
						});
					},
					complete: function(request,result) {
						switch(result) {
							case 'error': case 'timeout': case 'notmodified': case 'parsererror':
									alert('No ha sido posible ejecutar esta acción. Ha ocurrido un error: '+result);
								break;
						}
					}
				});
				
			}
			
			return [true, 'calendar-'+dateFormated];
		},
		onSelect: function(dateText, inst) {
			// Cargo las regatas de este día
			$.ajax({ 
				url: Common.url('/default/ajax/puntualracesday/date/'+dateText), 
				success: function(data) {
					$('#index-races').html('');
					
					$('#index-races').append($('<div>').addClass('calendar-race-date').html(data.date));
					
					if (data.races.length > 0) {
						for (i=0; i<data.races.length; i++) {
							var index = i;
							var item = data.races[i];
							var div1 = $('<div>').addClass('calendar-race-item');
							if (index == 0) div1.addClass('first');
							
							var div2 = $('<div>').addClass('calendar-race-title');
							div2.append($('<a>').attr('href',Common.url('/default/regatas/ficha/id/'+item.id_race)).html(item.name));
							div1.append(div2);
							div1.append($('<div>').addClass('calendar-race-club').html(item.club));
							$('#index-races').append(div1);
						}
					}
					else {
						var div1 = $('<div>').addClass('calendar-race-item').addClass('first');
						
						div1.append($('<div>').addClass('calendar-race-club').html('No hay competiciones este día'));
						$('#index-races').append(div1);
					}
				},
				complete: function(request,result) {
					switch(result) {
						case 'error': case 'timeout': case 'notmodified': case 'parsererror':
								alert('No ha sido posible ejecutar esta acción. Ha ocurrido un error: '+result);
							break;
					}
				}
			});
		}
	});
});

// Arreglamos las imagenes del slide de clubes
$(window).load(function() {
	$("#gallery-club #slideshow-clubs img").each(function(item, index) {
		if ($(this).height() > 102) $(this).height(102);
	});
	$("#gallery-club #slideshow-clubs .clubanchor").each(function(item, index) {
		if ($(this).height() < 20) $(this).parent().css('padding-top','6px');
		else {
			$(this).parent().css('padding-top','0px');
			$(this).parent().css('line-height','14px');
		}
	});
});


