aboutsummaryrefslogtreecommitdiffstats
path: root/routers/private/key.go
diff options
context:
space:
mode:
Diffstat (limited to 'routers/private/key.go')
-rw-r--r--routers/private/key.go84
1 files changed, 84 insertions, 0 deletions
diff --git a/routers/private/key.go b/routers/private/key.go
new file mode 100644
index 0000000000..9cc1165780
--- /dev/null
+++ b/routers/private/key.go
@@ -0,0 +1,84 @@
+// 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 private includes all internal routes. The package name internal is ideal but Golang is not allowed, so we use private as package name instead.
+package private
+
+import (
+ "code.gitea.io/gitea/models"
+ "code.gitea.io/gitea/modules/util"
+
+ macaron "gopkg.in/macaron.v1"
+)
+
+// UpdateDeployKey update deploy key updates
+func UpdateDeployKey(ctx *macaron.Context) {
+ repoID := ctx.ParamsInt64(":repoid")
+ keyID := ctx.ParamsInt64(":keyid")
+ deployKey, err := models.GetDeployKeyByRepo(keyID, repoID)
+ if err != nil {
+ ctx.JSON(500, map[string]interface{}{
+ "err": err.Error(),
+ })
+ return
+ }
+ deployKey.UpdatedUnix = util.TimeStampNow()
+ if err = models.UpdateDeployKeyCols(deployKey, "updated_unix"); err != nil {
+ ctx.JSON(500, map[string]interface{}{
+ "err": err.Error(),
+ })
+ return
+ }
+ ctx.PlainText(200, []byte("success"))
+}
+
+// UpdatePublicKey update publick key updates
+func UpdatePublicKey(ctx *macaron.Context) {
+ keyID := ctx.ParamsInt64(":id")
+ if err := models.UpdatePublicKeyUpdated(keyID); err != nil {
+ ctx.JSON(500, map[string]interface{}{
+ "err": err.Error(),
+ })
+ return
+ }
+
+ ctx.PlainText(200, []byte("success"))
+}
+
+//GetPublicKeyByID chainload to models.GetPublicKeyByID
+func GetPublicKeyByID(ctx *macaron.Context) {
+ keyID := ctx.ParamsInt64(":id")
+ key, err := models.GetPublicKeyByID(keyID)
+ if err != nil {
+ ctx.JSON(500, map[string]interface{}{
+ "err": err.Error(),
+ })
+ return
+ }
+ ctx.JSON(200, key)
+}
+
+//GetUserByKeyID chainload to models.GetUserByKeyID
+func GetUserByKeyID(ctx *macaron.Context) {
+ keyID := ctx.ParamsInt64(":id")
+ user, err := models.GetUserByKeyID(keyID)
+ if err != nil {
+ ctx.JSON(500, map[string]interface{}{
+ "err": err.Error(),
+ })
+ return
+ }
+ ctx.JSON(200, user)
+}
+
+//HasDeployKey chainload to models.HasDeployKey
+func HasDeployKey(ctx *macaron.Context) {
+ repoID := ctx.ParamsInt64(":repoid")
+ keyID := ctx.ParamsInt64(":keyid")
+ if models.HasDeployKey(keyID, repoID) {
+ ctx.PlainText(200, []byte("success"))
+ return
+ }
+ ctx.PlainText(404, []byte("not found"))
+}