backend: Can lock submission for a given exercice

This commit is contained in:
nemunaire 2023-04-06 15:27:10 +02:00
parent 3344e05e0d
commit 268925db0d
3 changed files with 112 additions and 0 deletions

View File

@ -237,6 +237,8 @@ func treat(raw_path string) {
treatOpeningHint(raw_path, team)
case "choices":
treatWantChoices(raw_path, team)
case ".locked":
treatLocked(raw_path, team)
default:
treatSubmission(raw_path, team, spath[2])
}

View File

@ -37,6 +37,14 @@ func treatSubmission(pathname string, team *fic.Team, exercice_id string) {
return
}
// Identifier should not be blacklisted for the team
if blacklistteam, ok := TeamLockedExercices[team.Id]; ok {
if locked, ok := blacklistteam[exercice_id]; ok && locked {
log.Printf("%s [!!!] Submission received for team's locked exercice %d\n", id, eid)
return
}
}
// Find the given exercice
exercice, err := fic.GetExercice(eid)
if err != nil {

View File

@ -0,0 +1,102 @@
[
{
"name": "#D\u00e9fendonsEnsemble",
"score": 0
},
{
"name": "Les Pires Hat",
"score": 0
},
{
"name": "Esnarcotrafiquants",
"score": 0
},
{
"name": "Quarkslab",
"score": 0
},
{
"name": "HackademINT",
"score": 0
},
{
"name": "Phreaks 2600",
"score": 0
},
{
"name": "Rhackgondins",
"score": 0
},
{
"name": "Team France",
"score": 0
},
{
"name": "Hack UTT",
"score": 0
},
{
"name": "HDRF",
"score": 0
},
{
"name": "#199",
"score": 0
},
{
"name": "Hackday",
"score": 0
},
{
"name": "GCC",
"score": 0
},
{
"name": "Apeltek",
"score": 0
},
{
"name": "Hackvengers",
"score": 0
},
{
"name": "Guardia Cyber Squad",
"score": 0
},
{
"name": "F0r3nS0C",
"score": 0
},
{
"name": "Oteriack",
"score": 0
},
{
"name": "Cervelles de Canuts",
"score": 0
},
{
"name": "Next'H4ck",
"score": 0
},
{
"name": "Overflowl",
"score": 0
},
{
"name": "Capgemini Aces of Spades",
"score": 0
},
{
"name": "DLS",
"score": 0
},
{
"name": "ESGI",
"score": 0
},
{
"name": "0xECE",
"score": 0
}
]