Firepatrol

Mark changes as patrolled on MediaWiki wikis.

θα χρειαστεί να εγκαταστήσετε μια επέκταση όπως το Tampermonkey, το Greasemonkey ή το Violentmonkey για να εγκαταστήσετε αυτόν τον κώδικα.

You will need to install an extension such as Tampermonkey to install this script.

θα χρειαστεί να εγκαταστήσετε μια επέκταση όπως το Tampermonkey ή το Violentmonkey για να εγκαταστήσετε αυτόν τον κώδικα.

θα χρειαστεί να εγκαταστήσετε μια επέκταση όπως το Tampermonkey ή το Userscripts για να εγκαταστήσετε αυτόν τον κώδικα.

You will need to install an extension such as Tampermonkey to install this script.

Θα χρειαστεί να εγκαταστήσετε μια επέκταση διαχείρισης κώδικα χρήστη για να εγκαταστήσετε αυτόν τον κώδικα.

(Έχω ήδη έναν διαχειριστή κώδικα χρήστη, επιτρέψτε μου να τον εγκαταστήσω!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(Έχω ήδη έναν διαχειριστή στυλ χρήστη, επιτρέψτε μου να τον εγκαταστήσω!)

// ==UserScript==
// @name			Firepatrol
// @version			4.2.2
// @namespace		itsafeature.org
// @description	    Mark changes as patrolled on MediaWiki wikis.
// @icon            data:image/png;base64,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
// @match           https://*/*diff=*
// @match           https://*/*action=markpatrolled*
// @match           https://*/*wiki*
// @grant           window.close
// @grant           GM_notification
// ==/UserScript==

// Firepatrol marks unreviewed (unpatrolled) changes as reviewed (patrolled).
// It uses the shortcut M. When the change has already been patrolled,
// you are taken to the next page.

let language = 1; // 0 is Dutch, 1 is English
let f9KeyEnabled = true; // Mark as patrolled with F9
let mKeyEnabled = true; // Mark as patrolled with m
let tKeyEnabled = true; // Send thanks with t
let closeTabAfterPatrol = true; // dom.allow_scripts_to_close_windows needs to be true in Firefox, in Chrome this won't work

(function(){

document.addEventListener('keydown', async function(e) {
	let patrolled = ["Gemarkeerd!", "Patrolled!"];
	let tryagain = ["Probeer opnieuw", "Try again"];
	let marking = ["Markeren als gecontroleerd...", "Marking as patrolled..."];

	const userLang = navigator.language;
	if(userLang.startsWith("nl-") || userLang == "nl"){
		language = 0;
	}

    function optionallyCloseTab(markedAsPatrolled){
        let timeout = 200;
        if(markedAsPatrolled == false) timeout = 0;

		// there is no next link
		if(closeTabAfterPatrol){
			setTimeout(function(){
				window.close();
			}, timeout);
		}
	}

	function doNextAction(nextLink, markedAsPatrolled){
		if(nextLink === null){
		 	optionallyCloseTab(markedAsPatrolled);
		}else{
			window.location.href = nextLink;
		}
	}

	async function doMark(){
        let nextLink = document.querySelector("#differences-nextlink");

        let patrolLink = document.querySelector(".patrollink");
        if(window.location.href.includes("diff") == false && window.location.href.includes("action=") == false){
            if(patrolLink == undefined){
                return; // Unwanted behaviour, nothing to mark
            }
        }

		if(patrolLink == undefined){
            doNextAction(nextLink, false);
            return;
		}
		patrolLink.getElementsByTagName("a")[0].click();
        const clicked = await GM.notification({ text: patrolled[language], timeout: 1000 });

		doNextAction(nextLink, true);
	}

    function sendThanks(){
        let thanksLink = document.querySelector(".mw-thanks-thank-link");
        if(thanksLink == undefined) return;
        thanksLink.click();

        setTimeout(function(){
            let thanksLink1 = document.querySelectorAll(".mw-thanks-thank-link")[1];
            thanksLink1.click();
        }, 100);
    }

    if (((f9KeyEnabled&& e.key == 'F9') || (mKeyEnabled && e.key == 'm')) && !e.shiftKey && !e.ctrlKey && !e.altKey && !e.metaKey) {
        // get mark as patrolled. If not available, this page might be already marked as patrolled
        let textContextPatrolLink = document.querySelector(".patrollink")?.getElementsByTagName("a")[0];
        if(textContextPatrolLink != undefined) textContextPatrolLink.textContent = marking[language];

        if(document.readyState == "complete"){
            await doMark();
        }
    }

    if(tKeyEnabled == true){
        if (e.key == 't' && !e.shiftKey && !e.ctrlKey && !e.altKey && !e.metaKey) {
            // Send thanks if possible. If not available, the user might be already thanked
            if(document.readyState == "complete"){
                sendThanks();
            }
        }
    }
}, false);

})();