ব্যবহারকারী:Borhan/restorer.js
লক্ষ্য করুন: প্রকাশ করার পর, পরিবর্তনগুলো দেখতে আপনাকে আপনার ব্রাউজারের ক্যাশে পরিষ্কার করার প্রয়োজন হতে পারে।
- ফায়ারফক্স / সাফারি: পুনরায় লোড-এ ক্লিক করার সময় শিফট টিপে ধরে রাখুন, অথবা হয় Ctrl-F5 বা Ctrl-R টিপুন (ম্যাকে ⌘-R টিপুন)
- গুগল ক্রোম: Ctrl-Shift-R (ম্যাকে ⌘-Shift-R) টিপুন
- ইন্টারনেট এক্সপ্লোরার / এজ: Ctrl ধরে রাখা অবস্থায় Refresh-এ ক্লিক করুন, অথবা Ctrl-F5 টিপুন
- অপেরা: Ctrl-F5 টিপুন।
// a fork of Restorer
// By [[en:w:User:BrandonXLF]]
mw.loader.using('mediawiki.api', function () {
const cur_revid = mw.config.get('wgCurRevisionId').toString();
function restore(revid) {
var ad_sm = prompt('পুনরানয়নের কারণ');
if (ad_sm === null) {
mw.notify('পুনরানয়ন বাতিল');
return;
}
var params = {
action: 'edit',
pageid: mw.config.get('wgArticleId'),
baserevid: cur_revid,
undo: cur_revid,
undoafter: revid,
summary: 'পাতাটিকে ' + revid + ' নং সংস্করণে ফেরত নেয়া হয়েছে' + '; ' + ad_sm + '',
format: 'json'
}, api = new mw.Api();
if (ad_sm === '') {
params.minor = '';
}
api.postWithToken('csrf', params).done(function (data) {
if (data.error) {
mw.notify(data.error.info, {type: 'error'});
} else {
mw.notify('পুনরানয়ন সফল');
}
}).fail(function () {
mw.notify('পুনরানয়নে ত্রুটি', {type: 'error'});
});
}
function addLink(item) {
var revid = item.getAttribute('data-mw-revid'), ele;
if (revid !== cur_revid) {
ele = document.createElement('span');
ele.addEventListener('click', function () {
restore(revid);
});
ele.innerHTML = 'পুনরানয়ন';
item.appendChild(ele);
}
}
if (mw.config.get('wgAction') === 'history') {
var parents = document.querySelectorAll('li[data-mw-revid]');
for (var i = 0; i < parents.length; i++) {
addLink(parents[i]);
}
}
});