summaryrefslogtreecommitdiffstats
path: root/modules/structs/org_team.go
diff options
context:
space:
mode:
Diffstat (limited to 'modules/structs/org_team.go')
-rw-r--r--modules/structs/org_team.go40
1 files changed, 40 insertions, 0 deletions
diff --git a/modules/structs/org_team.go b/modules/structs/org_team.go
new file mode 100644
index 0000000000..b8b5090225
--- /dev/null
+++ b/modules/structs/org_team.go
@@ -0,0 +1,40 @@
+// Copyright 2016 The Gogs Authors. All rights reserved.
+// Copyright 2018 The Gitea Authors. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package structs
+
+// Team represents a team in an organization
+type Team struct {
+ ID int64 `json:"id"`
+ Name string `json:"name"`
+ Description string `json:"description"`
+ Organization *Organization `json:"organization"`
+ // enum: none,read,write,admin,owner
+ Permission string `json:"permission"`
+ // enum: repo.code,repo.issues,repo.ext_issues,repo.wiki,repo.pulls,repo.releases,repo.ext_wiki
+ Units []string `json:"units"`
+}
+
+// CreateTeamOption options for creating a team
+type CreateTeamOption struct {
+ // required: true
+ Name string `json:"name" binding:"Required;AlphaDashDot;MaxSize(30)"`
+ Description string `json:"description" binding:"MaxSize(255)"`
+ // enum: read,write,admin
+ Permission string `json:"permission"`
+ // enum: repo.code,repo.issues,repo.ext_issues,repo.wiki,repo.pulls,repo.releases,repo.ext_wiki
+ Units []string `json:"units"`
+}
+
+// EditTeamOption options for editing a team
+type EditTeamOption struct {
+ // required: true
+ Name string `json:"name" binding:"Required;AlphaDashDot;MaxSize(30)"`
+ Description string `json:"description" binding:"MaxSize(255)"`
+ // enum: read,write,admin
+ Permission string `json:"permission"`
+ // enum: repo.code,repo.issues,repo.ext_issues,repo.wiki,repo.pulls,repo.releases,repo.ext_wiki
+ Units []string `json:"units"`
+}