有兽档案馆
搜索
切换搜索
切换菜单
切换个人菜单
查看“User:顶呱呱的阿杰/citizen.js”的源代码
来自有兽档案馆
阅读
查看源代码
查看历史
用户页
讨论
更多操作
←
User:顶呱呱的阿杰/citizen.js
因为以下原因,您没有权限编辑该页面:
您所请求的操作,仅限具有
注册用户
、
自动确认用户
、
管理员
、
界面管理员
、
优质编辑者
、
确认用户
、
巡查员
、
档案理事员
等
权限
的
用户
执行。
若您尚未登录有兽档案馆账号,请您
登录
有兽档案馆账号后操作。
您没有权限编辑此JavaScript页面,因为此页面包含另一位用户的个人设置。
您尚未完成电子邮件确认,因此操作受限,请尽快
完成电子邮件确认
。
若您无法完成前述手续,请通过适当渠道请求管理员或档案理事员协助。
您可以查看和复制此页面的源代码。
若您无权编辑本页面,您可以
提出编辑请求
,提请有权限者代为编辑。
var LIBdictionary = { "steward": { id: "2", aimgsrc: "https://youshou.wiki/images/a/a4/%E6%A1%A3%E6%A1%88%E7%90%86%E4%BA%8B%E5%91%98%E6%9D%83%E9%99%90%E6%A0%87%E8%AF%86.svg", src: "https://youshou.wiki/wiki/%E6%9C%89%E5%85%BD%E6%A1%A3%E6%A1%88%E9%A6%86:%E6%A1%A3%E6%A1%88%E7%90%86%E4%BA%8B%E5%9B%A2%E9%98%9F" }, "sysop": { id: "3", aimgsrc: "https://youshou.wiki/images/3/3e/%E7%AE%A1%E7%90%86%E5%91%98%E6%9D%83%E9%99%90%E6%A0%87%E8%AF%86.svg", src: "https://youshou.wiki/wiki/%E6%9C%89%E5%85%BD%E6%A1%A3%E6%A1%88%E9%A6%86:%E7%AE%A1%E7%90%86%E5%91%98" }, "templateeditor": { id: "4", aimgsrc: "https://youshou.wiki/images/4/47/%E6%A8%A1%E6%9D%BF%E7%BC%96%E8%BE%91%E5%91%98%E6%9D%83%E9%99%90%E6%A0%87%E8%AF%86.svg", src: "https://youshou.wiki/wiki/%E6%9C%89%E5%85%BD%E6%A1%A3%E6%A1%88%E9%A6%86:%E6%A8%A1%E6%9D%BF%E7%BC%96%E8%BE%91%E5%91%98" }, "interface-admin": { id: "5", aimgsrc: "https://youshou.wiki/images/e/ea/%E7%95%8C%E9%9D%A2%E7%AE%A1%E7%90%86%E5%91%98%E6%9D%83%E9%99%90%E6%A0%87%E8%AF%86.svg", src: "https://youshou.wiki/wiki/%E6%9C%89%E5%85%BD%E6%A1%A3%E6%A1%88%E9%A6%86:%E7%95%8C%E9%9D%A2%E7%AE%A1%E7%90%86%E5%91%98" }, "patroller": { id: "6", aimgsrc: "https://youshou.wiki/images/6/67/%E5%B7%A1%E6%9F%A5%E5%91%98%E6%9D%83%E9%99%90%E6%A0%87%E8%AF%86.svg", src: "https://youshou.wiki/wiki/%E6%9C%89%E5%85%BD%E6%A1%A3%E6%A1%88%E9%A6%86:%E5%B7%A1%E6%9F%A5%E6%9D%A1%E4%BE%8B#%E5%B7%A1%E6%9F%A5%E5%91%98" }, "suppress": { id: "7", aimgsrc: "https://youshou.wiki/images/3/3d/%E7%9B%91%E7%9D%A3%E5%91%98%E6%9D%83%E9%99%90%E6%A0%87%E8%AF%86.svg", src: "https://youshou.wiki/wiki/%E6%9C%89%E5%85%BD%E6%A1%A3%E6%A1%88%E9%A6%86:%E7%9B%91%E7%9D%A3%E6%9D%A1%E4%BE%8B#%E7%9B%91%E7%9D%A3%E5%91%98" }, "bot": { id: "8", aimgsrc: "https://youshou.wiki/images/f/f0/%E6%9C%BA%E5%99%A8%E4%BA%BA%E6%9D%83%E9%99%90%E6%A0%87%E8%AF%86.svg", src: "https://youshou.wiki/wiki/%E6%9C%89%E5%85%BD%E6%A1%A3%E6%A1%88%E9%A6%86:%E6%9C%BA%E5%99%A8%E4%BA%BA" }, "autopatrolled": { id: "9", aimgsrc: "https://youshou.wiki/images/1/1e/%E4%BC%98%E8%B4%A8%E7%BC%96%E8%BE%91%E8%80%85%E6%9D%83%E9%99%90%E6%A0%87%E8%AF%86.svg", src: "https://youshou.wiki/wiki/%E6%9C%89%E5%85%BD%E6%A1%A3%E6%A1%88%E9%A6%86:%E4%BC%98%E8%B4%A8%E7%BC%96%E8%BE%91%E8%80%85" }, "massmessage-sender": { id: "10", aimgsrc: "https://youshou.wiki/images/c/cd/大量消息发送者权限标识.svg", src: "https://youshou.wiki/wiki/有兽档案馆:大量消息发送者" }, "autoconfirmed": { id: "11", aimgsrc: "https://youshou.wiki/images/4/49/确认用户权限标识.svg", src: "https://youshou.wiki/wiki/有兽档案馆:用户权限#自动确认用户" } }; //! src/USerQX/cs.ts $(function() { let WikiURLName = window.location.pathname; let matchResult = /^\/wiki\/User:[^\/]*$/.test(WikiURLName); if (!matchResult) { return; } let userNameMatch = (WikiURLName.match(/User:(.*)$/) || [])[1]; let UserMessage = "".concat(mw.config.get("wgServer"), "/api.php?action=query&list=users&usprop=groups&format=json&ususers=").concat(userNameMatch); function createVirtualLinkImg(href, aimgsrc) { return { tag: "a", props: { href, style: "display: inline-block;" }, children: [{ tag: "img", props: { src: aimgsrc, style: "width: 39px; margin: 0 3px;" } }] }; } function renderVirtualDOM(virtualDOM, container) { if (!(container instanceof jQuery)) { container = $(container); } function createRealNode(virtualNode) { const { tag, props, children } = virtualNode; const realNode = $("<" + tag + ">"); Object.keys(props).forEach((propName) => { realNode.attr(propName, String(props[propName])); }); if (children) { children.forEach((childVirtualNode) => { const childRealNode = createRealNode(childVirtualNode); realNode.append(childRealNode); }); } return realNode; } const realNodes = virtualDOM.map((virtualNode) => createRealNode(virtualNode)); realNodes.forEach((node) => { container.append(node); }); } function ArrayDataSort(dataArray) { dataArray.sort((a, b) => a.id - b.id); if (dataArray.length > 3) { return dataArray.slice(0, 3); } return dataArray; } function fetchUserData() { return new Promise((resolve, reject) => { if (!UserMessage) { return reject(new Error("UserMessage is not defined")); } $.get(UserMessage, function(data) { const userData = data.query.users[0].groups; resolve(userData); }, "json").fail(reject); }); } let retryCount = 0; function fetchUserDataWithRetry() { return fetchUserData().catch((error) => { retryCount++; if (retryCount <= 3) { console.warn("请求失败,正在进行第".concat(retryCount, "次重试...")); return fetchUserDataWithRetry(); } else { console.error("请求失败,已达到最大重试次数:", error); throw error; } }); } fetchUserDataWithRetry().then((UserData) => { if (!UserData || !Array.isArray(UserData)) { console.error("谢特", UserData); return; } let matchedGroups = UserData.filter((group) => LIBdictionary.hasOwnProperty(group)).map((group) => LIBdictionary[group]); let firstThreeItems = ArrayDataSort(matchedGroups); const virtualDOM = firstThreeItems.map((imgData) => imgData !== null && imgData !== void 0 && imgData.src && imgData !== null && imgData !== void 0 && imgData.aimgsrc ? createVirtualLinkImg(imgData.src, imgData.aimgsrc) : null); let dommountpoint = $("#content header.mw-body-header .page-heading .mw-indicators"); renderVirtualDOM(virtualDOM, dommountpoint); }).catch((error) => { console.error("最终请求失败,不再重试:", error); }); });
返回
User:顶呱呱的阿杰/citizen.js
。