diff --git a/main.js b/main.js index a6ccf17..33ee536 100644 --- a/main.js +++ b/main.js @@ -15,6 +15,7 @@ import { displaySolution, displayHintUnlock, displaySolutionUnlock, + submitRating, } from "./pages/challenge"; import { getScoreboard, getScoreboardDetail, getBrackets } from "./pages/scoreboard"; import { updateSettings, generateToken, deleteToken } from "./pages/settings"; @@ -143,6 +144,7 @@ const pages = { displayHint, loadSolution, displaySolution, + submitRating, }, challenges: { getChallenges, diff --git a/pages/challenge.js b/pages/challenge.js index 2a73952..7c61c5f 100644 --- a/pages/challenge.js +++ b/pages/challenge.js @@ -163,3 +163,13 @@ export async function displaySolution(solutionId) { } } } + +export async function submitRating(challengeId, rating, review) { + const response = await CTFd.fetch(`/api/v1/challenges/${challengeId}/ratings`, { + method: "PUT", + body: JSON.stringify({ value: rating, review: review }), + }); + + const body = await response.json(); + return body["data"]; +}