diff options
| author | fisharebest <fisharebest@gmail.com> | 2013-01-05 10:08:00 +0000 |
|---|---|---|
| committer | fisharebest <fisharebest@gmail.com> | 2013-01-05 10:08:00 +0000 |
| commit | fd9fa49d2c22ef7398662457758f5b98fe8b7ac0 (patch) | |
| tree | 40030649e0e8a7246267344e5243413cc0680ec6 /js/webtrees.js | |
| parent | ed7cedb5054387b6c0928ec7413c6cb567748515 (diff) | |
| download | webtrees-fd9fa49d2c22ef7398662457758f5b98fe8b7ac0.tar.gz webtrees-fd9fa49d2c22ef7398662457758f5b98fe8b7ac0.tar.bz2 webtrees-fd9fa49d2c22ef7398662457758f5b98fe8b7ac0.zip | |
Fix: the calendar widget picks the previous day when the the browser is in a time-zone west of Greenwich
Diffstat (limited to 'js/webtrees.js')
| -rw-r--r-- | js/webtrees.js | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/js/webtrees.js b/js/webtrees.js index bd2be1d849..94499aa97c 100644 --- a/js/webtrees.js +++ b/js/webtrees.js @@ -625,7 +625,7 @@ function valid_date(datefield) { if (typeof(locale_date_format)!='undefined') if (locale_date_format=='MDY' || locale_date_format=='YMD') dmy=locale_date_format; - var yyyy=new Date().getFullYear(); + var yyyy=new Date().getUTCFullYear(); var yy=yyyy % 100; var cc=yyyy - yy; if (dmy=='DMY' && f1<=31 && f2<=12 || f1>13 && f1<=31 && f2<=12 && f3>31) @@ -1151,18 +1151,18 @@ var monthLabels = new Array(); content += '<td><select name="'+dateFieldId+'_daySelect" id="'+dateFieldId+'_daySelect" onchange="return cal_updateCalendar(\''+dateFieldId+'\', \''+dateDivId+'\');">'; for (i=1; i<32; i++) { content += '<option value="'+i+'"'; - if (date.getDate()==i) content += ' selected="selected"'; + if (date.getUTCDate()==i) content += ' selected="selected"'; content += '>'+i+'</option>'; } content += '</select></td>'; content += '<td><select name="'+dateFieldId+'_monSelect" id="'+dateFieldId+'_monSelect" onchange="return cal_updateCalendar(\''+dateFieldId+'\', \''+dateDivId+'\');">'; for (i=1; i<13; i++) { content += '<option value="'+i+'"'; - if (date.getMonth()+1==i) content += ' selected="selected"'; + if (date.getUTCMonth()+1==i) content += ' selected="selected"'; content += '>'+monthLabels[i]+'</option>'; } content += '</select></td>'; - content += '<td><input type="text" name="'+dateFieldId+'_yearInput" id="'+dateFieldId+'_yearInput" size="5" value="'+date.getFullYear()+'" onchange="return cal_updateCalendar(\''+dateFieldId+'\', \''+dateDivId+'\');" /></td></tr>'; + content += '<td><input type="text" name="'+dateFieldId+'_yearInput" id="'+dateFieldId+'_yearInput" size="5" value="'+date.getUTCFullYear()+'" onchange="return cal_updateCalendar(\''+dateFieldId+'\', \''+dateDivId+'\');" /></td></tr>'; content += '<tr><td colspan="3">'; content += '<table width="100%">'; content += '<tr>'; @@ -1178,8 +1178,8 @@ var monthLabels = new Array(); } content += '</tr>'; - var tdate = new Date(date.getFullYear(), date.getMonth(), 1); - var day = tdate.getDay(); + var tdate = new Date(date.getUTCFullYear(), date.getUTCMonth(), 1); + var day = tdate.getUTCDay(); day = day - weekStart; var daymilli = (1000*60*60*24); tdate = tdate.getTime() - (day*daymilli) + (daymilli/2); @@ -1189,13 +1189,13 @@ var monthLabels = new Array(); content += '<tr>'; for (i=0; i<7; i++) { content += '<td '; - if (tdate.getMonth()==date.getMonth()) { - if (tdate.getDate()==date.getDate()) content += 'class="descriptionbox"'; + if (tdate.getUTCMonth()==date.getUTCMonth()) { + if (tdate.getUTCDate()==date.getUTCDate()) content += 'class="descriptionbox"'; else content += 'class="optionbox"'; } else content += 'style="background-color:#EAEAEA; border: solid #AAAAAA 1px;"'; - content += '><a href="#" onclick="return cal_dateClicked(\''+dateFieldId+'\', \''+dateDivId+'\', '+tdate.getFullYear()+', '+tdate.getMonth()+', '+tdate.getDate()+');">'; - content += tdate.getDate(); + content += '><a href="#" onclick="return cal_dateClicked(\''+dateFieldId+'\', \''+dateDivId+'\', '+tdate.getUTCFullYear()+', '+tdate.getUTCMonth()+', '+tdate.getUTCDate()+');">'; + content += tdate.getUTCDate(); content += '</a></td>'; datemilli = tdate.getTime() + daymilli; tdate = new Date(datemilli); @@ -1230,7 +1230,7 @@ var monthLabels = new Array(); var date = new Date(yearInput.value, month, dateSel.options[dateSel.selectedIndex].value); if (!date) alert('Date error '+date); - cal_setDateField(dateFieldId, date.getFullYear(), date.getMonth(), date.getDate()); + cal_setDateField(dateFieldId, date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate()); var dateDiv = document.getElementById(dateDivId); if (!dateDiv) { |
