var calendarDays = new Array('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat') var calendarDIM = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31); var calendarMonths = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'); function calendarWrite( name, year, month, day, hour, minute, second, none, showtime ) { var html = ''; html += '
'; html += ''; html += ' 
'; html += ''; html += ''; }; html += ''; var thisDay = 1; var j = 1; while ( thisDay<=calendarDIM[month-1] ) { html += ''; for (i = 0; i < 7; i++) { if (( (j>1) || (i>=firstDay) ) && (thisDay <= calendarDIM[month-1])) { html += '' + thisDay + ''; thisDay++; } else { html += ''; } } j++ html += ''; } html += ''; document.getElementById(name + 'days').innerHTML = html; calendarChangeTime( name, year, month, day, hour, minute, second ); } function calendarPad( value ) { var pad = '00' + value; return pad.slice(-2); } function calendarChangeTime( name, year, month, day, hour, minute, second ) { var hidden = document.getElementById(name); if (year==null||isNaN(year)) { year = parseInt(hidden.year); } if (month==null||isNaN(month)) { month = parseInt(hidden.month); } if (day==null||isNaN(day)) { day = parseInt(hidden.day); } if (hour==null||isNaN(hour)) { hour = parseInt(hidden.hour); } if (minute==null||isNaN(minute)) { minute = parseInt(hidden.minute); } if (second==null||isNaN(second)) { second = parseInt(hidden.second); } var none = document.getElementById(name + 'none').checked; var show = document.getElementById(name + 'showtext'); if (none=="1") { hidden.value = "none"; show.value = "n/a"; } else { hidden.value = year + '-' + month + '-' + day + ' ' + calendarPad( hour) + ':' + calendarPad( minute) + ':' + calendarPad( second); if (show.getAttribute('showTime')=='1') { show.value = day+' '+calendarMonths[month-1] + ', ' + year + ' ' + calendarPad( hour) + ':' + calendarPad( minute) + ':' + calendarPad( second); } else { show.value = day+' '+calendarMonths[month-1] + ', ' + year; } } show.oldvalue = show.value; document.getElementById(name + 'months').innerHTML = calendarMonths[month-1]; document.getElementById(name + 'years').innerHTML = year; document.getElementById(name + 'hours').value = calendarPad( hour); document.getElementById(name + 'minutes').value = calendarPad( minute); document.getElementById(name + 'seconds').value = calendarPad( second); hidden.day = day; hidden.month = month; hidden.year = year; hidden.hour = hour; hidden.minute = minute; hidden.second = second; }; function calendarSelect( name, day ) { var oldday, newday; var hidden = document.getElementById(name); if (hidden.day!='0') { oldday = document.getElementById(name + 'day' + hidden.day); oldday.style.backgroundColor = 'white'; oldday.style.color = 'black'; oldday.style.fontWeight = 'normal'; } newday = document.getElementById(name + 'day' + day); newday.style.backgroundColor = 'black'; newday.style.color = 'white'; newday.style.fontWeight = 'bold'; hidden.day = day; document.getElementById(name + 'none').checked = false; return calendarMove( name ,0,0,0,0,0); } function calendarMove( name, dSeconds, dMinutes, dHours, dMonths, dYears ) { var dDays = 0 var hidden = document.getElementById(name); var second = parseInt(hidden.second); var minute = parseInt(hidden.minute); var hour = parseInt(hidden.hour); var day = parseInt(hidden.day); var month = parseInt(hidden.month); var year = parseInt(hidden.year); second += dSeconds; while (second>59) { second -= 60; dMinutes += 1; } while (second<0) { second += 60; dMinutes -= 1; } minute += dMinutes; while (minute>59) { minute -= 60; dHours += 1; } while (minute<0) { minute += 60; dHours -= 1; } hour += dHours; while (hour>23) { hour -=24; dDays +=1; } while (hour<0) { hour +=24; dDays -=1; } day += dDays; if (day>calendarDIM[month+dMonths-1]) { day = calendarDIM[month+dMonths-1] } if (day<1) { dMonths -=1; day = calendarDIM[month+dMonths-1]; } month += dMonths; if (month>12) { month=1; dYears+=1; } else if (month<1) { month=12; dYears-=1; } if (day>calendarDIM[month-1]) { day = calendarDIM[month-1]; } year += dYears; if (year<0) { year=0; }; if ((dYears!=0)||(dMonths!=0)||(dHours!=0)||(dMinutes!=0)||(dSeconds!=0)) { document.getElementById(name + 'none').checked = false } if ((dYears!=0)||(dMonths!=0)||(document.getElementById(name + 'none').checked)) { calendarFill( name, year, month, day, hour, minute, second ); } else { calendarChangeTime( name, year, month, day, hour, minute, second ); } return false; } function calendarCheckTime( ob ) { var dtNew = Date.parse(ob.value); var szId = ob.id.substring(0,ob.id.length-8); if (isNaN(dtNew)) { document.getElementById(szId + 'none').checked = true; calendarChangeTime( szId, 0, 0, 0, 0, 0, 0 ); } else { dtNew = new Date(dtNew); document.getElementById(szId + 'none').checked = false; calendarFill( szId, dtNew.getFullYear(), dtNew.getMonth()+1, dtNew.getDate(), dtNew.getHours(), dtNew.getMinutes(), dtNew.getSeconds() ); } }