Implement team creation
This commit is contained in:
parent
5a6bac928e
commit
b958b01635
|
@ -1,14 +1,16 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"strconv"
|
||||
)
|
||||
|
||||
var ApiTeamsRouting = map[string]DispatchFunction{
|
||||
"GET": list,
|
||||
"GET": listTeam,
|
||||
"POST": creationTeam,
|
||||
}
|
||||
|
||||
func list(args []string, body []byte) (interface{}, error) {
|
||||
func listTeam(args []string, body []byte) (interface{}, error) {
|
||||
if len(args) == 1 {
|
||||
// List given team
|
||||
if tid, err := strconv.Atoi(string(args[0])); err != nil {
|
||||
|
@ -25,3 +27,34 @@ func list(args []string, body []byte) (interface{}, error) {
|
|||
return nil, nil
|
||||
}
|
||||
}
|
||||
|
||||
func creationTeam(args []string, body []byte) (interface{}, error) {
|
||||
if len(args) == 0 {
|
||||
type UploadedMember struct {
|
||||
Firstname string
|
||||
Lastname string
|
||||
Nickname string
|
||||
Company string
|
||||
}
|
||||
|
||||
// Create a new team
|
||||
var members []UploadedMember
|
||||
if err := json.Unmarshal(body, &members); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if team, err := CreateTeam(""); err != nil {
|
||||
return nil, err
|
||||
} else {
|
||||
for _, member := range members {
|
||||
if _, err := team.AddMember(member.Firstname, member.Lastname, member.Nickname, member.Company); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
|
||||
return "Ok", nil
|
||||
}
|
||||
} else {
|
||||
return nil,nil
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue