var NUM_CENTYEAR=30;var BUL_TIMECOMPONENT=false;var BUL_YEARSCROLL=true;var calendars=[];var RE_NUM=/^\-?\d+$/;
function calendar1(obj_target){this.gen_date=cal_gen_date1;this.gen_time=cal_gen_time1;this.gen_tsmp=cal_gen_tsmp1;this.prs_date=cal_prs_date1;this.prs_time=cal_prs_time1;this.prs_tsmp=cal_prs_tsmp1;this.popup  =cal_popup1;if(!obj_target)return cal_error("Erreur d'appel du calendrier : aucun 'target' spécifié");if(obj_target.value==null)return cal_error("Erreur d'appel du calendrier : le paramètre spécifié n'est pas un 'target' valide");this.target=obj_target;this.time_comp=BUL_TIMECOMPONENT;this.year_scroll=BUL_YEARSCROLL;this.id=calendars.length;calendars[this.id]=this;}
function cal_popup1(str_datetime){this.dt_current=this.prs_tsmp(str_datetime?str_datetime : this.target.value);if(!this.dt_current)return;var obj_calwindow=window.open('calendar.html?datetime=' + this.dt_current.valueOf()+ '&id=' + this.id,'Calendar', 'width=200,height='+(this.time_comp?215 : 190)+',menubar=no,scrollbars=no,statusbar=no,resizable=no,top=200,left=200,dependent=yes,alwaysRaised=yes');obj_calwindow.opener=window;obj_calwindow.focus();}
function cal_gen_tsmp1(dt_datetime){return(this.gen_date(dt_datetime)+ ' ' + this.gen_time(dt_datetime));}
function cal_gen_date1(dt_datetime){return((dt_datetime.getDate()< 10?'0' : '')+ dt_datetime.getDate()+ "-"+(dt_datetime.getMonth()< 9?'0' : '')+(dt_datetime.getMonth()+ 1)+ "-"+ dt_datetime.getFullYear());}
function cal_gen_time1(dt_datetime){return((dt_datetime.getHours()< 10?'0' : '')+ dt_datetime.getHours()+ ":"+(dt_datetime.getMinutes()< 10?'0' : '')+(dt_datetime.getMinutes())+ ":"+(dt_datetime.getSeconds()< 10?'0' : '')+(dt_datetime.getSeconds()));}
function cal_prs_tsmp1(str_datetime){if(!str_datetime)return(new Date());if(RE_NUM.exec(str_datetime))return new Date(str_datetime);var arr_datetime=str_datetime.split(' ');return this.prs_time(arr_datetime[1], this.prs_date(arr_datetime[0]));}
function cal_prs_date1(str_date){var arr_date=str_date.split('-');if(arr_date.length !=3)return cal_error("Format de date non valide : '" + str_date + "'.\nFormat accepté : jj-mm-aaaa.");if(!arr_date[0])return cal_error("Format de date non valide : '" + str_date + "'.\nAucune valeur de jour du mois n'a pu être trouvée.");if(!RE_NUM.exec(arr_date[0]))return cal_error("Valeur de jour du mois non valide : '" + arr_date[0] + "'.\nValeurs autorisées sous forme integer.");if(!arr_date[1])return cal_error("Format de date non valide : '" + str_date + "'.\nAucune valeur de mois n'a pu être trouvée.");if(!RE_NUM.exec(arr_date[1]))return cal_error("Valeur de mois non valide : '" + arr_date[1] + "'.\nValeurs autorisées sous forme integer.");if(!arr_date[2])return cal_error("Format de date non valide : '" + str_date + "'.\nAucune valeur d'année n'a pu être trouvée.");if(!RE_NUM.exec(arr_date[2]))return cal_error("Valeur d'année non valide : '" + arr_date[2] + "'.\nValeurs autorisées sous forme integer.");var dt_date=new Date();dt_date.setDate(1);if(arr_date[1]< 1||arr_date[1]>12)return cal_error("Valeur de mois non valide : '" + arr_date[1] + "'.\nValeurs autorisées de 01-12.");dt_date.setMonth(arr_date[1]-1);if(arr_date[2]< 100)arr_date[2]=Number(arr_date[2])+(arr_date[2]< NUM_CENTYEAR?2000 : 1900);dt_date.setFullYear(arr_date[2]);var dt_numdays=new Date(arr_date[2], arr_date[1], 0);dt_date.setDate(arr_date[0]);if(dt_date.getMonth()!=(arr_date[1]-1))return cal_error("Valeur de jour du mois non valide : '" + arr_date[0] + "'.\nValeurs autorisées de 01-"+dt_numdays.getDate()+".");return(dt_date)}
function cal_prs_time1(str_time, dt_date){if(!dt_date)return null;var arr_time=String(str_time?str_time : '').split(':');if(!arr_time[0])dt_date.setHours(0);else if(RE_NUM.exec(arr_time[0]))if(arr_time[0]< 24)dt_date.setHours(arr_time[0]);else return cal_error("Valeur d'heure non valide : '" + arr_time[0] + "'.\nValeurs autorisées de 00-23.");else return cal_error("Valeur d'heure non valide : '" + arr_time[0] + "'.\nValeurs autorisées sous forme integer.");if(!arr_time[1])dt_date.setMinutes(0);else if(RE_NUM.exec(arr_time[1]))if(arr_time[1]< 60)dt_date.setMinutes(arr_time[1]);else return cal_error("Valeur de minutes non valide : '" + arr_time[1] + "'.\nValeurs autorisées de 00-59.");else return cal_error("Valeur de minutes non valide : '" + arr_time[1] + "'.\nValeurs autorisées sous forme integer.");if(!arr_time[2])dt_date.setSeconds(0);else if(RE_NUM.exec(arr_time[2]))if(arr_time[2]< 60)dt_date.setSeconds(arr_time[2]);else return cal_error("Valeur de secondes non valide : '" + arr_time[2] + "'.\nValeurs autorisées de 00-59.");else return cal_error("Valeur de secondes non valide : '" + arr_time[2] + "'.\nValeurs autorisées sous forme integer.");dt_date.setMilliseconds(0);return dt_date;}
function cal_error(str_message){alert(str_message);return null;}
