/* Rutinas para la programación */
var mustShowGrilla = false;
var programacion = new Array();
function getProgramacion() {
	$.ajax({
		type: "GET",
		//url: "datos/programacion.xml",
		url: "js.lib/xmlLoader.php?path=programacion",
		dataType: "xml",
		processData: false,
		beforeSend: function(){
			
		},
		success: function(data){
			if (typeof data == "string") {
				xml = new ActiveXObject("Microsoft.XMLDOM");
				xml.async = false;
				xml.loadXML(data);
			} else {
				xml = data;
			}
			parseProgramacion(data);
			mostrarProgramacionLateral();
		},
		error: function(msg){
			
		}
	});
}
var programaActual;
function parseProgramacion(xml) {
	$(xml).find('programacion').each(function(){
		$(this).find('programa').each(function(){
			var unPrograma = new Array();
				unPrograma.push( $(this).find('nombre').text() );
					var inicia = $(this).find('inicia').text().split(':');
					var iniciaTime = new Date();
						iniciaTime.setHours(inicia[0]);
						iniciaTime.setMinutes(inicia[1]);
				unPrograma.push( iniciaTime );
				var termina = $(this).find('termina').text().split(':');
					var terminaTime = new Date();
						terminaTime.setHours(termina[0]);
						terminaTime.setMinutes(termina[1]);
				unPrograma.push( terminaTime );
				unPrograma.push( $(this).find('integrantes').text() );
				unPrograma.push( $(this).find('descripcion').text() );
				unPrograma.push( $(this).find('foto').text() );
				unPrograma.push( $(this).find('dias').text() );
			programacion.push( unPrograma );
			// determino si se trata del programa actual, en base al día y horario
			var hoy = time.getDay();
			var bloque;
			if (hoy==0) { bloque = 'domingo'; }
			if (hoy==1||hoy==2||hoy==3||hoy==4||hoy==5) { bloque = 'semana'; }
			if (hoy==6) { bloque = 'sabado'; }
			var dias = $(this).find('dias').text();
			//if ( bloque==dias && time>iniciaTime && time<terminaTime ) {
			if ( (dias.indexOf(hoy)!=(-1)) && time>iniciaTime && time<terminaTime ) {
				programaActual = programacion.length-1;
			}
		});
	});
	if (mustShowGrilla) {
		showGrilla();
	}
}
function showGrilla() {
	var cadena = '';
		cadena += '<table id="tabla_programacion" class="tabla_programacion" cellspacing="0">';
		cadena += '<tr class="top">';
		cadena += '<th>Días</th><th>Horario</th><th>Nombre</th><!--<th>Ampliar</th>--></tr>';
		for(var i=0; i<programacion.length; i++) {
			var styled = '';
			if ( i == programaActual ) {
				styled = ' style="background-color: #FF7F2A;"';
				//mostrarDetallePrograma(programacion[i][0]);
			}
			cadena += '<tr'+styled+'>';
			var dias = '';
			if ( programacion[i][6].indexOf('1') != -1 ) { dias += '<span class="resaltar" title="Al aire los lunes">L</span>' } else { dias += '<span>L</span>' };
			if ( programacion[i][6].indexOf('2') != -1 ) { dias += '<span class="resaltar" title="Al aire los martes">M</span>' } else { dias += '<span>M</span>' };
			if ( programacion[i][6].indexOf('3') != -1 ) { dias += '<span class="resaltar" title="Al aire los miércoles">M</span>' } else { dias += '<span>M</span>' };
			if ( programacion[i][6].indexOf('4') != -1 ) { dias += '<span class="resaltar" title="Al aire los jueves">J</span>' } else { dias += '<span>J</span>' };
			if ( programacion[i][6].indexOf('5') != -1 ) { dias += '<span class="resaltar" title="Al aire los viernes">V</span>' } else { dias += '<span>V</span>' };
			if ( programacion[i][6].indexOf('6') != -1 ) { dias += '<span class="resaltar" title="Al aire los sábados">S</span>' } else { dias += '<span>S</span>' };
			if ( programacion[i][6].indexOf('0') != -1 ) { dias += '<span class="resaltar" title="Al aire los domingos">D</span>' } else { dias += '<span>D</span>' };
			/*
			if ( programacion[i][6] == 'semana' ) { dias = 'Lunes a viernes' }
			if ( programacion[i][6] == 'sabado' ) { dias = 'Sábados' }
			if ( programacion[i][6] == 'domingo' ) { dias = 'Domingos' }
			*/
			cadena += '<td class="dias"><span>'+dias+'</span></td>';
			var minutes = programacion[i][1].getMinutes();
				if ( minutes < 10 ) { minutes = '0'+minutes; }
			cadena += '<td class="horario">'+programacion[i][1].getHours()+':'+minutes+'</td>';
			cadena += '<td>'+programacion[i][0]+'</td>';
			/*
			cadena += '<td class="ampliar"><a href="#top"><img src="css/imgs/tabla_programacion_ampliar.gif" alt="Ampliar" onclick="mostrarDetallePrograma(\''+programacion[i][0]+'\');" /></a></td>';
			*/
			cadena += '</tr>';
		}
		cadena += '<tr class="bottom"><td colspan="4"></td></tr>';
		cadena += '</table>';
	$('#programacion_grilla').html( cadena );
	$('#tabla_programacion tr:even').addClass( 'even' );
}
function mostrarDetallePrograma(nombre) {
	for(var i=0; i<programacion.length; i++) {
		if ( programacion[i][0] == nombre ) {
			var cadena = '';
				cadena += '<table id="tabla_programacion_detalle" class="tabla_programacion_detalle" cellspacing="0">';
				cadena += '<tr>';
				cadena += '<td class="imagen" rowspan="5"><img src="datos/programacion/'+programacion[i][5]+'" alt="'+programacion[i][0]+'" /></td>';
				var bloque = '';
					if ( (programacion[i][6].indexOf('1')!=-1) && (programacion[i][6].indexOf('2')!=-1) && (programacion[i][6].indexOf('3')!=-1) && (programacion[i][6].indexOf('4')!=-1) && (programacion[i][6].indexOf('5')!=-1) ) {
						bloque = 'Lunes a viernes';
					} else {
						if (programacion[i][6].indexOf('1')!=-1) { bloque += 'Lunes, ' }
						if (programacion[i][6].indexOf('2')!=-1) { bloque += 'Martes, ' }
						if (programacion[i][6].indexOf('3')!=-1) { bloque += 'Miércoles, ' }
						if (programacion[i][6].indexOf('4')!=-1) { bloque += 'Jueves, ' }
						if (programacion[i][6].indexOf('5')!=-1) { bloque += 'Viernes, ' }
						if (programacion[i][6].indexOf('6')!=-1) { bloque += 'Sabado, ' }
						if (programacion[i][6].indexOf('0')!=-1) { bloque += 'Domingo, ' }
						bloque = bloque.substring(0,(bloque.length-2));
					}
					if ( bloque.lastIndexOf(',')!=-1 ) {
						bloque = bloque.substring(0,bloque.lastIndexOf(',')) +' y '+bloque.substring(bloque.lastIndexOf(',')+2,bloque.length);
					}
				var minutes = programacion[i][1].getMinutes();
					if ( minutes < 10 ) { minutes = '0'+minutes; }
				cadena += '<th>Horario:</th><td>'+bloque+' a las '+programacion[i][1].getHours()+':'+minutes+'</td>';
				cadena += '</tr>';
				cadena += '<tr><th>Nombre:</th><td>'+programacion[i][0]+'</td></tr>';
				cadena += '<tr><th>Integrantes:</th><td>'+programacion[i][3]+'</td></tr>';
				cadena += '<tr><th>Descripción:</th><td>'+programacion[i][4]+'</td></tr>';
				cadena += '</table>';
			$('#programacion_detalle').html( cadena );
			break;
		}
	}
}
function mostrarProgramacionLateral() {
	var cadena = '';
	if ( programaActual != null ) {
		cadena += '<div class="header icono_programacion">Programación</div>';
		cadena += '<div class="destacado_top"></div>';
		cadena += '<div class="destacado_middle">';
		cadena += '<div class="prog_nombre">'+programacion[programaActual][0]+'</div>';
		/*
		cadena += '<div class="prog_imagen"><img src="datos/programacion/'+programacion[programaActual][5]+'" alt="'+programacion[programaActual][0]+'" /></div>';
		*/
		var minutes = programacion[programaActual][1].getMinutes();
			if ( minutes < 10 ) { minutes = '0'+minutes; }
		cadena += '<div class="prog_horario">'+programacion[programaActual][1].getHours()+':'+minutes+'</div>';
		cadena += '<div class="prog_desc">'+programacion[programaActual][4];
		cadena += '<a href="programacion.php"><div class="leer_mas"></div></a><div class="cleaner"></div></div>';
		cadena += '</div>';
		cadena += '<div class="destacado_bottom"></div>';
	} else {
		cadena += '<div class="header icono_programacion">Programación</div>';
		cadena += '<div class="destacado_top"></div>';
		cadena += '<div class="destacado_middle">';
		cadena += '<div class="prog_desc">No hay ningún programa al aire<div class="cleaner"></div></div>';
		cadena += '</div>';
		cadena += '<div class="destacado_bottom"></div>';
	}
	$('#programacionLateral').html( cadena );
}

