/////////////////////////////////////////////////// // DECLARACIONES DE VARIABLES Y OBJETO A NIVEL DE PAGINA Y VENTANA var xmlhttp,xmlhttp2,xmlhttp3; var m_reseting=false; var p_reseting=false; var recall_url=""; /////////////////////////////////////////////////// ////////////////////////////////////////////////////// // FUNCIONES PARA EL FORMULARIO DEL BUSCADOR DE RESULTADOS function changeFrmResults(){ var estilo=$('cbResMod').options[$('cbResMod').selectedIndex].value; var url='../php/get_results_list.php?style=' + estilo; new Ajax.Request(url, { method:'get', onSuccess: function(transport){ var temp=transport.responseText.split("@@@"); var sels=eval(temp[0]); var p1=eval(temp[1]); var p2=eval(temp[1]); var p3=eval(temp[1]); var p4=eval(temp[1]); var p5=eval(temp[1]); if(sels[0]!=0 && p1[sels[0]]!=undefined) p1[sels[0]].selected=1; if(sels[1]!=0 && p2[sels[0]]!=undefined) p2[sels[1]].selected=1; if(sels[2]!=0 && p3[sels[0]]!=undefined) p3[sels[2]].selected=1; if(sels[3]!=0 && p4[sels[0]]!=undefined) p4[sels[3]].selected=1; if(sels[4]!=0 && p5[sels[0]]!=undefined) p5[sels[4]].selected=1; fillPelotariCombo('cbResA1',p1); fillPelotariCombo('cbResA2',p2); fillPelotariCombo('cbResA3',p3); fillPelotariCombo('cbResB1',p4); fillPelotariCombo('cbResB2',p5); // aprovechamos para habilitar los combos de la izquierda... $('cbResA1').disabled=$('cbResA2').disabled=$('cbResA3').disabled=$('cbResMod').selectedIndex==0 ? true : false; checkDisabled(); }, onFailure: function(){ alert('error en la carga de la lista de pelotaris en el buscador de pelotaris') } }); } // Esta función valida las selecciones que ha hecho el usuario en los combos del buscador. Si no hay // nada raro en ellas, devuelve true y permite que se envíe el formulario. De lo contrario, devuelve false function checkFrmResults(){ retorno=true; var errores=""; // Si no hemos elegido la modalidad, o si hay alguna fecha vacía, no dejamos seguir if(($('cbResMod').selectedIndex==0) || ($('calRes1').value=='' || $('calRes2').value=='')){ retorno=false; errores+='- ' + val_msg_1 + '\n'; } // Si dos combos tienen el mismo valor no dejamos seguir var arr=[parseInt($('cbResA1').value),parseInt($('cbResA2').value),parseInt($('cbResA3').value),parseInt($('cbResB1').value),parseInt($('cbResB2').value)]; arr.sort(); for (var i=0; i < arr.length - 1; i++){ if(arr[i]==0) continue; if (arr[i] == arr[i+1]){ retorno=false; errores+="- " + val_msg_2 + "\n"; break; } } if(errores!='') alert(errores); return retorno; } // Esta función sirve para habilitar o deshabilitar los combos de la columna derecha dependiendo de si // hemos seleccionado o no algún pelotari en los de la columna izquierda function checkDisabled(){ var permiso=false; if($('cbResA1').selectedIndex!=0 || $('cbResA2').selectedIndex!=0 || $('cbResA3').selectedIndex!=0) permiso=true; if(permiso==true){ $('cbResB1').disabled=$('cbResB2').disabled=false; }else{ $('cbResB1').selectedIndex=$('cbResB2').selectedIndex=0; $('cbResB1').disabled=$('cbResB2').disabled=true; } } ////////////////////////////////////////////////////// ////////////////////////////////////////////////////// // FUNCIONES PARA EL FORMULARIO DEL BUSCADOR DE COLORES function checkFrmColors(){ retorno=true; var errores=""; var el=$('calColMod'); if(el.selectedIndex==0){ retorno=false; errores+='- ' + val_msg_3 + '\n'; } if(errores!='') alert(errores); return retorno; } ////////////////////////////////////////////////////// ////////////////////////////////////////////////////// // FUNCIONES PARA EL FORMULARIO DEL BUSCADOR DE PELOTARIS function changeFrmPelotaris(){ var estilo=$('cbPelStyles').options[$('cbPelStyles').selectedIndex].value; // se le pasa como parametro el indice del estilo, y devuelve una lista de los pelotaris pertenecientes al mismo var url='../php/get_pelotari_list.php?style=' + estilo; new Ajax.Request(url, { method:'get', onSuccess: function(transport){ var source=eval(transport.responseText); fillPelotariCombo('cbPelNames',source); }, onFailure: function(){ alert('error en la carga de la lista de pelotaris en el buscador de pelotaris') } }); } ////////////////////////////////////////////////////// /////////////////////////////////////////////////// // FUNCIONES DE PROPOSITO GENERAL // IMPORTANTISIMA: devuelve una referencia al objeto cuya id se le pasa como parametro, en IE y en Mozilla function get(eN){ if(document.getElementById){ return document.getElementById(eN); }else if(document.all){ return document.all[eN]; }else{ return null; } } // funcion para la actualización del recuadro de la hora var timer1,timer2; function timer(){ var yuyu=new Date(); var horas=yuyu.getHours() < 10 ? "0"+yuyu.getHours() : yuyu.getHours(); var minutos=yuyu.getMinutes() < 10 ? "0" + yuyu.getMinutes() : yuyu.getMinutes(); get("ordua_n").innerHTML=horas + ":" + minutos; } // Esta funcion recoge como parámetro un array de objetos con los datos de los pelotaris, y rellena // con él el combo indicado function fillPelotariCombo(el, datos){ var elemento=$(el); //alert(datos); while(elemento.length>1){elemento.remove(elemento.length-1)}; for(i=0;i< datos.length;i++){ var opt=document.createElement("option"); opt.value=datos[i].value; opt.text=datos[i].text; if(datos[i].selected==1) opt.selected=true; try { elemento.add(opt,null); }catch(ex){ elemento.add(opt); // IE only } } elemento.selectedIndex=0; } /////////////////////////////////////////////////// /////////////////////////////////////////////////// // FUNCIONES DEL CALENDARIO function drawCalendar(date,lang){ var url='../php/get_calendar.php?hizk=' + lang + '&date=' + date; new Ajax.Request(url, { method:'get', onComplete: function(transport){ $('calendar').innerHTML=transport.responseText; }, onFailure: function(){ alert('...') } }); } /////////////////////////////////////////////////// /////////////////////////////////////////////////// // COSAS QUE SE PONEN EN MARCHA CUANDO SE HA TERMINADO DE CARGAR LA PÁGINA Event.observe(window, 'load', function(event) { checkDisabled(); }); timer1=setInterval(timer,30000); // actualización cada 30 segundos, si no hay partidos en marcha ///////////////////////////////////////////////////