// Global variables var curdate = new Date() var curYear = curdate.getFullYear(); var manualYear = curdate.format('Y'); var manualMonth = curdate.format('n'); var allBandInfo = new Array(); var calendarScrolled = -1; function hideSearch() { unselected('menu_search'); unhilite('search_close'); hideElem('search'); hideMonth(); } function showSearch() { if (!isDraggable()) hideAll(); else raiseWindow('search'); showElem('search'); selected('menu_search'); scrollTo(calendarScrolled); } function toggleSearch() { if (document.getElementById('search').style.display!='block') showSearch(); else hideSearch(); } function initSearch() { placeElem('search'); if (isDraggable()) getFile('search_menu_drag.html','search_top_drag','switchSearch()'); else getFile('search_menu_dock.html','search_top_drag','switchSearch()'); } function switchSearch() { if (getCookie('showsearch')=='calendar') { showCalendar(); } else { showManual(); } hideElem('debug'); } // Calendar functions function showCalendar(year) { if (year==null || year=='') { year=curYear; } year=Math.min(year,curdate.getFullYear()); curYear=year; setCookie('showsearch','calendar'); unselected('search_manual'); selected('search_calendar'); getCalendar(year,screenYears-1); } function initCalendar() { fixShadow(); setOption('RAD_color_copy',getCookie('showcolor'),3); if (calendarScrolled < 0) scrollEnd(); else scrollTo(calendarScrolled); } function showMonth(theElem,mname,year,month,satellite) { showFloater(theElem); getMonth(year,month,satellite); } function hideMonth() { hideFloater(); } function scrollEnd() { scrollTo(-1); } function scrollTo(pixels) { var theElem=document.getElementById('div_calendar'); if (theElem!=null) { if (pixels<0) theElem.scrollLeft=theElem.scrollWidth; else theElem.scrollLeft=calendarScrolled; } } function setScroll(pixels) { calendarScrolled = pixels; } function updateSearch() { if (calendarVisible()) { getCalendar(curYear,screenYears-1); } if (manualVisible()) { if (isDateRange()) { JSUpdateSelect('TXT_datefrom'); } else { JSUpdateSelect('TXT_datesingle'); } } } function printCalendar() { var now = new Date(); var msg ='The printed table will contain '+(curYear-printYears+1); msg+=' to '+curYear+'.\n'; msg+='Landscape mode is recommended.'; if (confirm(msg)) { getCalendar(curYear,printYears-1,1); } } // Manual functions function showManual() { setCookie('showsearch','manual'); unselected('search_calendar'); selected('search_manual'); if (!document.getElementById('BUT_search')) { getManual(); } else { checkSetSearch(); checkSetCollapse(); }; } function initManual() { var columnWidth=Math.round( ( getWidth('table_manual') - (2*getWidth('side_anchor1')) - 13 )/2 ); // IE7 wanted this... columnWidth=Math.abs(columnWidth); // var elem1=document.getElementById('content_anchor1'); var elem2=document.getElementById('content_anchor2'); // elem1.style.width=columnWidth+'px'; elem2.style.width=columnWidth+'px'; document.getElementById('TXT_datesingle').focus(); loadMap(); fixShadow(); checkSetSearch(); updatePrefsAlls(); updatePrefsCollapsed(); checkSetCollapse(); setDisabledAll(); } function showDateCalendar(thisElem,thatElem,year,month) { if (typeof(thisElem)=='string') thisElem=document.getElementById(thisElem); if (typeof(thatElem)=='string') thatElem=document.getElementById(thatElem); showFloater(thisElem); if (year==null) year=manualYear; if (month==null) month=manualMonth; getDateCalendar(thisElem,thatElem,year,month); } function setDateCalendar(theElem,year,month,day) { if (typeof(theElem)=='string') theElem=document.getElementById(theElem); manualYear=year; manualMonth=month; if (month<10) month='0'+month; if (day<10) day='0'+day; var newvalue=year+'-'+month+'-'+day; doHideFloater=1; hideFloaterNow(); theElem.value=newvalue; theElem.focus(); if (theElem.id=='TXT_datesingle') JSUpdateSelect(theElem.id); if (theElem.id.match('END_text')) { if (theElem.onchange) theElem.onchange(); } } function setDateType(value) { if (value!=2) { unselected('RAD_datetype2'); selected('RAD_datetype1'); showElem('TD_datesingle'); hideElem('TD_daterange'); document.getElementById('TXT_datetype').value='single'; document.getElementById('TXT_datesingle').value=''; document.getElementById('TXT_datefrom').value=''; document.getElementById('TXT_dateto').value=''; document.getElementById('TXT_datesingle').focus(); setSelections('SEL_satellite'); JSUpdateSelect('SEL_satellite'); } else { unselected('RAD_datetype1'); selected('RAD_datetype2'); showElem('TD_daterange'); hideElem('TD_datesingle'); document.getElementById('TXT_datetype').value='range'; document.getElementById('TXT_datesingle').value=''; document.getElementById('TXT_datefrom').value=''; document.getElementById('TXT_dateto').value=''; document.getElementById('TXT_datefrom').focus(); setSelections('SEL_satellite'); JSUpdateSelect('SEL_satellite'); } } function setTimeType(value) { if (value!=2) { unselected('RAD_timetype2'); selected('RAD_timetype1'); document.getElementById('TXT_timetype').value='each'; } else { unselected('RAD_timetype1'); selected('RAD_timetype2'); document.getElementById('TXT_timetype').value='all'; } } // What is currently visible? function calendarVisible() { return(isSelected('search_calendar')); } function manualVisible() { return(isSelected('search_manual')); } // Date/Time functions specific to updating forms function isDateSingle() { if (document.getElementById('TXT_datetype').value=='single') { return(true); } return(false); } function isDateRange() { if (document.getElementById('TXT_datetype').value=='range') { return(true); } return(false); } function isTimeEach() { if (document.getElementById('TXT_timetype').value=='each') { return(true); } return(false); } function isTimeAll() { if (document.getElementById('TXT_timetype').value=='all') { return(true); } return(false); } function getDateList() { var dateList=new Array(); if (isDateRange()) { var datefrom=document.getElementById('TXT_datefrom').value; var dateto=document.getElementById('TXT_dateto').value; dateList.push(datefrom.trim()); dateList.push(dateto.trim()); } else { var datesingle=document.getElementById('TXT_datesingle').value; dateList.push(datesingle.trim()); } return(dateList); } function getDateListFlat() { var dateList=getDateList(); var dateText=''; if (dateList.length==1) { if (dateList[0].match(' - ')) { dateListParts=dateList[0].split(' - '); dateText=dateListParts[0]+'|'+dateListParts[1]; } else { dateText=dateList[0]+'|'+dateList[0]; } } else if (dateList.length==2) { dateText=dateList[0]+'|'+dateList[1]; } return(dateText); } function getTimeList() { var timeList=new Array(); if (document.getElementById('TXT_timefrom').value=='') { timeList.push('00:00:00'); } else { var timefrom=document.getElementById('TXT_timefrom').value; timeList.push(timefrom.trim()); } if (document.getElementById('TXT_timeto').value=='') { timeList.push('23:59:59'); } else { var timeto=document.getElementById('TXT_timeto').value; timeList.push(timeto.trim()); } return(timeList); } function getTimeListFlat() { var timeList=getTimeList(); var timeType='each'; if (isTimeAll()) { timeType='all'; } var timeText=timeList[0]+'|'+timeList[1]+'|'+timeType; return(timeText); } function getLatLon() { var llList=new Array(); if (document.getElementById('TXT_lat').value!='' && document.getElementById('TXT_lon').value!='') { var latVal=document.getElementById('TXT_lat').value; var lonVal=document.getElementById('TXT_lon').value; llList.push(latVal.replace(/ /g,'')); llList.push(lonVal.replace(/ /g,'')); } else { llList.push(''); llList.push(''); } return(llList); } function getLatLonFlat() { var llList=getLatLon(); var llText=llList[0]+'|'+llList[1]; return(llText); } // AJAX search wrapper function doCalendarSearch(date,satkey) { hideMonth(); getSearch( date+'|'+date, '00:00:00|23:59:59|all', satkey, '', '', '', '' ); } function doManualSearch() { var dateList=getDateListFlat(); var satList=getSelectionsFlat('SEL_satellite',1); if (!isEnabled('BUT_search')) { if (dateList.match(/^\|/) || dateList.match(/\|$/)) { alert('Please enter date(s) to search'); if (isDateRange()) { document.getElementById('TXT_datefrom').focus(); } else { document.getElementById('TXT_datesingle').focus(); } } else { if (satList=='') { alert('Please select satellite(s) to search'); } else { alert('Please select additional criteria to search'); } } return(false); } getSearch( dateList, getTimeListFlat(), satList, getSelectionsFlat('SEL_type',1), getSelectionsFlat('SEL_coverage',1), getSelectionsFlat('SEL_schedule',1), getLatLonFlat() ); } // Month function lightMonth(year,month) { var theElem=document.getElementById('td_month_'+year+'_'+month); if (theElem) { theElem.style.color='yellow'; } } function unlightMonth(year,month) { var theElem=document.getElementById('td_month_'+year+'_'+month); if (theElem) { theElem.style.color='black'; } } // Satellite function lightSatellite(satellite) { var theElem=document.getElementById('td_'+satellite); if (theElem) { theElem.style.color='yellow'; } } function unlightSatellite(satellite) { var theElem=document.getElementById('td_'+satellite); if (theElem) { theElem.style.color='black'; } } // Legend function lightLegend(classname) { var theElem=document.getElementById('td_'+classname); if (theElem) { theElem.style.color='yellow'; } } function unlightLegend(classname) { var theElem=document.getElementById('td_'+classname); if (theElem) { if (classname=='Unknown_Location') theElem.style.color='white'; else theElem.style.color='black'; } } // Auto-populate search fields... once, on load var searchDate=''; var searchTime1=''; var searchTime2=''; var searchSatellite=''; var searchType=''; var searchCoverage=''; var searchSchedule=''; var searchCollapse=''; var searchRun=''; function setSearchParams(date,time1,time2,satellite,type,coverage,schedule) { searchDate=date; searchTime1=time1; searchTime2=time2; searchSatellite=satellite; searchType=type; searchCoverage=coverage; searchSchedule=schedule; } function setCollapsed(collapse) { searchCollapse=collapse; } function setDoSearch(dosearch) { searchRun=dosearch; } var checkedSet=0; function checkSetSearch() { if (checkedSet!=0) return; setSearch(); checkedSet=1; } function setSearch() { if (document.getElementById('table_manual')==null) return; if (searchDate!='') { var theElem=document.getElementById('TXT_datesingle'); if (theElem!=null) { theElem.value=searchDate; JSUpdateSelect(theElem.id); } } if (searchTime1!='') { var theElem=document.getElementById('TXT_timefrom'); if (theElem!=null) theElem.value=searchTime1; } if (searchTime2!='') { var theElem=document.getElementById('TXT_timeto'); if (theElem!=null) theElem.value=searchTime2; } } var checkedSetSatellite=0; function checkSetSatellite() { if (checkedSetSatellite!=0) return; setSearchSatellite(); checkedSetSatellite=1; } function setSearchSatellite() { if (document.getElementById('table_manual')==null) return; updateSelections('SEL_satellite',searchSatellite.split(',')); } var checkedSetType=0; function checkSetType() { if (checkedSetType!=0) return; setSearchType(); checkedSetType=1; } function setSearchType() { if (document.getElementById('table_manual')==null) return; updateSelections('SEL_type',searchType.split(',')); } var checkedSetCoverage=0; function checkSetCoverage() { if (checkedSetCoverage!=0) return; setSearchCoverage(); checkedSetCoverage=1; } function setSearchCoverage() { if (document.getElementById('table_manual')==null) return; updateSelections('SEL_coverage',searchCoverage.split(',')); } var checkedSetSchedule=0; function checkSetSchedule() { if (checkedSetSchedule!=0) return; setSearchSchedule(); checkedSetSchedule=1; } function setSearchSchedule() { if (document.getElementById('table_manual')==null) return; updateSelections('SEL_schedule',searchSchedule.split(',')); } var checkedSetCollapse=0; function checkSetCollapse() { if (checkedSetCollapse!=0) return; setSearchCollapse(); checkedSetCollapse=1; } function setSearchCollapse() { if (searchCollapse=='' || searchCollapse==null) return; var theElem=document.getElementById('CHK_collapsed'); if (theElem==null) return; if (searchCollapse==0 || searchCollapse=='false' || searchCollapse=='off') theElem.checked=0; else theElem.checked=1; } var checkedDoSearch=0; function checkDoSearch() { if (checkedDoSearch!=0) return; if (searchRun=='' || searchRun==0 || searchRun==null) return; setEnabled('BUT_search'); doManualSearch(); checkedDoSearch=1; }