MediaWiki:DataFetch.js
Aller à la navigation
Aller à la recherche
Dans d’autres langues: English • Español • Italiano • 日本語 • Polski • Português do Brasil • Русский •
Tous changements apportés au fichiers CSS et Javascript doivent être conforme aux règles de design du wiki.
Note : après avoir enregistré vos modifications, il se peut que vous deviez forcer le rechargement complet du cache de votre navigateur pour voir les changements.
- Firefox / Safari : maintenez la touche Maj (Shift) en cliquant sur le bouton Actualiser ou pressez Ctrl-F5 ou Ctrl-R (⌘-R sur un Mac)
- Google Chrome : appuyez sur Ctrl-Maj-R (⌘-Shift-R sur un Mac)
- Internet Explorer : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5
- Opera : allez dans Menu → Settings (Opera → Préférences sur un Mac) et ensuite à Confidentialité & sécurité → Effacer les données d’exploration → Images et fichiers en cache.
var shouldBypassCache = window.location.search.substr( 1 ).split( '&' ).indexOf( 'arkdata=no-cache' ) >= 0;
var CACHE_DURATION = shouldBypassCache ? 1 : 60 * 60 * 36;
window.arkLoadDataPages = function( pages, forceRecacheId ) {
var results = {},
scriptPath = mw.config.get( 'wgScriptPath' );
return Promise.all( pages.map( function ( pageName ) {
var isRequestingMain = pageName.startsWith( 'en:' ),
outName = pageName,
query = {
action: 'raw',
ctype: 'application/json',
maxage: CACHE_DURATION,
smaxage: CACHE_DURATION,
};
if ( forceRecacheId ) {
query.cb = forceRecacheId;
}
if ( isRequestingMain ) {
pageName = pageName.slice( 3 );
}
var url = mw.util.getUrl( pageName, query );
if ( isRequestingMain && mw.config.get( 'wgContentLanguage' ) !== 'en' && url.startsWith( scriptPath ) ) {
url = url.slice( scriptPath.length );
}
return fetch( url ).then( function ( response ) {
return response.json().then( function ( data ) {
results[outName] = data;
} );
} );
} ) ).then( function () {
return Promise.resolve( results );
} );
};