مدیاویکی:Gadget-FileDeletionNominator.js
نکته: پس از انتشار ممکن است برای دیدن تغییرات نیاز باشد که حافظهٔ نهانی مرورگر خود را پاک کنید.
- فایرفاکس / سافاری: کلید Shift را نگه دارید و روی دکمهٔ Reload کلیک کنید، یا کلیدهای Ctrl-F5 یا Ctrl-R را با هم فشار دهید (در رایانههای اپل مکینتاش کلیدهای ⌘-R)
- گوگل کروم: کلیدهای Ctrl+Shift+R را با هم فشار دهید (در رایانههای اپل مکینتاش کلیدهای ⌘-Shift-R)
- اینترنت اکسپلورر/ Edge: کلید Ctrl را نگهدارید و روی دکمهٔ Refresh کلیک کنید، یا کلیدهای Ctrl-F5 را با هم فشار دهید
- اپرا: Ctrl-F5 را بفشارید.
/* by Arash.pt */
/*global $, mw*/
// <nowiki>
$(function () {
'use strict';
if (mw.config.get('wgNamespaceNumber') !== 6) {
return;
}
function image_nominate(my_reason) {
var img_user;
var r_year = digit_fa(new Date().getFullYear());
var r_month = digit_fa(new Date().getMonth() + 1);
new mw.Api().get({
format: 'json',
action: 'query',
titles: mw.config.get('wgPageName'),
prop:'imageinfo'
}).then(function (data) {
img_user = data.query.pages[Object.keys(data.query.pages)[0]].imageinfo[0].user;
// اضافه کردن به تصویر
return new mw.Api().post({ // page
format: 'json',
action: 'edit',
title: mw.config.get('wgPageName'),
summary: 'درخواست حذف پرونده',
prependtext: "{" + "{ffd|log=" + r_year + "/" + r_month + "}}" + "\n",
token: mw.user.tokens.get('csrfToken')
});
}).then(function () {
mw.notify('پیشنهاد حذف به پرونده اضافه شد');
// اضافه کردن به نظرخواهی
return new mw.Api().post({ // request
format: 'json',
action: 'edit',
title: 'ویکیپدیا:درخواست حذف پروندهها/' + digit_fa(r_year) + '/' + digit_fa(r_month) + '',
summary: 'اضافه کردن درخواست حذف به وپ:دحپ',
appendtext: "\n" + "{" + "{subst:ffd2|" + mw.config.get('wgTitle') + "|Uploader=" + img_user + "|Reason= " + my_reason + " – ~~" + "~~}}",
token: mw.user.tokens.get('csrfToken')
});
}).then(function () {
mw.notify('درخواست حذف پروند به وپ:دحپ اضافه شد');
// اطلاع به نامزدکننده
return new mw.Api().post({ // user
format: 'json',
action: 'edit',
title: 'بحث کاربر:' + img_user,
summary: 'اطلاعرسانی درخواست حذف پرونده به کاربر',
appendtext: "\n" + "{" + "{subst:fdw|" + mw.config.get('wgTitle') + "}}",
token: mw.user.tokens.get('csrfToken')
});
}).then(function () {
mw.notify('درخواست حذف پرونده به اطلاع کاربر رسید');
setTimeout(function () { location.reload(true) }, 1500);
}, function (error) {
mw.notify('به دلیلی موفقیتآمیز نبود: ' + error);
setTimeout(function () { location.reload(true) }, 1500);
});
}
function digit_fa(number) {
return number.toString().replace(/\d/g, function (x) {
return String.fromCharCode(x.charCodeAt(0) + 1728);
});
}
function image_nominate_box(){
OO.ui.prompt('دلیل حذف: ').then(function (result) {
if (result !== null)
image_nominate(result);
});
}
$(mw.util.addPortletLink(
'p-cactions',
'#',
'درخواست حذف پروندهها',
'img_nomination_btn',
'نامزد کردن پرونده برای حذف'
)).click(function(e) {
e.preventDefault();
image_nominate_box();
});
mw.loader.load('oojs-ui');
});