Generate my.json for each team
This commit is contained in:
parent
a6a152166e
commit
989d5a6349
|
@ -26,6 +26,33 @@ type uploadedMember struct {
|
|||
Company string
|
||||
}
|
||||
|
||||
func myJSONTeam(t fic.Team) (interface{}, error) {
|
||||
ret := map[string]interface{}{}
|
||||
|
||||
ret["team_id"] = t.Id
|
||||
|
||||
exercices := map[string]interface{}{}
|
||||
|
||||
if exos, err := fic.GetExercices(); err != nil {
|
||||
return ret, err
|
||||
} else {
|
||||
for _, e := range exos {
|
||||
if t.HasAccess(e) {
|
||||
exercice := map[string]interface{}{}
|
||||
exercice["statement"] = e.Statement
|
||||
exercice["hint"] = e.Hint
|
||||
exercice["solved"] = t.HasSolved(e)
|
||||
|
||||
exercices[fmt.Sprintf("%d", e.Id)] = exercice
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ret["exercices"] = exercices
|
||||
|
||||
return ret, nil
|
||||
}
|
||||
|
||||
func nginxGenTeam() (string, error) {
|
||||
if teams, err := fic.GetTeams(); err != nil {
|
||||
return "", err
|
||||
|
@ -40,7 +67,15 @@ func nginxGenTeam() (string, error) {
|
|||
}
|
||||
|
||||
func listTeam(args []string, body []byte) (interface{}, error) {
|
||||
if len(args) == 1 {
|
||||
if len(args) == 2 {
|
||||
if tid, err := strconv.Atoi(string(args[0])); err != nil {
|
||||
return nil, err
|
||||
} else if team, err := fic.GetTeam(tid); err != nil {
|
||||
return nil, err
|
||||
} else if args[1] == "my.json" {
|
||||
return myJSONTeam(team)
|
||||
}
|
||||
} else if len(args) == 1 {
|
||||
if args[0] == "nginx" {
|
||||
return nginxGenTeam()
|
||||
} else if tid, err := strconv.Atoi(string(args[0])); err != nil {
|
||||
|
@ -53,9 +88,8 @@ func listTeam(args []string, body []byte) (interface{}, error) {
|
|||
} else if len(args) == 0 {
|
||||
// List all teams
|
||||
return fic.GetTeams()
|
||||
} else {
|
||||
return nil, nil
|
||||
}
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
func creationTeam(args []string, body []byte) (interface{}, error) {
|
||||
|
|
Loading…
Reference in New Issue