aboutsummaryrefslogtreecommitdiff
path: root/routes/api/v1/admin
diff options
context:
space:
mode:
authorAnton Antonov <anton.synd.antonov@gmail.com>2017-11-14 05:27:30 +0200
committer无闻 <u@gogs.io>2017-11-13 22:27:30 -0500
commit77c77fbd42a2cafcb31ecf042a94141a7ca31c98 (patch)
tree39b1d951de585516de217604b10ace525ec1f43e /routes/api/v1/admin
parent9b4054f1fc3a92c7c582770a2c9997213434a792 (diff)
api: add endpoint /api/v1/user/orgs (#4835)
* Add API endpoint /api/v1/user/orgs The difference between this endpoint and /api/v1/admin/users/<username>/orgs, is that here you're creating a repo with the `user` that corresponds to the API token you're using. * Extract duplicate API org creation
Diffstat (limited to 'routes/api/v1/admin')
-rw-r--r--routes/api/v1/admin/org.go30
1 files changed, 2 insertions, 28 deletions
diff --git a/routes/api/v1/admin/org.go b/routes/api/v1/admin/org.go
index 0f84ed2e..89251d2e 100644
--- a/routes/api/v1/admin/org.go
+++ b/routes/api/v1/admin/org.go
@@ -7,38 +7,12 @@ package admin
import (
api "github.com/gogits/go-gogs-client"
- "github.com/gogits/gogs/models"
"github.com/gogits/gogs/pkg/context"
- "github.com/gogits/gogs/routes/api/v1/convert"
"github.com/gogits/gogs/routes/api/v1/user"
+ "github.com/gogits/gogs/routes/api/v1/org"
)
// https://github.com/gogits/go-gogs-client/wiki/Administration-Organizations#create-a-new-organization
func CreateOrg(c *context.APIContext, form api.CreateOrgOption) {
- u := user.GetUserByParams(c)
- if c.Written() {
- return
- }
-
- org := &models.User{
- Name: form.UserName,
- FullName: form.FullName,
- Description: form.Description,
- Website: form.Website,
- Location: form.Location,
- IsActive: true,
- Type: models.USER_TYPE_ORGANIZATION,
- }
- if err := models.CreateOrganization(org, u); err != nil {
- if models.IsErrUserAlreadyExist(err) ||
- models.IsErrNameReserved(err) ||
- models.IsErrNamePatternNotAllowed(err) {
- c.Error(422, "", err)
- } else {
- c.Error(500, "CreateOrganization", err)
- }
- return
- }
-
- c.JSON(201, convert.ToOrganization(org))
+ org.CreateOrgForUser(c, form, user.GetUserByParams(c))
}