Skip to content
This repository has been archived by the owner on Oct 3, 2023. It is now read-only.

忽略提醒后立刻不显示该提醒 #491

Merged
merged 2 commits into from
Sep 23, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Server/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,6 @@
},
"dependencies": {
"cheerio": "^1.0.0-rc.12",
"cryptojs": "^2.5.3"
"crypto-js": "^4.1.1"
}
}
10 changes: 10 additions & 0 deletions Update.json
Original file line number Diff line number Diff line change
Expand Up @@ -431,6 +431,16 @@
"Description": "编辑回复时提供预览"
}
]
},
"0.3.169": {
"UpdateDate": 1695455555937,
"Prerelease": true,
"UpdateContents": [
{
"PR": 491,
"Description": "忽略提醒后立刻不显示该提醒"
}
]
}
}
}
128 changes: 85 additions & 43 deletions Update/AutoLabel.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import * as github from '@actions/github';

const TrustedUsers= [
const TrustedUsers = [
"langningchen",
"boomzero",
"PythonSmall-Q"
Expand Down Expand Up @@ -35,6 +35,7 @@ const LabelList = [
"working-on-it"
];


let Data = github.context.payload.comment.body;
let Octokit = github.getOctokit(process.argv[2]);
let Owner = github.context.repo.owner;
Expand All @@ -49,68 +50,109 @@ console.log("IssueNumber: " + IssueNumber);
console.log("CommentID : " + CommentID);
console.log("User : " + User);

const AddLabel = (Label) => {
if (github.context.payload.issue.labels.find((label) => label.name === Label)) {
console.log("Label " + Label + " already exists");
return false;
}
if (!LabelList.includes(Label)) {
console.log("Label " + Label + " not exists");
return false;
}
console.log("Add label " + Label);
Octokit.issues.addLabels({
owner: Owner,
repo: Repo,
issue_number: IssueNumber,
labels: [Label]
});
return true;
};
const RemoveLabel = (Label) => {
if (!github.context.payload.issue.labels.find((label) => label.name === Label)) {
console.log("Label " + Label + " not exists");
return false;
}
console.log("Remove label " + Label);
Octokit.issues.removeLabel({
owner: Owner,
repo: Repo,
issue_number: IssueNumber,
name: Label
});
return true;
};

if (!TrustedUsers.includes(User)) {
console.log("Not trusted user " + User);
process.exit(0);
}

let NewData = Data.replaceAll(/\/-[a-zA-Z-]+/g, (match) => {
console.log("Found command " + match);
let Label = match.substring(2);
if (github.context.payload.issue.labels.find((label) => label.name === Label)) {
console.log("Remove label " + Label);
Octokit.issues.removeLabel({
owner: Owner,
repo: Repo,
issue_number: IssueNumber,
name: Label
});
return "";
}
return match;
});

NewData = NewData.replaceAll(/\/[a-zA-Z-]+/g, (match) => {
let NewData = Data.replaceAll(/\/[a-zA-Z-_]+/g, (match) => {
console.log("Found command " + match);
let Label = match.substring(1);
if (LabelList.includes(Label)) {
console.log("Add label " + Label);
Octokit.issues.addLabels({
owner: Owner,
repo: Repo,
issue_number: IssueNumber,
labels: [Label]
});
return "";
if (Label.startsWith("-")) {
Label = Label.substring(1);
if (RemoveLabel(Label)) {
return "";
}
} else {
if (AddLabel(Label)) {
if (Label === "needs-triage") {
Octokit.issues.addAssignees({
owner: Owner,
repo: Repo,
issue_number: IssueNumber,
assignees: [Owner]
});
}
else if (Label === "wontfix" || Label === "duplicate" || Label === "invalid") {
Octokit.issues.update({
owner: Owner,
repo: Repo,
issue_number: IssueNumber,
state: "closed"
});

RemoveLabel("good-first-issue");
RemoveLabel("hacktoberfest-accepted");
RemoveLabel("help-wanted");
RemoveLabel("investigating");
RemoveLabel("needs-triage");
RemoveLabel("priority-high");
RemoveLabel("priority-low");
RemoveLabel("question");
RemoveLabel("review-needed");
RemoveLabel("server");
RemoveLabel("working-on-it");
}
return "";
}
}
return match;
});

if (NewData === "") {
NewData = "[]()";
if (User === "langningchen") {
if (RemoveLabel("needs-triage")) {
AddLabel("investigating");
}
}

console.log("NewData : " + NewData);

if (NewData === Data) {
console.log("No label modified");
}
else {
} else if (NewData.trim() === "") {
Octokit.issues.deleteComment({
owner: Owner,
repo: Repo,
comment_id: CommentID
});
} else {
Octokit.issues.updateComment({
owner: Owner,
repo: Repo,
comment_id: CommentID,
body: NewData
});
}

if (User === "langningchen") {
if (github.context.payload.issue.labels.find((label) => label.name === "need-triage")) {
console.log("Remove label need-triage");
Octokit.issues.removeLabel({
owner: Owner,
repo: Repo,
issue_number: IssueNumber,
name: "need-triage"
});
}
}
4 changes: 2 additions & 2 deletions XMOJ.user.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// ==UserScript==
// @name XMOJ
// @version 0.3.168
// @version 0.3.169
// @description XMOJ增强脚本
// @author @langningchen
// @namespace https://github/langningchen
Expand Down Expand Up @@ -768,6 +768,7 @@ else {
RequestAPI("ReadBBSMention", {
"MentionID": Number(MentionList[i].MentionID)
}, () => { });
Toast.remove();
});
ToastFooter.appendChild(ToastDismissButton);
let ToastViewButton = document.createElement("button");
Expand Down Expand Up @@ -1828,7 +1829,6 @@ else {
Metal.className = "badge text-bg-primary";
MetalCell.innerText = "";
MetalCell.appendChild(Metal);
Temp[i].cells[1].innerHTML = await GetUsernameHTML(Temp[i].cells[1].innerText);
GetUsernameHTML(Temp[i].cells[1], Temp[i].cells[1].innerText);
Temp[i].cells[2].innerHTML = Temp[i].cells[2].innerText;
Temp[i].cells[3].innerHTML = Temp[i].cells[3].innerText;
Expand Down