Search Drachenwald OP

Adds a context menu item to search for a persona in the OP.

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name Search Drachenwald OP
// @namespace http://tampermonkey.net/
// @version 1.0
// @description Adds a context menu item to search for a persona in the OP.
// @author Leif Ershag
// @match *://*/*
// @grant GM_registerMenuCommand
// ==/UserScript==

(function() {
    'use strict';

    function submitSearchForm(query) {
        const form = document.createElement('form');
        form.method = 'POST';
        form.action = 'https://op.drachenwald.sca.org/search';
        form.target = '_blank'; // Open form submission in a new tab

        const input = document.createElement('input');
        input.type = 'hidden';
        input.name = 'persona';
        input.value = query;

        form.appendChild(input);
        document.body.appendChild(form);
        form.submit();
        document.body.removeChild(form);
    }

    function searchOp() {
        var name = window.getSelection().toString();
        submitSearchForm(name);
    }

    GM_registerMenuCommand('Search OP', function(x,y) {
        searchOp();
    });
})();