// written by Tan Ling Wee on 2 Dec 2001 // last updated 28 Jul 2003 // email : fuushikaden@yahoo.com // website : www.pengz.com // TabSize: 4 // // modified by ALQUANTO 30 July 2003 - german language included. // - modified languageLogic with the ISO-2letter-strings // - changes in in showCalendar: defaultLanguage is already set... // - js and html corrected... more xhtml-compliant... simplier css // email: popcalendar@alquanto.de // // modified by PinoToy 25 July 2003 - new logic for multiple languages (English, Spanish and ready for more). // - changes in popUpMonth & popDownMonth methods for hidding popup. // - changes in popDownYear & popDownYear methods for hidding popup. // - new logic for disabling dates in the past. // - new method showCalendar, dynamic configuration of language, enabling past & position. // - changes in the styles. // email : pinotoy@yahoo.com var language = 'en'; // Default Language: en - english ; es - spanish; de - german var enablePast = 0; // 0 - disabled ; 1 - enabled var fixedX = -1; // x position (-1 if to appear below control) var fixedY = -1; // y position (-1 if to appear below control) var startAt = 1; // 0 - sunday ; 1 - monday var showWeekNumber = 0; // 0 - don't show; 1 - show var showToday = 1; // 0 - don't show; 1 - show var showTime = 1; // 0 - don't show; 1 - show (default = show) var imgDir = '/_SiteNote/Admin/Images/DatePicker/'; // directory for images ... e.g. var imgDir="/img/" var dayName = ''; //ADD 'FR' "HourString" "MinString" BY CTR CROSSFACTORY var gotoString = { en : 'Go To Current Month', es : 'Ir al Mes Actual', de : 'Gehe zu aktuellem Monat', fr : 'Aller au mois courant' }; var todayString = { en : 'Today is', es : 'Hoy es', de : 'Heute ist', fr : 'Date du jour' }; var weekString = { en : 'Wk', es : 'Sem', de : 'KW', fr : 'Sem' }; var hourString = { en : 'Hour', es : 'Hour', de : 'Hour', fr : 'Heure' }; var minString = { en : 'Min', es : 'Min', de : 'Min', fr : 'Min' }; var scrollLeftMessage = { en : 'Click to scroll to previous month. Hold mouse button to scroll automatically.', es : 'Presione para pasar al mes anterior. Deje presionado para pasar varios meses.', de : 'Klicken um zum vorigen Monat zu gelangen. Gedrückt halten, um automatisch weiter zu scrollen.', fr : 'Cliquez pour faire défiler au mois précédent. Tenez le bouton de la souris appuyé pour faire défiler automatiquement.' }; var scrollRightMessage = { en : 'Click to scroll to next month. Hold mouse button to scroll automatically.', es : 'Presione para pasar al siguiente mes. Deje presionado para pasar varios meses.', de : 'Klicken um zum nächsten Monat zu gelangen. Gedrückt halten, um automatisch weiter zu scrollen.', fr : 'Cliquez pour faire défiler au mois suivant. Tenez le bouton de la souris appuyé pour faire défiler automatiquement.' }; var selectMonthMessage = { en : 'Click to select a month.', es : 'Presione para seleccionar un mes', de : 'Klicken um Monat auszuwählen', fr : 'Cliquez pour sélectionner un mois' }; var selectYearMessage = { en : 'Click to select a year.', es : 'Presione para seleccionar un año', de : 'Klicken um Jahr auszuwählen', fr : 'Cliquez pour sélectionner une année' }; var selectDateMessage = { // do not replace [date], it will be replaced by date. en : 'Select [date] as date.', es : 'Seleccione [date] como fecha', de : 'Wähle [date] als Datum.', fr : 'Choisissez [date] comme date.' }; var monthName = { en : new Array('January','February','March','April','May','June','July','August','September','October','November','December'), es : new Array('Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'), de : new Array('Januar','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember'), fr : new Array('Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre') }; var monthName2 = { en : new Array('JAN','FEB','MAR','APR','MAY','JUN','JUL','AUG','SEP','OCT','NOV','DEC'), es : new Array('ENE','FEB','MAR','ABR','MAY','JUN','JUL','AGO','SEP','OCT','NOV','DIC'), de : new Array('JAN','FEB','MRZ','APR','MAI','JUN','JUL','AUG','SEP','OKT','NOV','DEZ'), fr : new Array('JAN','FEV','MARS','AVR','MAI','JUIN','JUIL','AOUT','SEP','OCT','NOV','DEC') }; if (startAt==0) { dayName = { en : new Array('Sun','Mon','Tue','Wed','Thu','Fri','Sat'), es : new Array('Dom','Lun','Mar','Mie','Jue','Vie','Sab'), de : new Array('So','Mo','Di','Mi','Do','Fr','Sa'), fr : new Array('Dim','Lun','Mar','Mer','Jeu','Ven','Sam') }; } else { dayName = { en : new Array('Mon','Tue','Wed','Thu','Fri','Sat','Sun'), es : new Array('Lun','Mar','Mie','Jue','Vie','Sab','Dom'), de : new Array('Mo','Di','Mi','Do','Fr','Sa','So'), fr : new Array('Lun','Mar','Mer','Jeu','Ven','Sam','Dim') }; } var crossobj, crossMonthObj, crossYearObj, crossHourObj, crossMinObj, monthSelected, yearSelected, dateSelected, hourSelected, minSelected, omonthSelected, oyearSelected, odateSelected, monthConstructed, yearConstructed, hourConstructed, intervalID1, intervalID2, timeoutID1, timeoutID2, ctlToPlaceValue, ctlNow, dateFormat, nStartingYear, nStartingHour, selDayAction, isPast; var visYear = 0; var visMonth = 0; var visHour = 0; var visMin = 0; var bPageLoaded = false; var ie = document.all; var dom = document.getElementById; var ns4 = document.layers; var today = new Date(); var dateNow = today.getDate(); var monthNow = today.getMonth(); var yearNow = today.getYear(); var imgsrc = new Array('drop1.gif','drop2.gif','left1.gif','left2.gif','right1.gif','right2.gif'); var img = new Array(); var bShow = false; hourSelected = 12; minSelected = 30; /* hides and objects (for IE only) */ function showElement(elmID) { if(ie) { for(i = 0; i < document.all.tags( elmID ).length; i++) { obj = document.all.tags(elmID)[i]; if(!obj || !obj.offsetParent) continue; obj.style.visibility = ''; } } } function HolidayRec (d, m, y, desc) { this.d = d; this.m = m; this.y = y; this.desc = desc; } var HolidaysCounter = 0; var Holidays = new Array(); function addHoliday (d, m, y, desc) { Holidays[HolidaysCounter++] = new HolidayRec (d, m, y, desc); } if (dom) { for (i=0;i