مدیاویکی:Gadget-BotTools2.js

از ویکی‌پدیا، دانشنامهٔ آزاد

نکته: برای دیدن تغییرات، ممکن است نیاز باشد که حافظهٔ نهانی مرورگر خود را پس از انتشار پاک‌سازی کنید. گوگل کروم، فایرفاکس، مایکروسافت اج و سافاری: کلید Shift را نگه دارید و روی دکمهٔ Reload در نوار ابزار مرورگر کلیک کنید. برای آگاهی از جزئیات و نحوهٔ پاک‌سازی حافظهٔ نهانی سایر مرورگرها، صفحهٔ ویکی‌پدیا:میانگیر مرورگرتان را خالی کنید را ببینید.

$(function() {
	function addBotLink(botName, id, tooltip, note, botUrl, imageUrl) {
		$(mw.util.addPortletLink(
			'p-cactions', '#', botName, id, tooltip
		)).click(function(e) {
			e.preventDefault();
			mw.notify(note, { autoHide: false });
			var pageTitle=mw.config.get('wgPageName')
			$.get(new mw.Uri(botUrl).extend({
				title: pageTitle,
				fawiki: mw.config.get('wgPageName').replace(/ /g,'_'),
				user: 'کاربر:' + mw.config.get('wgUserName'),
				namespace: mw.config.get('wgNamespaceNumber')
			}).toString()).then(function(result) {
				mw.notify(result.msg, {
					autoHide: false
				});
			});
		}).find('a').prepend(imageUrl ? [$('<img>', {
			src: imageUrl,
			height: 20,
			width: 20
		}), ' '] : '');
	}
	
	// If the user is blocked don't show these tools
	var TheQuery=mw.config.get("wgScriptPath") + '/api.php?format=json&action=query&list=users&usprop=blockinfo&ususers='+mw.config.get('wgUserName')
	var blocked;

	$.getJSON(TheQuery).then(function (query) {
		if (!query || !query.query) { return; }
		query = query.query;
		var user = query.users[0];
		try {
			blocked = typeof user.blockedby != "undefined";
		} catch(e) {
			return;
		}
	}).then(function() {
		if (blocked) {
			// alert( 'Yes')
			return;
		}
	});

	if (mw.config.get('wgNamespaceNumber') === 10) {
		// ابزار افزودن ناوباکس
		addBotLink(
			' افزودن ناوباکس',
			'ca-navebox',
			'افزودن الگوی ناوباکس به مقالات',
			'افزودن ناوباکس به مقالات آغاز شد، لطفاً کمی صبر کنید تا یک ساعت ممکن است طول بکشد.',
			'//dexbot.toolforge.org/addnavbox.php',
			'//upload.wikimedia.org/wikipedia/commons/3/3f/Ic_add_circle_48px.svg'
		);
	}
});