MediaWiki:Gadget-stockText.js

Not: Yayımladıktan sonra değişiklikleri görmek için tarayıcınızın önbelleğini temizlemeniz gerekebilir.

  • Firefox / Safari: Shift tuşuna basılıyken Yeniden Yükle'ye tıklayın ya da Ctrl-F5 ya da Ctrl-R tıklayın (Mac için ⌘-R).
  • Google Chrome: Ctrl-Shift-R'ye basın. (Mac için ⌘-Shift-R)
  • Internet Explorer / Edge: Ctrl basılıyken Yenile'ye tıklayın ya da Ctrl-F5 yapın.
  • Opera: Ctrl-F5 tıklayın.
/*
 * 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 
	&& mw.config.get("wgPageName") !== "Anasayfa"
) {
 
	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, 'Başlık biçimini değiştir', '');
			html += stockText.add_button_row( stockText.ui_icon_pdf, '//tools.wmflabs.org/wsexport/tool/book.php?lang=tr&format=pdf-a5&page=' + mw.config.get('wgPageName'), true, 'PDF indir', 'Kitabı PDF olarak indir');
			html += stockText.add_button_row( stockText.ui_icon_epub, '//tools.wmflabs.org/wsexport/tool/book.php?lang=tr&format=epub-3&page=' + mw.config.get('wgPageName'), true, 'EPUB indir', 'Kitabı EPUB olarak indir');
			html += stockText.add_button_row( stockText.ui_icon_mobi, '//tools.wmflabs.org/wsexport/tool/book.php?lang=tr&format=mobi&page=' + mw.config.get('wgPageName'), true, 'MOBI indir', 'Kitabı MOBI olarak indir');
			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, '//tools.wmflabs.org/wsexport/tool/book.php?lang=tr&format=epub&fonts=' + police.attr('data-wsexport-police') + '&page=' + mw.config.get('wgPageName'), true, 'ePub indir', 'Kitabı ePub olarak indir');
					html += stockText.add_button_row( stockText.ui_icon_mobi, '//tools.wmflabs.org/wsexport/tool/book.php?lang=tr&format=mobi&fonts=' + police.attr('data-wsexport-police') + '&page=' + mw.config.get('wgPageName'), true, 'MOBI', 'Kitabı MOBI olarak indir');
				} else {
					html += stockText.add_button_row( stockText.ui_icon_epub, '//tools.wmflabs.org/wsexport/tool/book.php?lang=tr&format=epub&page=' + mw.config.get('wgPageName'), true, 'ePub', 'Kitabı ePub olarak  indir');
					html += stockText.add_button_row( stockText.ui_icon_mobi, '//tools.wmflabs.org/wsexport/tool/book.php?lang=tr&format=mobi&page=' + mw.config.get('wgPageName'), true, 'MOBI', 'Kitabı MOBI olarak  indir');
				}
			}
			html += stockText.add_button_row( stockText.ui_icon_imprimer, '/w/index.php?title=' + mw.config.get('wgPageName') + '&printable=yes', true, 'Yazdırılabilir versiyon', 'Sayfanın yazdırılabilir versiyonu');
			if ($("#ws-title, .ws-title").length !== 0 ) {
				html += stockText.add_button_row( stockText.ui_icon_citer, "call_citer", false, 'Alıntı yap', 'Farklı bir atıf türü kullanın');
			}

			html += '<a title="Bu araç çubuğunu gizle" 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="#">Araç çubuğunu aç</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', (self.layout_num + 1) + ' modelini kullanıyorsunuz' );
		},
 
		call_citer: function () {
			if( $('div#citeBox').length === 0) {
				$.getScript('//tr.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) );