最近在MC玩家社区WIKI撰写模组资料,需要上传很多模组物品的材质图片。
wiki安装了MsUpload插件,可以批量上传文件,但不可以选择协议。Wiki的封禁方针中规定了不填写/填错授权协议会被处罚。

模组的物品、方块资料列表通常会用到大家族模板。可以使用{{图标lite}}模板添加[图标]文字样式,如果没上传对应的图片文件会在文本前显示一个问号,点击问号可以跳转到上传文件页面。

为了更快速的操作页面、填写文件描述和协议,我写了下面一个脚本:

$("#wpUploadDescription").text("[[分类:MOD材质]]");   // 自动填充描述
$("#wpLicense").get(0).value = "License CC-BY";      // 自动填充协议

$(document).ready(function() {
    $(window).on('keypress', function(e) {
        if (e.keyCode === 97) $('#wpUploadFile').trigger('click');          // A 添加文件
        if (e.keyCode === 115) $('.mw-htmlform-submit').trigger('click');   // S 上传文件
    })
})

脚本的生效网页设置为 https://wiki.biligame.com/mcplayer/index.php?title=特殊:上传文件*
这样,进入上传文件页面会自动填好文件的描述和协议,按键盘上的A键可以呼出文件选择窗口,按S可以提交表单

完整脚本:

// ==UserScript==
// @name         MCPlayerWiki上传文件插件
// @namespace    https://fang.blog.miri.site/
// @version      0.1
// @description  用这个插件的人要懒死了
// @author       Mr_Fang
// @match        https://wiki.biligame.com/mcplayer/index.php?title=%E7%89%B9%E6%AE%8A:%E4%B8%8A%E4%BC%A0%E6%96%87%E4%BB%B6*
// @grant        none
// ==/UserScript==

(function() {
    $("#wpUploadDescription").text("[[分类:MOD材质]]");   // 自动填充描述
    $("#wpLicense").get(0).value = "License CC-BY";      // 自动填充协议

    $(document).ready(function() {
        $(window).on('keypress', function(e) {
            if (e.keyCode === 97) $('#wpUploadFile').trigger('click');          // A 添加文件
            if (e.keyCode === 115) $('.mw-htmlform-submit').trigger('click');   // S 上传文件
        })
    })
})();