}
iframe = new Element('IFRAME', { id: 'iframe' + (name === null ? loc : name), className: 'iframe', frameBorder: 0, src: loc }).setStyle({ height: document.viewport.getHeight() + 'px' });
- this._resizeIE6Iframe(iframe);
container.insert(iframe);
},
callback();
}
- var nf = $('normalfolders'),
- nfheight = nf.getStyle('max-height');
-
if (this.folder) {
this.highlightSidebar(this.getFolderId(this.folder));
}
$('foldersLoading').hide();
$('foldersSidebar').show();
- // Fix for IE6 - which doesn't support max-height. We need to search
- // for height: 0px instead (comment in IE 6 CSS explains this is
- // needed for auto sizing).
- if (nfheight !== null ||
- (Prototype.Browser.IE &&
- Object.isUndefined(nfheight) &&
- (nf.getStyle('height') == '0px'))) {
+ if ($('normalfolders').getStyle('max-height') !== null) {
this._sizeFolderlist();
}
this._toggleHeaders($('th_expand'));
}
- this._resizeIE6();
-
/* Remove unavailable menu items. */
if (!$('GrowlerLog')) {
$('alertsloglink').remove();
/* Check for new mail. */
this.setPoll();
-
- if (DimpCore.is_ie6) {
- /* Disable text selection in preview pane for IE 6. */
- document.observe('selectstart', Event.stop);
-
- /* Since IE 6 doesn't support hover over non-links, use javascript
- * events to replicate mouseover CSS behavior. */
- $('dimpbarActions', 'serviceActions', 'applicationfolders', 'specialfolders', 'normalfolders').compact().invoke('select', 'LI').flatten().compact().each(function(e) {
- e.observe('mouseover', e.addClassName.curry('over')).observe('mouseout', e.removeClassName.curry('over'));
- });
-
- /* These are links, but they have no href attribute. Hovering
- * requires something in href on IE6. */
- $$('.context A').each(function(e) {
- e.writeAttribute('href', '');
- });
- }
- },
-
- // IE 6 width fixes (See Bug #6793)
- _resizeIE6: function()
- {
- if (DimpCore.is_ie6) {
- var tmp = parseInt($('sidebar').getStyle('width'), 10),
- tmp1 = document.viewport.getWidth() - tmp - 30;
- $('normalfolders').setStyle({ width: tmp + 'px' });
- $('dimpmain').setStyle({ width: tmp1 + 'px' });
- $('msglist').setStyle({ width: (tmp1 - 5) + 'px' });
- $('messageBody').setStyle({ width: (tmp1 - 25) + 'px' });
- tmp = $('dimpmain_portal').down('IFRAME');
- if (tmp) {
- this._resizeIE6Iframe(tmp);
- }
- }
- },
-
- _resizeIE6Iframe: function(iframe)
- {
- if (DimpCore.is_ie6) {
- iframe.setStyle({ width: $('dimpmain').getStyle('width'), height: (document.viewport.getHeight() - 20) + 'px' });
- }
},
/* Resize function. */
{
this._sizeFolderlist();
this.splitbar.setStyle({ height: document.viewport.getHeight() + 'px' });
- if (DimpCore.is_ie6) {
- this._resizeIE6();
- }
},
/* Extend AJAX exception handling. */
? (empty($conf['user']['force_view']) ? 'imp' : $conf['user']['force_view'])
: (empty($sess['cache']['select_view']) ? 'imp' : $sess['cache']['select_view']);
+ /* Enforce minimum browser standards for DIMP. */
+ if (($sess['view'] == 'dimp') &&
+ $GLOBALS['browser']->isBrowser('msie') &&
+ ($GLOBALS['browser']->getMajor() < 7)) {
+ $sess['view'] = 'imp';
+ $GLOBALS['notification']->push(_("Dynamic mode requires Internet Explorer 7+. Using traditional mode instead."), 'horde.error');
+ }
+
setcookie('default_imp_view', $sess['view'], time() + 30 * 86400,
$conf['cookie']['path'],
$conf['cookie']['domain']);
+++ /dev/null
-/**
- * CSS corrections for IE 6 and below.
- */
-
-#pageContainer {
- height: auto;
-}
-
-#sidebar .sepfull, .splitBar, .context div.sep {
- overflow: hidden;
-}
-
-#sidebar li {
- width: 100%;
-}
-
-#normalfolders {
- /* IE 6 does not support max-height. To auto-size folder list display, set
- * height to 0px. */
- height: 0px;
- overflow: auto;
-}
-
-.context {
- width: 180px;
-}
-
-#to, #cc, #bcc {
- overflow: auto;
-}
-
-.block-monthgrid table {
- border-width: 2px;
-}
-
-#msglistHeader {
- height: 16px;
-}
-#msglistHeader div {
- margin-right: -1px;
-}
-#msglistHeader div.msgStatus {
- margin-right: 0;
-}
-
-.dimpOptions span.iconImg {
- margin-right: 4px;
-}
-
-/* IE 6 doesn't support DOM.class1.class2 - treats this as DOM.class2. So
- * flag icons will appear as background for row. This works around this. */
-div.vpRow {
- background: none;
-}
-
-/* Fixes broken inline-block. */
-div.msgStatus div, #msgHeadersContent .subject span, span.iconImg, span.contextImg, span.spellcheckPopdownImg, span.popdownImg, #qsearch_icon, #qsearch_close, #upload_wait, #noticerow .notices li {
- zoom: 1;
- *display: inline;
-}