सदस्य:Eatcha/restorer.js
सूचना: यह पृष्ठ सुरक्षित करने बाद, परिवर्तनों को देखने लिए ब्राउज़र का कैश ख़ाली करने की आवश्यकता हो सकती है।
- मोज़िला / फ़ायरफ़ॉक्स / सफ़ारी: shift hold करें जब आप reload क्लिक करते है, या Ctrl-Shift-R (अपल मैक में Cmd-Shift-R) दबाएँ;
- गूगल क्रोम: Ctrl-shift-R (मैक में Cmd-Shift-R) दबाएँ
- इंटरनेट एक्सप्लोरर: Ctrl hold करें जब आप refresh क्लिक करते हैं, या Ctrl-F5 क्लिक करते हैं;
- कॉङ्करर: सिर्फ़ Reload बटन पर क्लिक करें, या F5 क्लिक करें;
- ऑपरा सदस्य को Tools→Preferences में सम्पूर्ण कैश ख़ाली करने की ज़रूरत हो सकती है।
// Easily restore an older version of a page
// Documentation at [[User:BrandonXLF/Restorer]]
$(function(){
function restore (user, revid) {
$.post( mw.config.get('wgScriptPath') + '/api.php', {
action: 'edit',
pageid: mw.config.get('wgArticleId'),
undo: mw.config.get('wgCurRevisionId'),
undoafter: revid,
summary: 'Restored revision ' + revid + ' by [[Special:Contributions/' + user + '|' + user + ']] (Restored revision using restorer see. https://w.wiki/BVe)',
token: mw.user.tokens.get('csrfToken'),
format: 'json'
})
.fail(function (a,b,c,d,e) {
console.log(a,b,c,d,e);
mw.notify('An error occured while restoring the revision.', {type:'error'});
})
.done(function (result) {
console.log(result);
if (result.error) {
mw.notify(result.error.info, {type:'error'});
} else {
mw.notify('Restored revision sucessfully.');
location.reload();
}
});
}
function addLink (item) {
var revid = item.getAttribute('data-mw-revid'), user, links, ele, parent;
if (revid != mw.config.get('wgCurRevisionId')) {
user = item.getElementsByClassName('mw-userlink')[0].textContent.replace('User:','');
links = item.getElementsByClassName('mw-changeslist-links');
links = links[links.length - 1];
parent = document.createElement('span');
ele = document.createElement('a');
ele.addEventListener('click', function() {
restore(user, revid);
});
ele.innerHTML = 'restore';
parent.appendChild(ele);
links.appendChild(parent);
}
}
(function () {
if (location.search.includes('action=history')) {
var i, parents = document.querySelectorAll('li[data-mw-revid]');
console.log(parents);
for (i = 0; i < parents.length; i++) {
addLink(parents[i]);
}
}
})();
});