X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=resources%2Fsrc%2Fmediawiki.legacy%2Fwikibits.js;h=6eccc050a07bffa386638b306545bf05fcce1d83;hb=2ffff73a46c29cdad1cbf59063f4dd75debd3b4c;hp=80628490309da237f613ad10a2ee773fe0cc04a5;hpb=81ea14a7cb4d7c66f9565598986ba4f19d09a622;p=lhc%2Fweb%2Fwiklou.git diff --git a/resources/src/mediawiki.legacy/wikibits.js b/resources/src/mediawiki.legacy/wikibits.js index 8062849030..6eccc050a0 100644 --- a/resources/src/mediawiki.legacy/wikibits.js +++ b/resources/src/mediawiki.legacy/wikibits.js @@ -3,160 +3,32 @@ */ ( function ( mw, $ ) { var msg, - win = window, - ua = navigator.userAgent.toLowerCase(), - onloadFuncts = [], loadedScripts = {}; - /** - * User-agent sniffing. - * - * @deprecated since 1.17 Use jquery.client instead - */ - - msg = 'Use feature detection or module jquery.client instead.'; - - mw.log.deprecate( win, 'clientPC', ua, msg ); - - // Ignored dummy values - mw.log.deprecate( win, 'is_gecko', false, msg ); - mw.log.deprecate( win, 'is_chrome_mac', false, msg ); - mw.log.deprecate( win, 'is_chrome', false, msg ); - mw.log.deprecate( win, 'webkit_version', false, msg ); - mw.log.deprecate( win, 'is_safari_win', false, msg ); - mw.log.deprecate( win, 'is_safari', false, msg ); - mw.log.deprecate( win, 'webkit_match', false, msg ); - mw.log.deprecate( win, 'is_ff2', false, msg ); - mw.log.deprecate( win, 'ff2_bugs', false, msg ); - mw.log.deprecate( win, 'is_ff2_win', false, msg ); - mw.log.deprecate( win, 'is_ff2_x11', false, msg ); - mw.log.deprecate( win, 'opera95_bugs', false, msg ); - mw.log.deprecate( win, 'opera7_bugs', false, msg ); - mw.log.deprecate( win, 'opera6_bugs', false, msg ); - mw.log.deprecate( win, 'is_opera_95', false, msg ); - mw.log.deprecate( win, 'is_opera_preseven', false, msg ); - mw.log.deprecate( win, 'is_opera', false, msg ); - mw.log.deprecate( win, 'ie6_bugs', false, msg ); + function wikiUrlencode( page ) { + return encodeURIComponent( String( page ) ) + .replace( /'/g, '%27' ) + .replace( /%20/g, '_' ) + // wfUrlencode replacements + .replace( /%3B/g, ';' ) + .replace( /%40/g, '@' ) + .replace( /%24/g, '$' ) + .replace( /%21/g, '!' ) + .replace( /%2A/g, '*' ) + .replace( /%28/g, '(' ) + .replace( /%29/g, ')' ) + .replace( /%2C/g, ',' ) + .replace( /%2F/g, '/' ) + .replace( /%7E/g, '~' ) + .replace( /%3A/g, ':' ); + } /** - * DOM utilities for handling of events, text nodes and selecting elements - * * @deprecated since 1.17 Use jQuery instead */ - msg = 'Use jQuery instead.'; - - // Ignored dummy values - mw.log.deprecate( win, 'doneOnloadHook', undefined, msg ); - mw.log.deprecate( win, 'onloadFuncts', [], msg ); - mw.log.deprecate( win, 'runOnloadHook', $.noop, msg ); - mw.log.deprecate( win, 'changeText', $.noop, msg ); - mw.log.deprecate( win, 'killEvt', $.noop, msg ); - mw.log.deprecate( win, 'addHandler', $.noop, msg ); - mw.log.deprecate( win, 'hookEvent', $.noop, msg ); - mw.log.deprecate( win, 'addClickHandler', $.noop, msg ); - mw.log.deprecate( win, 'removeHandler', $.noop, msg ); - mw.log.deprecate( win, 'getElementsByClassName', function () { return []; }, msg ); - mw.log.deprecate( win, 'getInnerText', function () { return ''; }, msg ); - - // Run a function after the window onload event is fired - mw.log.deprecate( win, 'addOnloadHook', function ( hookFunct ) { - if ( onloadFuncts ) { - onloadFuncts.push( hookFunct ); - } else { - // If func queue is gone the event has happened already, - // run immediately instead of queueing. - hookFunct(); - } - }, msg ); - - $( win ).on( 'load', function () { - var i, functs; - - // Don't run twice - if ( !onloadFuncts ) { - return; - } - - // Deference and clear onloadFuncts before running any - // hooks to make sure we don't miss any addOnloadHook - // calls. - functs = onloadFuncts.slice(); - onloadFuncts = undefined; - - // Execute the queued functions - for ( i = 0; i < functs.length; i++ ) { - functs[ i ](); - } - } ); - - /** - * Toggle checkboxes with shift selection - * - * @deprecated since 1.17 Use jquery.checkboxShiftClick instead - */ - msg = 'Use jquery.checkboxShiftClick instead.'; - mw.log.deprecate( win, 'checkboxes', [], msg ); - mw.log.deprecate( win, 'lastCheckbox', null, msg ); - mw.log.deprecate( win, 'setupCheckboxShiftClick', $.noop, msg ); - mw.log.deprecate( win, 'addCheckboxClickHandlers', $.noop, msg ); - mw.log.deprecate( win, 'checkboxClickHandler', $.noop, msg ); - - /** - * Add a button to the default editor toolbar - * - * @deprecated since 1.17 Use mw.toolbar instead - */ - mw.log.deprecate( win, 'mwEditButtons', [], 'Use mw.toolbar instead.' ); - mw.log.deprecate( win, 'mwCustomEditButtons', [], 'Use mw.toolbar instead.' ); - - /** - * Spinner creation, injection and removal - * - * @deprecated since 1.18 Use jquery.spinner instead - */ - mw.log.deprecate( win, 'injectSpinner', $.noop, 'Use jquery.spinner instead.' ); - mw.log.deprecate( win, 'removeSpinner', $.noop, 'Use jquery.spinner instead.' ); - - /** - * Escape utilities - * - * @deprecated since 1.18 Use mw.html instead - */ - mw.log.deprecate( win, 'escapeQuotes', $.noop, 'Use mw.html instead.' ); - mw.log.deprecate( win, 'escapeQuotesHTML', $.noop, 'Use mw.html instead.' ); - - /** - * Display a message to the user - * - * @deprecated since 1.17 Use mediawiki.notify instead - * @param {string|HTMLElement} message To be put inside the message box - */ - mw.log.deprecate( win, 'jsMsg', function ( message ) { - if ( !arguments.length || message === '' || message === null ) { - return true; - } - if ( typeof message !== 'object' ) { - message = $.parseHTML( message ); - } - mw.notify( message, { autoHide: true, tag: 'legacy' } ); - return true; - }, 'Use mediawiki.notify instead.' ); - - /** - * Misc. utilities - * - * @deprecated since 1.17 Use mediawiki.util or jquery.accessKeyLabel instead - */ - msg = 'Use mediawiki.util instead.'; - mw.log.deprecate( win, 'addPortletLink', mw.util.addPortletLink, msg ); - mw.log.deprecate( win, 'appendCSS', mw.util.addCSS, msg ); - msg = 'Use jquery.accessKeyLabel instead.'; - mw.log.deprecate( win, 'tooltipAccessKeyPrefix', 'alt-', msg ); - mw.log.deprecate( win, 'tooltipAccessKeyRegexp', /\[(alt-)?(.)\]$/, msg ); - // mw.util.updateTooltipAccessKeys already generates a deprecation message. - win.updateTooltipAccessKeys = function () { - return mw.util.updateTooltipAccessKeys.apply( null, arguments ); - }; + mw.log.deprecate( window, 'addOnloadHook', function ( fn ) { + $( function () { fn(); } ); + }, 'Use jQuery instead.' ); /** * Wikipage import methods @@ -182,8 +54,7 @@ } function importScript( page ) { - var uri = mw.config.get( 'wgScript' ) + '?title=' + - mw.util.wikiUrlencode( page ) + + var uri = mw.config.get( 'wgScript' ) + '?title=' + wikiUrlencode( page ) + '&action=raw&ctype=text/javascript'; return importScriptURI( uri ); } @@ -206,22 +77,25 @@ } function importStylesheet( page ) { - var uri = mw.config.get( 'wgScript' ) + '?title=' + - mw.util.wikiUrlencode( page ) + + var uri = mw.config.get( 'wgScript' ) + '?title=' + wikiUrlencode( page ) + '&action=raw&ctype=text/css'; return importStylesheetURI( uri ); } msg = 'Use mw.loader instead.'; - mw.log.deprecate( win, 'loadedScripts', loadedScripts, msg ); - mw.log.deprecate( win, 'importScriptURI', importScriptURI, msg ); - mw.log.deprecate( win, 'importStylesheetURI', importStylesheetURI, msg ); + mw.log.deprecate( window, 'loadedScripts', loadedScripts, msg ); + mw.log.deprecate( window, 'importScriptURI', importScriptURI, msg ); + mw.log.deprecate( window, 'importStylesheetURI', importStylesheetURI, msg ); // Not quite deprecated yet. - win.importScript = importScript; - win.importStylesheet = importStylesheet; + window.importScript = importScript; + window.importStylesheet = importStylesheet; - // Replace document.write/writeln with basic html parsing that appends - // to the to avoid blanking pages. Added JavaScript will not run. + /** + * Replace document.write/writeln with basic html parsing that appends + * to the to avoid blanking pages. Added JavaScript will not run. + * + * @deprecated since 1.26 + */ $.each( [ 'write', 'writeln' ], function ( idx, method ) { mw.log.deprecate( document, method, function () { $( 'body' ).append( $.parseHTML( Array.prototype.join.call( arguments, '' ) ) );