From 56e8aad838e9609730d087ce44c37e2388b54e59 Mon Sep 17 00:00:00 2001 From: Ca-Phun Ung Date: Tue, 23 Dec 2008 19:39:28 +0000 Subject: Datepicker - fixes #3695 [multi-datepicker layout issue in IE]: IE doesn't seem to like dynamic widths so had no other choice but to hard code some width values (this needs a better fix). --- themes/base/ui.datepicker.css | 15 ++++++++++++++- ui/ui.datepicker.js | 18 ++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/themes/base/ui.datepicker.css b/themes/base/ui.datepicker.css index dd0ab1cbd..d08a4af2c 100644 --- a/themes/base/ui.datepicker.css +++ b/themes/base/ui.datepicker.css @@ -44,4 +44,17 @@ .ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; } .ui-datepicker-rtl .ui-datepicker-group { float:right; } .ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; } -.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } \ No newline at end of file +.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } + +/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */ +.ui-datepicker-cover { + display: none; /*sorry for IE5*/ + display/**/: block; /*sorry for IE5*/ + position: absolute; /*must have*/ + z-index: -1; /*must have*/ + filter: mask(); /*must have*/ + top: -4px; /*must have*/ + left: -4px; /*must have*/ + width: 200px; /*must have*/ + height: 200px; /*must have*/ +} \ No newline at end of file diff --git a/ui/ui.datepicker.js b/ui/ui.datepicker.js index 1a64b0b5c..391b45087 100644 --- a/ui/ui.datepicker.js +++ b/ui/ui.datepicker.js @@ -595,6 +595,24 @@ $.extend(Datepicker.prototype, { .trigger('mouseover') .end(); var numMonths = this._getNumberOfMonths(inst); + var months = this._get(inst, 'numberOfMonths'); + var multi = ''; + if (months > 1) { + if (months % 4 == 0) { + multi = 'ui-datepicker-multi-4'; + inst.dpDiv.css('width','60em'); + } else if (months % 3 == 0) { + multi = 'ui-datepicker-multi-3'; + inst.dpDiv.css('width','51em'); + } else if (months % 2 == 0) { + multi = 'ui-datepicker-multi-2'; + inst.dpDiv.css('width','34em'); + } + inst.dpDiv.addClass(multi); + } else { + inst.dpDiv.removeClass('ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4'); + inst.dpDiv.width(''); + } inst.dpDiv[(numMonths[0] != 1 || numMonths[1] != 1 ? 'add' : 'remove') + 'Class']('ui-datepicker-multi'); inst.dpDiv[(this._get(inst, 'isRTL') ? 'add' : 'remove') + -- cgit v1.2.3