MediaWiki:Gadget-stockText.js
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.
/*
* stockText
* A lot of code is taken from version 35 of commons.wikimedia.org/wiki/MediaWiki:Gadget-stockText.js by [[User:Magnus Manske]] and [[User:Krinkle]]
*
* @author [[User:Tpt]]
* @license Multi-licensed under CC-BY 3.0, GFDL, MIT
*
* @todo improved UI
*/
( function ( $, mw ) {
if (
window.stockText === undefined
&& ( mw.config.get( 'skin' ) === 'vector' || mw.config.get( 'skin' ) === 'monobook' )
&& mw.config.get( 'wgNamespaceNumber' ) === 0
&& $.inArray( mw.config.get( 'wgAction' ), ['view', 'purge'] ) !== -1
&& $(".ws-disambiguation").length === 0
) {
var stockText = {
// Misc
ui_icon_maquette: '//upload.wikimedia.org/wikipedia/commons/thumb/6/6f/Document-properties.svg/20px-Document-properties.svg.png',
ui_icon_epub: '//upload.wikimedia.org/wikipedia/commons/thumb/d/d5/EPUB_silk_icon.svg/20px-EPUB_silk_icon.svg.png',
ui_icon_pdf: '//upload.wikimedia.org/wikipedia/commons/thumb/5/5f/Document-pdf.svg/20px-Document-pdf.svg.png',
ui_icon_mobi: '//upload.wikimedia.org/wikipedia/commons/thumb/a/ae/Mobi_icon.svg/20px-Mobi_icon.svg.png',
ui_icon_imprimer: '//upload.wikimedia.org/wikipedia/commons/thumb/3/3d/Document-print.svg/20px-Document-print.svg.png',
ui_icon_citer: '//upload.wikimedia.org/wikipedia/commons/thumb/4/4a/Cquote1_sh2.svg/20px-Cquote1_sh2.svg.png',
ui_icon_remove: '//upload.wikimedia.org/wikipedia/commons/thumb/7/75/Gnome-colors-window-close.svg/20px-Gnome-colors-window-close.svg.png',
init: function () {
var $enable, has_information, img_width, img_height, xoff, yoff, html;
if ( window.stockText_prevent !== undefined ) {
return;
}
if (mw.cookie.get('stockTextDisabled')) {
stockText.add_open_link();
return;
}
$('#stockText_base').remove();
// Initialize values
html = '<ul id="stockText_base" class="noprint ws-noexport">';
html += stockText.add_button_row( stockText.ui_icon_maquette, "call_maquette", false, 'Changer la maquette', '');
html += stockText.add_button_row( stockText.ui_icon_pdf, '//wsexport.wmflabs.org/?lang=fr&format=pdf-a5&page=' + mw.config.get('wgPageName'), true, 'Télécharger en PDF', 'Télécharger le livre au format PDF');
if($.inArray("Bon pour export", mw.config.get('wgCategories')) >= 0 ) {
var police = $('.wsexport-police');
if(police.length !== 0 && police.attr('data-wsexport-police') !== undefined) {
html += stockText.add_button_row( stockText.ui_icon_epub, '//wsexport.wmflabs.org/?lang=fr&format=epub&fonts=' + police.attr('data-wsexport-police') + '&page=' + mw.config.get('wgPageName'), true, 'Télécharger en ePub', 'Télécharger le livre au format ePub');
html += stockText.add_button_row( stockText.ui_icon_mobi, '//wsexport.wmflabs.org/?lang=fr&format=mobi&fonts=' + police.attr('data-wsexport-police') + '&page=' + mw.config.get('wgPageName'), true, 'MOBI', 'Télécharger le livre au format MOBI');
} else {
html += stockText.add_button_row( stockText.ui_icon_epub, '//wsexport.wmflabs.org/?lang=fr&format=epub&page=' + mw.config.get('wgPageName'), true, 'ePub', 'Télécharger le livre au format ePub');
html += stockText.add_button_row( stockText.ui_icon_mobi, '//wsexport.wmflabs.org/?lang=fr&format=mobi&page=' + mw.config.get('wgPageName'), true, 'MOBI', 'Télécharger le livre au format MOBI');
}
}
html += stockText.add_button_row( stockText.ui_icon_imprimer, '/w/index.php?title=' + mw.config.get('wgPageName') + '&printable=yes', true, 'Version imprimable', 'Version imprimable de la page');
if ($("#ws-title, .ws-title").length !== 0 ) {
html += stockText.add_button_row( stockText.ui_icon_citer, "call_citer", false, 'Citer le texte', 'Citer le texte dans différents formats');
}
html += '<a title="Cacher cette barre d’outils" id="stockText_remove"><img src="' + stockText.ui_icon_remove + '" /></a>';
html += "</ul>";
$("#top").before(html); //TODO improve
$('#stockText_remove').click(function () {
mw.cookie.set('stockTextDisabled', true, {
expires: 60,
path: '/'
});
$('#stockText_base').remove();
stockText.add_open_link();
});
$('#stockText_base .stockText_buttonrow_icon').fadeTo('fast', 0.7);
$('#stockText_base li')
.hover(function () {
$(this).find('.stockText_buttonrow_icon').fadeTo('fast', 1);
}, function () {
$(this).find('.stockText_buttonrow_icon').fadeTo('fast', 0.7);
});
},
add_button_row: function (icon_url, fkt, isUrl, title, desc) {
var imgid, a, ret;
imgid = 'stockText_icon_' + fkt;
if(isUrl) {
a = '<a rel="nofollow" href="' + fkt + '" title="' + desc + '">';
} else {
a = '<a href="#" title="' + desc + '" onclick="stockText.' + fkt + '(); return false;">';
}
ret = "<li id='stockText_" + fkt + "' style='display: inline;'>";
ret += a;
ret += "<span class='stockText_buttonrow_icon'><img id='" + imgid + "' src='" + icon_url + "' /></span>";
ret += " <span class='stockText_buttonrow_text'>" + title + "</span> ";
ret += "</a></li>";
return ret;
},
add_open_link: function () {
$enable = $('<div id="stockText_openlink"><a href="#">Ouvrir la barre d’outils</a></div>');
$enable.click(function (){
mw.cookie.set('stockTextDisabled', null, {
path: '/'
});
$('#stockText_openlink').remove();
stockText.init();
});
$("#top").append($enable);
},
call_maquette: function () {
self.toggle_layout();
$("li#stockText_call_maquette a").attr('title', 'Vous utilisez la maquette ' + (self.layout_num + 1) );
},
call_citer: function () {
if( $('div#citeBox').length === 0) {
$.getScript('//fr.wikisource.org/w/index.php?title=MediaWiki:Wikisource.citeBox.js&action=raw&ctype=text/javascript', function() {
ws.citeBox.open();
});
} else {
ws.citeBox.open();
}
}
};
/* Expose globally */
window.stockText = stockText;
$(document).ready( stockText.init );
}
}( jQuery, mediaWiki) );