summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--modules/auth/repo_form.go11
-rw-r--r--routers/repo/migrate.go16
-rw-r--r--templates/swagger/v1_json.tmpl10
3 files changed, 22 insertions, 15 deletions
diff --git a/modules/auth/repo_form.go b/modules/auth/repo_form.go
index f1130f372b..e8809136c9 100644
--- a/modules/auth/repo_form.go
+++ b/modules/auth/repo_form.go
@@ -11,6 +11,7 @@ import (
"code.gitea.io/gitea/models"
"code.gitea.io/gitea/modules/setting"
+ "code.gitea.io/gitea/modules/structs"
"code.gitea.io/gitea/routers/utils"
"gitea.com/macaron/binding"
@@ -57,11 +58,11 @@ func (f *CreateRepoForm) Validate(ctx *macaron.Context, errs binding.Errors) bin
// this is used to interact with web ui
type MigrateRepoForm struct {
// required: true
- CloneAddr string `json:"clone_addr" binding:"Required"`
- Service int `json:"service"`
- AuthUsername string `json:"auth_username"`
- AuthPassword string `json:"auth_password"`
- AuthToken string `json:"auth_token"`
+ CloneAddr string `json:"clone_addr" binding:"Required"`
+ Service structs.GitServiceType `json:"service"`
+ AuthUsername string `json:"auth_username"`
+ AuthPassword string `json:"auth_password"`
+ AuthToken string `json:"auth_token"`
// required: true
UID int64 `json:"uid" binding:"Required"`
// required: true
diff --git a/routers/repo/migrate.go b/routers/repo/migrate.go
index 34060aabde..19dbfbab40 100644
--- a/routers/repo/migrate.go
+++ b/routers/repo/migrate.go
@@ -94,9 +94,11 @@ func handleMigrateError(ctx *context.Context, owner *models.User, err error, nam
func MigratePost(ctx *context.Context, form auth.MigrateRepoForm) {
ctx.Data["Title"] = ctx.Tr("new_migrate")
// Plain git should be first
- ctx.Data["service"] = form.Service
+ ctx.Data["service"] = structs.GitServiceType(form.Service)
ctx.Data["Services"] = append([]structs.GitServiceType{structs.PlainGitService}, structs.SupportedFullGitService...)
+ tpl := base.TplName("repo/migrate/" + structs.GitServiceType(form.Service).Name())
+
ctxUser := checkContextUser(ctx, form.UID)
if ctx.Written() {
return
@@ -104,7 +106,7 @@ func MigratePost(ctx *context.Context, form auth.MigrateRepoForm) {
ctx.Data["ContextUser"] = ctxUser
if ctx.HasError() {
- ctx.HTML(200, tplMigrate)
+ ctx.HTML(200, tpl)
return
}
@@ -115,11 +117,11 @@ func MigratePost(ctx *context.Context, form auth.MigrateRepoForm) {
addrErr := err.(models.ErrInvalidCloneAddr)
switch {
case addrErr.IsURLError:
- ctx.RenderWithErr(ctx.Tr("form.url_error"), tplMigrate, &form)
+ ctx.RenderWithErr(ctx.Tr("form.url_error"), tpl, &form)
case addrErr.IsPermissionDenied:
- ctx.RenderWithErr(ctx.Tr("repo.migrate.permission_denied"), tplMigrate, &form)
+ ctx.RenderWithErr(ctx.Tr("repo.migrate.permission_denied"), tpl, &form)
case addrErr.IsInvalidPath:
- ctx.RenderWithErr(ctx.Tr("repo.migrate.invalid_local_path"), tplMigrate, &form)
+ ctx.RenderWithErr(ctx.Tr("repo.migrate.invalid_local_path"), tpl, &form)
default:
ctx.ServerError("Unknown error", err)
}
@@ -159,7 +161,7 @@ func MigratePost(ctx *context.Context, form auth.MigrateRepoForm) {
err = models.CheckCreateRepository(ctx.User, ctxUser, opts.RepoName)
if err != nil {
- handleMigrateError(ctx, ctxUser, err, "MigratePost", tplMigrate, &form)
+ handleMigrateError(ctx, ctxUser, err, "MigratePost", tpl, &form)
return
}
@@ -169,5 +171,5 @@ func MigratePost(ctx *context.Context, form auth.MigrateRepoForm) {
return
}
- handleMigrateError(ctx, ctxUser, err, "MigratePost", tplMigrate, &form)
+ handleMigrateError(ctx, ctxUser, err, "MigratePost", tpl, &form)
}
diff --git a/templates/swagger/v1_json.tmpl b/templates/swagger/v1_json.tmpl
index 6792f7444b..6c0d8c1b32 100644
--- a/templates/swagger/v1_json.tmpl
+++ b/templates/swagger/v1_json.tmpl
@@ -13231,6 +13231,12 @@
},
"x-go-package": "code.gitea.io/gitea/modules/structs"
},
+ "GitServiceType": {
+ "description": "GitServiceType represents a git service",
+ "type": "integer",
+ "format": "int64",
+ "x-go-package": "code.gitea.io/gitea/modules/structs"
+ },
"GitTreeResponse": {
"description": "GitTreeResponse returns a git tree",
"type": "object",
@@ -13658,9 +13664,7 @@
"x-go-name": "RepoName"
},
"service": {
- "type": "integer",
- "format": "int64",
- "x-go-name": "Service"
+ "$ref": "#/definitions/GitServiceType"
},
"uid": {
"type": "integer",