* continue loading jQuery and the MediaWiki modules. This code should work on
* even the most ancient of browsers, so be very careful when editing.
*/
+/*jshint unused: false, evil: true */
+/*globals mw, RLQ: true, $VARS, $CODE, performance */
-var mediaWikiLoadStart = ( new Date() ).getTime();
+var mediaWikiLoadStart = ( new Date() ).getTime(),
-if ( !window.performance ) {
- window.performance = {};
-}
-if ( !performance.mark ) {
- performance.mark = function () {};
-}
-performance.mark( 'mwLoadStart' );
+ mwPerformance = ( window.performance && performance.mark ) ? performance : {
+ mark: function () {}
+ };
+
+mwPerformance.mark( 'mwLoadStart' );
/**
* Returns false for Grade C supported browsers.
* - https://www.mediawiki.org/wiki/Compatibility#Browsers
* - https://jquery.com/browser-support/
*/
-
-/*jshint unused: false, evil: true */
-/*globals mw, RLQ: true, $VARS, $CODE */
function isCompatible( ua ) {
if ( ua === undefined ) {
ua = navigator.userAgent;
// Browsers with outdated or limited JavaScript engines get the no-JS experience
return !(
// Internet Explorer < 8
- ( ua.indexOf( 'MSIE' ) !== -1 && parseFloat( ua.split( 'MSIE' )[1] ) < 8 ) ||
+ ( ua.indexOf( 'MSIE' ) !== -1 && parseFloat( ua.split( 'MSIE' )[ 1 ] ) < 8 ) ||
// Firefox < 3
- ( ua.indexOf( 'Firefox/' ) !== -1 && parseFloat( ua.split( 'Firefox/' )[1] ) < 3 ) ||
+ ( ua.indexOf( 'Firefox/' ) !== -1 && parseFloat( ua.split( 'Firefox/' )[ 1 ] ) < 3 ) ||
// Opera < 12
( ua.indexOf( 'Opera/' ) !== -1 && ( ua.indexOf( 'Version/' ) === -1 ?
// "Opera/x.y"
- parseFloat( ua.split( 'Opera/' )[1] ) < 10 :
+ parseFloat( ua.split( 'Opera/' )[ 1 ] ) < 10 :
// "Opera/9.80 ... Version/x.y"
- parseFloat( ua.split( 'Version/' )[1] ) < 12
+ parseFloat( ua.split( 'Version/' )[ 1 ] ) < 12
) ) ||
// "Mozilla/0.0 ... Opera x.y"
- ( ua.indexOf( 'Opera ' ) !== -1 && parseFloat( ua.split( ' Opera ' )[1] ) < 10 ) ||
+ ( ua.indexOf( 'Opera ' ) !== -1 && parseFloat( ua.split( ' Opera ' )[ 1 ] ) < 10 ) ||
// BlackBerry < 6
ua.match( /BlackBerry[^\/]*\/[1-5]\./ ) ||
// Open WebOS < 1.5
startUp();
}
};
- document.getElementsByTagName( 'head' )[0].appendChild( script );
+ document.getElementsByTagName( 'head' )[ 0 ].appendChild( script );
}() );