backend: use TEAMS dir to resolve symlinks instead of relying on duplicates symlink in submissions
This commit is contained in:
parent
2582b9e208
commit
bcbf5b35cf
|
@ -153,25 +153,21 @@ func treat(raw_path string) {
|
|||
return
|
||||
}
|
||||
|
||||
var team fic.Team
|
||||
var teamid int64
|
||||
var err error
|
||||
|
||||
if strings.HasPrefix(spath[1], "_AUTH_ID_") {
|
||||
if serial, err := strconv.ParseInt(strings.TrimPrefix(spath[1], "_AUTH_ID_"), 16, 64); err != nil {
|
||||
log.Println("[ERR]", err)
|
||||
return
|
||||
} else if team, err = fic.GetTeamBySerial(serial); err != nil {
|
||||
log.Println("[ERR]", err)
|
||||
return
|
||||
}
|
||||
} else if teamid, err := strconv.ParseInt(spath[1], 10, 64); err != nil {
|
||||
if lnk, err := os.Readlink(path.Join(TeamsDir, spath[1])); err == nil {
|
||||
if teamid, err = strconv.ParseInt(spath[1], 10, 64); err != nil {
|
||||
if lnk, err := os.Readlink(path.Join(TeamsDir, spath[1])); err != nil {
|
||||
log.Println("[ERR]", err)
|
||||
return
|
||||
} else if teamid, err = strconv.ParseInt(lnk, 10, 64); err != nil {
|
||||
log.Println("[ERR]", err)
|
||||
return
|
||||
}
|
||||
} else if team, err = fic.GetTeam(teamid); err != nil {
|
||||
}
|
||||
|
||||
var team fic.Team
|
||||
if team, err = fic.GetTeam(teamid); err != nil {
|
||||
log.Println("[ERR]", err)
|
||||
return
|
||||
}
|
||||
|
|
|
@ -53,14 +53,6 @@ func treatRegistration(pathname string, team_id string) {
|
|||
log.Println("[ERR]", err)
|
||||
}
|
||||
|
||||
// Create team directories into submissions
|
||||
if err := os.MkdirAll(path.Join(SubmissionDir, teamDirPath), 0777); err != nil {
|
||||
log.Println("[ERR]", err)
|
||||
}
|
||||
if err := os.Symlink(teamDirPath, path.Join(SubmissionDir, team_id)); err != nil {
|
||||
log.Println("[ERR]", err)
|
||||
}
|
||||
|
||||
go func() {
|
||||
if err := genTeamMyFile(team); err != nil {
|
||||
log.Println("Team generation error: ", err)
|
||||
|
|
Loading…
Reference in New Issue