کاربر:Truthminer/scripts/subpageBlanker.js

از ویکی شیعه

نکته: پس از انتشار ممکن است برای دیدن تغییرات نیاز باشد که حافظهٔ نهانی مرورگر خود را پاک کنید.

  • فایرفاکس / سافاری: کلید Shift را نگه دارید و روی دکمهٔ Reload کلیک کنید، یا کلید‌های Ctrl-F5 یا Ctrl-R را با هم فشار دهید (در رایانه‌های اپل مکینتاش کلید‌های ⌘-R)
  • گوگل کروم: کلیدهای Ctrl+Shift+R را با هم فشار دهید (در رایانه‌های اپل مکینتاش کلید‌های ⌘-Shift-R)
  • اینترنت اکسپلورر/ Edge: کلید Ctrl را نگه‌دارید و روی دکمهٔ Refresh کلیک کنید، یا کلید‌های Ctrl-F5 را با هم فشار دهید
  • اپرا: Ctrl-F5 را بفشارید.
$.when(
	$.ready,
	mw.loader.using(['mediawiki.util', 'mediawiki.api'])
).then(function() {
	var API = new mw.Api({
		ajax: {
			headers: {
				'Api-User-Agent': '[[User:Haghjoo/subpageBlanker.js]]'
			}
		}
	});
	var pageName = mw.config.get('wgPageName');
	var index = pageName.indexOf('/') + 1;
	var subpageName = pageName.substring(index);
	subpageName = subpageName.replace(/\_/g, ' ');
	var userName = mw.config.get('wgUserName');
	var noContent = '';
	var articleID = mw.config.get('wgArticleId');
	var summary = 'خالی کردن زیرصفحهٔ خود با کمک [[کاربر:Haghjoo/subpageBlanker|ابزار]]]';

	if (pageName.replace(/\_/, ' ').indexOf(userName) != -1 && pageName.indexOf('/') != -1) {
		var link = mw.util.addPortletLink('p-cactions', '#', 'زیرصفحهٔ پوچ', 'ca-spb', 'صفحه را خالی می‌کند (حذف نمی‌کند)');
		$(link).click(function(event) {
			if (confirm('آیا از خالی کردن زیرصفحهٔ «' + subpageName + '» در فضای کاربری خودتان مطمئن هستید؟')) {
				mw.notify('لطفاً صبر کنید...', {
					type: 'info',
					tag: 'spb'
				});
				event.preventDefault();
				blank_my_subpage(pageName, summary);
			}
		});
	}

	function blank_my_subpage(pageName, summary) {
		return API.postWithEditToken({
			action: 'edit',
			title: pageName,
			text: '',
			summary: summary,
			nocreate: '',
			minor: false,
		}).then(function (result) {
			if (result.edit.nochange !== undefined) {
				mw.notify('این صفحه در حال حاضر خالی است!', {
					type: 'error',
					tag: 'spb'
				});
			}
		});
	}
});
$(function() {
	if (JSON.parse(localStorage.getItem('blankMySubpage'))) {
		mw.notify('زیرصفحهٔ خالی خدمت شما!', {
			type: 'success'
		});
		localStorage.removeItem('blankMySubpage');
	}
});