263
个编辑
imported>=海豚= 无编辑摘要 |
小 (→top:bad link repair, replaced: hmoegirl.com → hmoegirl.info) |
||
(未显示3个用户的10个中间版本) | |||
第1行: | 第1行: | ||
// <pre> | // <pre> | ||
/* 这里的任何JavaScript将只为管理员加载 */ | /* 这里的任何JavaScript将只为管理员加载 */ | ||
(function($, mw) { | "use strict"; | ||
(function ($, mw) { | |||
/* 函数定义块 */ | /* 函数定义块 */ | ||
//首字母大写 | //首字母大写 | ||
function toUpperFirstCase(t) { | function toUpperFirstCase(t) { | ||
return t[0].substring(0, 1).toUpperCase() + t.substring(1); | return t[0].substring(0, 1).toUpperCase() + t.substring(1); | ||
} | } | ||
//添加删除原因链接 | //添加删除原因链接 | ||
第20行: | 第12行: | ||
var href = $obj.css("margin-right", "1em")[0].href, | var href = $obj.css("margin-right", "1em")[0].href, | ||
reasonPageName = href.slice(href.indexOf("title=") + 6, href.indexOf("&action")); | reasonPageName = href.slice(href.indexOf("title=") + 6, href.indexOf("&action")); | ||
$obj.after('<a target="_blank" href="/' + reasonPageName + '">浏览' + act + | $obj.after('<a target="_blank" href="/' + reasonPageName + '">浏览' + act + " 原因</a>"); | ||
} | } | ||
//防滥用过滤器相关 | //防滥用过滤器相关 | ||
// eslint-disable-next-line no-unused-vars | |||
function abuseLog() { | function abuseLog() { | ||
if ($(".mw-special-AbuseLog")[0]) { | if ($(".mw-special-AbuseLog")[0]) { | ||
var rawInput = $('input[name="wpSearchFilter"]').val().split("|"); | var rawInput = $('input[name="wpSearchFilter"]').val().split("|"); | ||
var needToggle = new Set(); | var needToggle = new Set(); | ||
$(".plainlinks li").each(function() { | $(".plainlinks li").each(function () { | ||
var self = $(this); | var self = $(this); | ||
var id = -1; | var id = -1; | ||
第44行: | 第37行: | ||
}); | }); | ||
if ($(".AbuseFilterNeedHidden")[0]) { | if ($(".AbuseFilterNeedHidden")[0]) { | ||
mw.loader.addStyleTag("body.AbuseFilterHidden .AbuseFilterNeedHidden { display: none; }"); | mw.loader.addStyleTag("body.AbuseFilterHidden .AbuseFilterNeedHidden { display: none; } "); | ||
var lastStatus = localStorage.getItem("AnnTools-abuseLog-hidden") === "true"; | var lastStatus = localStorage.getItem("AnnTools-abuseLog-hidden") === "true"; | ||
var bdy = $("body"); | var bdy = $("body"); | ||
第52行: | 第45行: | ||
val: lastStatus ? "显示" : "隐藏", | val: lastStatus ? "显示" : "隐藏", | ||
on: { | on: { | ||
click: function() { | click: function () { | ||
if ($("body").hasClass("AbuseFilterHidden")) { | if ($("body").hasClass("AbuseFilterHidden")) { | ||
$(this).val("隐藏"); | $(this).val("隐藏"); | ||
第73行: | 第66行: | ||
} | } | ||
} | } | ||
// | //Widget 预加载相关 | ||
function widgetPreload() { | function widgetPreload() { | ||
if (mw.config.get( | if (mw.config.get("wgAction") === "edit") { | ||
var regex = /[-_,. | var regex = /[-_,./\\]/; | ||
if (regex.test(mw.config.get( | if (regex.test(mw.config.get("wgPageName"))) { | ||
window.onbeforeunload = undefined; | window.onbeforeunload = undefined; | ||
$(window).off("beforeunload"); | $(window).off("beforeunload"); | ||
location.replace( | location.replace(mw.config.get("wgServer") + mw.config.get("wgScriptPath") + "/index.php?action=edit&title=" + mw.config.get("wgPageName").replace(/ |_/g, "").replace(/^([^/]*)[/\\].*$/i, "$1").split(regex).map(function (n) { | ||
return toUpperFirstCase(n); | |||
}).join("")); | |||
return; | return; | ||
} | } | ||
var flag = ("wg" + mw.config.get( | var flag = ("wg" + mw.config.get("wgTitle")).replace(/ /g, ""); | ||
$("#wpTextbox1").val("<noinclude> </noinclude><includeonly><!--{if !isset($" + flag + ") || !$" + flag + '}--><!--{assign var="' + flag + '" value=true scope="global"}--><script>\n"use strict";\nwindow. | $("#wpTextbox1").val("<noinclude> </noinclude><includeonly><!--{if !isset($" + flag + ") || !$" + flag + '}--><!--{assign var="' + flag + '" value=true scope="global"}--><script>\n"use strict";\nwindow.addEventListener(\'jquery-ready\', () => {\n\n});\n</script><!--{/if}--></includeonly>'); | ||
} | |||
if ($("#mw-content-text > .mw-parser-output > .noarticletext")[0]) { | |||
$(document.body).addClass("noWidget"); | |||
} | } | ||
} | } | ||
//防滥用过滤器列表 | //防滥用过滤器列表 | ||
function | function AbuseList() { | ||
var idList = $( | var idList = $(".TablePager_col_af_id a"), | ||
lvList = $( | lvList = $(".TablePager_col_af_hidden"), | ||
idLength = idList.last().text().length; | idLength = idList.last().text().length; | ||
idList.each(function() { | idList.each(function () { | ||
var zero = | var zero = ""; | ||
while ($(this).text().length + zero.length < idLength) zero += | while ($(this).text().length + zero.length < idLength) { | ||
$(this).prepend('<span style="speak:none;visibility:hidden;color:transparent;">' + zero + | zero += "0"; | ||
} | |||
$(this).prepend('<span style="speak:none;visibility:hidden;color:transparent;">' + zero + "</span>"); | |||
}); | }); | ||
lvList.each(function() { | lvList.each(function () { | ||
// if ($(this).text().length == 2) $(this).prepend('<span style="speak:none;visibility:hidden;color:transparent;">已</span>'); | // if ($(this).text().length == 2) $(this).prepend('<span style="speak:none;visibility:hidden;color:transparent;">已</span>'); | ||
}); | }); | ||
} | } | ||
// 从MediaWiki拷过来的用于动态修改侧边栏 | // 从MediaWiki拷过来的用于动态修改侧边栏 | ||
// eslint-disable-next-line no-unused-vars | |||
function modifySidebar(action, section, name, link) { | function modifySidebar(action, section, name, link) { | ||
try { | try { | ||
var target = { | var target = { | ||
languages: "#p-lang", | |||
toolbox: "#p-tb" | |||
} [section] || | }[section] || "#p-" + section; | ||
if (action == | if (action === "add") { | ||
if (action == | $(target).find("div:first ul:first").append('<li class="plainlinks"><a href="' + link + '">' + name + "</a></li>"); | ||
} | |||
if (action === "remove") { | |||
$(target).find('div:first ul:first li a[href="' + link + '"][title="' + name + '"]').parent().hide(); | |||
} | |||
} catch (e) { | } catch (e) { | ||
console.debug( | console.debug("modifySidebar", e); // let's just ignore what's happened | ||
} | } | ||
} | } | ||
//评论栏管理链接 | //评论栏管理链接 | ||
function flowthreadAdminLink() { | function flowthreadAdminLink() { | ||
var link = $( | var link = $("<div/>", { | ||
id: "flowthreadAdminLink", | |||
css: { | |||
"font-size": "12px", | |||
color: "#999", | |||
"text-align": "right" | |||
} | |||
}).append('<a href="' + mw.config.get("wgServer") + mw.config.get("wgScriptPath") + '/MediaWiki:Flowthread-blacklist" style="margin-right:8px;" target="_blank">关键词过滤名单</a>') | |||
.append('<a href=" | .append('<a href="' + mw.config.get("wgServer") + mw.config.get("wgScriptPath") + '/Special:%E7%AE%A1%E7%90%86FlowThread%E8%AF%84%E8%AE%BA" target="_blank">评论管理</a>'); | ||
$( | $("#flowthread").append(link); | ||
} | } | ||
//i18n语言链接 | //i18n语言链接 | ||
function i18nLink() { | function i18nLink() { | ||
$('#mw-content-text a.new[href$="/zh-cn"], #mw-content-text a.new[href$="/zh-tw"]').each(function(_, ele) { | $('#mw-content-text a.new[href$="/zh-cn"], #mw-content-text a.new[href$="/zh-tw"], #mw-content-text a.new[href$="/zh-hk"]').each(function (_, ele) { | ||
$(ele).removeClass( | $(ele).removeClass("new").attr({ | ||
title: ele.title.replace(/\/zh-[a-z]+|(页面不存在)/g, | title: ele.title.replace(/\/zh-[a-z]+|(页面不存在)/g, ""), | ||
href: ele.href.replace(/\/zh-[a-z]+/g, | href: ele.href.replace(/\/zh-[a-z]+/g, "") | ||
}); | }); | ||
}); | }); | ||
} | } | ||
/* 函数执行块 */ | /* 函数执行块 */ | ||
$(function() { | $(function () { | ||
//Widget预加载模板 | //Widget预加载模板 | ||
if (mw.config.get( | if (mw.config.get("wgNamespaceNumber") === 274 && !mw.config.get("wgCurRevisionId")) { | ||
widgetPreload(); | |||
} | |||
//删除保护原因浏览链接 | //删除保护原因浏览链接 | ||
if (window.location.href.indexOf("action=delete") != -1) { | if (window.location.href.indexOf("action=delete") !== -1) { | ||
if ($(".mw-delete-editreasons")[0]) addLink($(".mw-delete-editreasons a"), | if ($(".mw-delete-editreasons")[0]) { | ||
if ($(".mw-filedelete-editreasons")[0]) addLink($(".mw-filedelete-editreasons a"), | addLink($(".mw-delete-editreasons a"), " 删除"); | ||
} | |||
if ($(".mw-filedelete-editreasons")[0]) { | |||
addLink($(".mw-filedelete-editreasons a"), " 删除"); | |||
} | |||
} | |||
if (window.location.href.indexOf("action=protect") !== -1 && $(".mw-protect-editreasons")[0]) { | |||
addLink($(".mw-protect-editreasons a"), "保护"); | |||
} | } | ||
//防滥用过滤器日志 | //防滥用过滤器日志 | ||
// abuseLog(); | // abuseLog(); | ||
//防滥用过滤器列表 | //防滥用过滤器列表 | ||
if ($( | if ($(".mw-special-AbuseFilter")[0]) { | ||
AbuseList(); | |||
} | |||
} | |||
//i18n语言链接 | //i18n语言链接 | ||
//评论管理 | //评论管理 | ||
setInterval(function() { | setInterval(function () { | ||
i18nLink(); | i18nLink(); | ||
if ($( | if ($("#flowthread")[0] && !$("#flowthreadAdminLink")[0]) { | ||
flowthreadAdminLink(); | |||
} | |||
}, 100); | }, 100); | ||
//积压工作 | |||
$('#pt-watchlist').after('<li id="pt-backlog" class="sysop-show"><a href="//www.hmoegirl.info/分类:积压工作">积压工作</a></li>'); | |||
}); | }); | ||
})(jQuery, mediaWiki); | })(jQuery, mediaWiki); | ||
// </pre> | // </pre> |