diff options
author | Pierre Schmitz <pierre@archlinux.de> | 2014-12-27 15:41:37 +0100 |
---|---|---|
committer | Pierre Schmitz <pierre@archlinux.de> | 2014-12-31 11:43:28 +0100 |
commit | c1f9b1f7b1b77776192048005dcc66dcf3df2bfb (patch) | |
tree | 2b38796e738dd74cb42ecd9bfd151803108386bc /skins/common/IEFixes.js | |
parent | b88ab0086858470dd1f644e64cb4e4f62bb2be9b (diff) |
Update to MediaWiki 1.24.1
Diffstat (limited to 'skins/common/IEFixes.js')
-rw-r--r-- | skins/common/IEFixes.js | 146 |
1 files changed, 0 insertions, 146 deletions
diff --git a/skins/common/IEFixes.js b/skins/common/IEFixes.js deleted file mode 100644 index e35fcd1a..00000000 --- a/skins/common/IEFixes.js +++ /dev/null @@ -1,146 +0,0 @@ -// IE fixes javascript loaded by wikibits.js for IE <= 6.0 -( function ( mw, $ ) { - -var doneIEAlphaFix, doneIETransform, expandedURLs, fixalpha, isMSIE55, - relativeforfloats, setrelative, hasClass; - -// Also returns true for IE6, 7, 8, 9 and 10. createPopup is removed in IE11. -// Good thing this is only loaded for IE <= 6 by wikibits. -// Might as well set it to true. -isMSIE55 = window.isMSIE55 = ( window.showModalDialog && window.clipboardData && window.createPopup ); -doneIETransform = window.doneIETransform = undefined; -doneIEAlphaFix = window.doneIEAlphaFix = undefined; - -window.hookit = function () { - if ( !doneIETransform && document.getElementById && document.getElementById( 'bodyContent' ) ) { - doneIETransform = true; - relativeforfloats(); - fixalpha(); - } -}; - -if ( document.attachEvent ) { - document.attachEvent( 'onreadystatechange', window.hookit ); -} - -// png alpha transparency fixes -fixalpha = window.fixalpha = function ( logoId ) { - // bg - if ( isMSIE55 && !doneIEAlphaFix ) { - var bg, imageUrl, linkFix, logoa, logospan, plogo; - plogo = document.getElementById( logoId || 'p-logo' ); - if ( !plogo ) { - return; - } - - logoa = plogo.getElementsByTagName('a')[0]; - if ( !logoa ) { - return; - } - - bg = logoa.currentStyle.backgroundImage; - imageUrl = bg.substring( 5, bg.length - 2 ); - - doneIEAlphaFix = true; - - if ( imageUrl.substr( imageUrl.length - 4 ).toLowerCase() === '.png' ) { - logospan = logoa.appendChild( document.createElement( 'span' ) ); - - logoa.style.backgroundImage = 'none'; - logospan.style.filter = 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src=' + imageUrl + ')'; - logospan.style.height = '100%'; - logospan.style.position = 'absolute'; - logospan.style.width = logoa.currentStyle.width; - logospan.style.cursor = 'hand'; - // Center image with hack for IE5.5 - if ( document.documentElement.dir === 'rtl' ) { - logospan.style.right = '50%'; - logospan.style.setExpression( 'marginRight', '"-" + (this.offsetWidth / 2) + "px"' ); - } else { - logospan.style.left = '50%'; - logospan.style.setExpression( 'marginLeft', '"-" + (this.offsetWidth / 2) + "px"' ); - } - logospan.style.top = '50%'; - logospan.style.setExpression( 'marginTop', '"-" + (this.offsetHeight / 2) + "px"' ); - - linkFix = logoa.appendChild( logoa.cloneNode() ); - linkFix.style.position = 'absolute'; - linkFix.style.height = '100%'; - linkFix.style.width = '100%'; - } - } -}; - -if ( isMSIE55 ) { - // ondomready - $( fixalpha ); -} - -// fix ie6 disappering float bug -relativeforfloats = window.relativeforfloats = function () { - var bc, tables, divs; - bc = document.getElementById( 'bodyContent' ); - if ( bc ) { - tables = bc.getElementsByTagName( 'table' ); - divs = bc.getElementsByTagName( 'div' ); - setrelative( tables ); - setrelative( divs ); - } -}; - -setrelative = window.setrelative = function ( nodes ) { - var i = 0; - while ( i < nodes.length ) { - if( ( ( nodes[i].style.float && nodes[i].style.float !== ( 'none' ) || - ( nodes[i].align && nodes[i].align !== ( 'none' ) ) ) && - ( !nodes[i].style.position || nodes[i].style.position !== 'relative' ) ) ) - { - nodes[i].style.position = 'relative'; - } - i++; - } -}; - -// Expand links for printing -hasClass = function ( classText, classWanted ) { - var i = 0, classArr = classText.split(/\s/); - for ( i = 0; i < classArr.length; i++ ) { - if ( classArr[i].toLowerCase() === classWanted.toLowerCase() ) { - return true; - } - } - return false; -}; - -expandedURLs = window.expandedURLs = undefined; - -window.onbeforeprint = function () { - var allLinks, contentEl, expandedLink, expandedText, i; - - expandedURLs = []; - contentEl = document.getElementById( 'content' ); - - if ( contentEl ) { - allLinks = contentEl.getElementsByTagName( 'a' ); - - for ( i = 0; i < allLinks.length; i++ ) { - if ( hasClass( allLinks[i].className, 'external' ) && !hasClass( allLinks[i].className, 'free' ) ) { - expandedLink = document.createElement( 'span' ); - expandedText = document.createTextNode( ' (' + allLinks[i].href + ')' ); - expandedLink.appendChild( expandedText ); - allLinks[i].parentNode.insertBefore( expandedLink, allLinks[i].nextSibling ); - expandedURLs[i] = expandedLink; - } - } - } -}; - -window.onafterprint = function() { - for ( var i = 0; i < expandedURLs.length; i++ ) { - if ( expandedURLs[i] ) { - expandedURLs[i].removeNode( true ); - } - } -}; - -}( mediaWiki, jQuery ) ); |