Browse Source

增加镜像收藏,官方推荐功能

tags/v1.22.4.1^2
ychao_1983 3 years ago
parent
commit
c095efdf74
4 changed files with 38 additions and 3 deletions
  1. +1
    -0
      models/user.go
  2. +1
    -1
      modules/auth/cloudbrain.go
  3. +30
    -0
      routers/image/image.go
  4. +6
    -2
      routers/routes/routes.go

+ 1
- 0
models/user.go View File

@@ -157,6 +157,7 @@ type User struct {
NumFollowing int `xorm:"NOT NULL DEFAULT 0"` NumFollowing int `xorm:"NOT NULL DEFAULT 0"`
NumStars int NumStars int
NumDatasetStars int `xorm:"NOT NULL DEFAULT 0"` NumDatasetStars int `xorm:"NOT NULL DEFAULT 0"`
NumImageStars int `xorm:"NOT NULL DEFAULT 0"`
NumRepos int NumRepos int


// For organization // For organization


+ 1
- 1
modules/auth/cloudbrain.go View File

@@ -25,7 +25,7 @@ type CreateCloudBrainForm struct {
type CommitImageCloudBrainForm struct { type CommitImageCloudBrainForm struct {
Description string `form:"description" binding:"Required"` Description string `form:"description" binding:"Required"`
Type int `form:"type" binding:"Required"` Type int `form:"type" binding:"Required"`
Tag string `form:"tag" binding:"Required;MaxSize(64)" `
Tag string `form:"tag" binding:"Required;MaxSize(100)" `
IsPrivate bool `form:"isPrivate" binding:"Required"` IsPrivate bool `form:"isPrivate" binding:"Required"`
Topics string `form:"topics"` Topics string `form:"topics"`
} }


+ 30
- 0
routers/image/image.go View File

@@ -0,0 +1,30 @@
package image

import (
"net/http"
"strconv"

"code.gitea.io/gitea/models"
"code.gitea.io/gitea/modules/context"
)

func Action(ctx *context.Context) {
var err error
imageId, _ := strconv.ParseInt(ctx.Params(":id"), 10, 64)
switch ctx.Params(":action") {

case "star":
err = models.StarImage(ctx.User.ID, imageId, true)
case "unstar":
err = models.StarImage(ctx.User.ID, imageId, false)
case "recommend":
err = models.RecommendImage(imageId, true)
case "unrecommend":
err = models.RecommendImage(imageId, false)
}
if err != nil {
ctx.JSON(http.StatusOK, models.BaseErrorMessage(ctx.Tr("repo.star_fail", ctx.Params(":action"))))
} else {
ctx.JSON(http.StatusOK, models.BaseOKMessage)
}
}

+ 6
- 2
routers/routes/routes.go View File

@@ -12,6 +12,8 @@ import (
"text/template" "text/template"
"time" "time"


"code.gitea.io/gitea/routers/image"

"code.gitea.io/gitea/routers/authentication" "code.gitea.io/gitea/routers/authentication"


"code.gitea.io/gitea/modules/cloudbrain" "code.gitea.io/gitea/modules/cloudbrain"
@@ -529,6 +531,7 @@ func RegisterRoutes(m *macaron.Macaron) {
m.Get("", admin.Images) m.Get("", admin.Images)
m.Get("/data", repo.GetAllImages) m.Get("/data", repo.GetAllImages)
}) })
m.Put("/image/:id/action/:action", image.Action)


m.Group("/^:configType(hooks|system-hooks)$", func() { m.Group("/^:configType(hooks|system-hooks)$", func() {
m.Get("", admin.DefaultOrSystemWebhooks) m.Get("", admin.DefaultOrSystemWebhooks)
@@ -976,11 +979,12 @@ func RegisterRoutes(m *macaron.Macaron) {
m.Group("/:username/:reponame", func() { m.Group("/:username/:reponame", func() {
m.Post("/topics", repo.TopicsPost) m.Post("/topics", repo.TopicsPost)
}, context.RepoAssignment(), context.RepoMustNotBeArchived(), reqRepoAdmin) }, context.RepoAssignment(), context.RepoMustNotBeArchived(), reqRepoAdmin)
m.Group("/image/:id", func() {
m.Group("/image/:id", func() {
m.Get("/:from", cloudbrain.AdminOrImageCreaterRight, repo.CloudBrainImageEdit) m.Get("/:from", cloudbrain.AdminOrImageCreaterRight, repo.CloudBrainImageEdit)
m.Post("", cloudbrain.AdminOrImageCreaterRight, bindIgnErr(auth.EditImageCloudBrainForm{}), repo.CloudBrainImageEditPost) m.Post("", cloudbrain.AdminOrImageCreaterRight, bindIgnErr(auth.EditImageCloudBrainForm{}), repo.CloudBrainImageEditPost)
m.Delete("", cloudbrain.AdminOrImageCreaterRight, repo.CloudBrainImageDelete) m.Delete("", cloudbrain.AdminOrImageCreaterRight, repo.CloudBrainImageDelete)
m.Put("action/:action", reqSignIn, image.Action)
}) })
m.Group("/:username/:reponame", func() { m.Group("/:username/:reponame", func() {
m.Group("", func() { m.Group("", func() {


Loading…
Cancel
Save