Skip to content
22 changes: 22 additions & 0 deletions Update.json
Original file line number Diff line number Diff line change
Expand Up @@ -2851,6 +2851,28 @@
}
],
"Notes": "No release notes were provided for this release."
},
"1.7.1": {
"UpdateDate": 1749457101103,
"Prerelease": true,
"UpdateContents": [
{
"PR": 806,
"Description": "Remove the statistics button from contest page"
}
],
"Notes": "No release notes were provided for this release."
},
"1.7.2": {
"UpdateDate": 1749865010938,
"Prerelease": true,
"UpdateContents": [
{
"PR": 808,
"Description": "feat: Enhance keyboard shortcuts for better cross-platform support"
}
],
"Notes": "No release notes were provided for this release."
}
}
}
52 changes: 6 additions & 46 deletions XMOJ.user.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// ==UserScript==
// @name XMOJ
// @version 1.7.0
// @version 1.7.2
// @description XMOJ增强脚本
// @author @XMOJ-Script-dev, @langningchen and the community
// @namespace https://github/langningchen
Expand Down Expand Up @@ -1075,7 +1075,7 @@ window.addEventListener('DOMContentLoaded', async () => {
// Remove the preloader style now that the page is loading and Bootstrap 5 will take over.
const preloadStyleElement = document.getElementById('tampermonkey-dark-preload');
if (preloadStyleElement) {
preloadStyleElement.remove();
preloadStyleElement.remove();
console.log("Removed minimal dark preload styles.");
}
fetch(ServerURL + "/Update.json", {cache: "no-cache"})
Expand Down Expand Up @@ -2115,13 +2115,6 @@ window.addEventListener('DOMContentLoaded', async () => {
document.querySelector("body > div > div.mt-3 > center > br:nth-child(2)").remove();
document.querySelector("body > div > div.mt-3 > center > br:nth-child(2)").remove();
document.querySelector("body > div > div.mt-3 > center > div > .red").innerHTML = String(document.querySelector("body > div > div.mt-3 > center > div > .red").innerHTML).replaceAll("<br>", "<br><br>");
let StaticButton = document.createElement("button");
document.querySelectorAll("body > div > div.mt-3 > center > div > .red")[1].appendChild(StaticButton);
StaticButton.className = "btn btn-outline-secondary";
StaticButton.innerText = "统计";
StaticButton.addEventListener("click", () => {
location.href = "https://www.xmoj.tech/conteststatistics.php?cid=" + SearchParams.get("cid");
});

document.querySelector("#problemset > tbody").innerHTML = String(document.querySelector("#problemset > tbody").innerHTML).replaceAll(/\t&nbsp;([0-9]*) &nbsp;&nbsp;&nbsp;&nbsp; 问题 &nbsp;([^<]*)/g, "$2. $1");

Expand Down Expand Up @@ -2240,7 +2233,7 @@ window.addEventListener('DOMContentLoaded', async () => {
if (Submitted) location.reload(); else AutoCheatButton.innerHTML = "自动提交当年代码";
});
document.addEventListener("keydown", (Event) => {
if (Event.code === 'Enter' && Event.ctrlKey) {
if (Event.code === 'Enter' && (Event.metaKey || Event.ctrlKey)) {
AutoCheatButton.click();
}
});
Expand Down Expand Up @@ -3148,39 +3141,6 @@ window.addEventListener('DOMContentLoaded', async () => {
});
});
}
} else if (location.pathname == "/conteststatistics.php") {
if (new URL(location.href).searchParams.get("cid") != null) {
document.title = "比赛 " + new URL(location.href).searchParams.get("cid") + " 统计";
}
document.querySelector("body > div > div.mt-3 > center > h3").innerText = "比赛统计";
if (UtilityEnabled("ResetType")) {
let Temp = document.getElementById("submission").childNodes;
for (let i = 0; i < Temp.length; i++) {
Temp[i].remove();
}
eval(document.querySelector("body > div.container > div > center > table:nth-child(4) > script:nth-child(6)").innerHTML);
document.querySelector("#cs > thead > tr > th:nth-child(1)").innerText = "题目编号";
document.querySelector("#cs > thead > tr > th:nth-child(10)").remove();
document.querySelector("#cs > thead > tr > th:nth-child(11)").innerText = "总和";
document.querySelector("#cs > thead > tr > th:nth-child(12)").remove();
document.querySelector("#cs > thead > tr > th:nth-child(12)").remove();
document.querySelector("#cs > thead > tr > th:nth-child(12)").remove();
document.querySelector("#cs > tbody > tr:last-child > td").innerText = "总和";
TidyTable(document.getElementById("cs"));
Temp = document.querySelector("#cs > tbody").children;
for (let i = 0; i < Temp.length; i++) {
let CurrentRowChildren = Temp[i].children;
CurrentRowChildren[9].remove();
CurrentRowChildren[11].remove();
CurrentRowChildren[11].remove();
CurrentRowChildren[11].remove();
for (let j = 0; j < CurrentRowChildren.length; j++) {
if (CurrentRowChildren[j].innerText == "") {
CurrentRowChildren[j].innerText = "0";
}
}
}
}
} else if (location.pathname == "/comparesource.php") {
if (UtilityEnabled("CompareSource")) {
if (location.search == "") {
Expand Down Expand Up @@ -4251,7 +4211,7 @@ int main()
TurnstileScript.src = "https://challenges.cloudflare.com/turnstile/v0/api.js?render=explicit&onload=CaptchaLoadedCallback";
document.body.appendChild(TurnstileScript);
ContentElement.addEventListener("keydown", (Event) => {
if (Event.ctrlKey && Event.keyCode == 13) {
if ((Event.metaKey || Event.ctrlKey) && Event.keyCode == 13) {
SubmitElement.click();
}
});
Expand Down Expand Up @@ -4428,7 +4388,7 @@ int main()
TurnstileScript.src = "https://challenges.cloudflare.com/turnstile/v0/api.js?render=explicit&onload=CaptchaLoadedCallback";
document.body.appendChild(TurnstileScript);
ContentElement.addEventListener("keydown", (Event) => {
if (Event.ctrlKey && Event.keyCode == 13) {
if ((Event.metaKey || Event.ctrlKey) && Event.keyCode == 13) {
SubmitElement.click();
}
});
Expand Down Expand Up @@ -4682,7 +4642,7 @@ int main()
ContentEditor.value = ContentEditor.value.substring(0, ContentEditor.value.indexOf("<br>"));
}
ContentEditor.addEventListener("keydown", (Event) => {
if (Event.ctrlKey && Event.keyCode == 13) {
if ((Event.metaKey || Event.ctrlKey) && Event.keyCode == 13) {
OKButton.click();
}
});
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "xmoj-script",
"version": "1.7.0",
"version": "1.7.2",
"description": "an improvement script for xmoj.tech",
"main": "AddonScript.js",
"scripts": {
Expand Down
Loading