loading up the forgejo repo on tangled to test page performance
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Move modules/forms to services/forms (#15305)

Forms are dependent on models and therefore should be in services.

This PR also removes the old auth. aliasing

Signed-off-by: Andrew Thornton <art27@cantab.net>

Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: techknowlogick <techknowlogick@gitea.io>

authored by

zeripath
6543
Lunny Xiao
techknowlogick
and committed by
GitHub
fa3895ce 8be2cc4f

+335 -335
+4 -4
integrations/api_helper_for_declarative_test.go
··· 14 14 "time" 15 15 16 16 "code.gitea.io/gitea/models" 17 - auth "code.gitea.io/gitea/modules/forms" 18 17 "code.gitea.io/gitea/modules/queue" 19 18 api "code.gitea.io/gitea/modules/structs" 19 + "code.gitea.io/gitea/services/forms" 20 20 21 21 jsoniter "github.com/json-iterator/go" 22 22 "github.com/stretchr/testify/assert" ··· 243 243 return func(t *testing.T) { 244 244 urlStr := fmt.Sprintf("/api/v1/repos/%s/%s/pulls/%d/merge?token=%s", 245 245 owner, repo, index, ctx.Token) 246 - req := NewRequestWithJSON(t, http.MethodPost, urlStr, &auth.MergePullRequestForm{ 246 + req := NewRequestWithJSON(t, http.MethodPost, urlStr, &forms.MergePullRequestForm{ 247 247 MergeMessageField: "doAPIMergePullRequest Merge", 248 248 Do: string(models.MergeStyleMerge), 249 249 }) ··· 255 255 DecodeJSON(t, resp, &err) 256 256 assert.EqualValues(t, "Please try again later", err.Message) 257 257 queue.GetManager().FlushAll(context.Background(), 5*time.Second) 258 - req = NewRequestWithJSON(t, http.MethodPost, urlStr, &auth.MergePullRequestForm{ 258 + req = NewRequestWithJSON(t, http.MethodPost, urlStr, &forms.MergePullRequestForm{ 259 259 MergeMessageField: "doAPIMergePullRequest Merge", 260 260 Do: string(models.MergeStyleMerge), 261 261 }) ··· 278 278 return func(t *testing.T) { 279 279 urlStr := fmt.Sprintf("/api/v1/repos/%s/%s/pulls/%d/merge?token=%s", 280 280 owner, repo, index, ctx.Token) 281 - req := NewRequestWithJSON(t, http.MethodPost, urlStr, &auth.MergePullRequestForm{ 281 + req := NewRequestWithJSON(t, http.MethodPost, urlStr, &forms.MergePullRequestForm{ 282 282 Do: string(models.MergeStyleManuallyMerged), 283 283 MergeCommitID: commitID, 284 284 })
+2 -2
integrations/api_pull_test.go
··· 10 10 "testing" 11 11 12 12 "code.gitea.io/gitea/models" 13 - auth "code.gitea.io/gitea/modules/forms" 14 13 "code.gitea.io/gitea/modules/setting" 15 14 api "code.gitea.io/gitea/modules/structs" 15 + "code.gitea.io/gitea/services/forms" 16 16 issue_service "code.gitea.io/gitea/services/issue" 17 17 18 18 "github.com/stretchr/testify/assert" ··· 50 50 51 51 session := loginUser(t, owner.Name) 52 52 token := getTokenForLoggedInUser(t, session) 53 - req := NewRequestWithJSON(t, http.MethodPost, fmt.Sprintf("/api/v1/repos/%s/%s/pulls/%d/merge?token=%s", owner.Name, repo.Name, pr.Index, token), &auth.MergePullRequestForm{ 53 + req := NewRequestWithJSON(t, http.MethodPost, fmt.Sprintf("/api/v1/repos/%s/%s/pulls/%d/merge?token=%s", owner.Name, repo.Name, pr.Index, token), &forms.MergePullRequestForm{ 54 54 MergeMessageField: pr.Issue.Title, 55 55 Do: string(models.MergeStyleMerge), 56 56 })
modules/forms/admin.go services/forms/admin.go
modules/forms/auth_form.go services/forms/auth_form.go
modules/forms/org.go services/forms/org.go
modules/forms/repo_branch_form.go services/forms/repo_branch_form.go
modules/forms/repo_form.go services/forms/repo_form.go
modules/forms/repo_form_test.go services/forms/repo_form_test.go
modules/forms/user_form.go services/forms/user_form.go
modules/forms/user_form_auth_openid.go services/forms/user_form_auth_openid.go
modules/forms/user_form_test.go services/forms/user_form_test.go
+2 -2
routers/admin/admin.go
··· 19 19 "code.gitea.io/gitea/modules/base" 20 20 "code.gitea.io/gitea/modules/context" 21 21 "code.gitea.io/gitea/modules/cron" 22 - auth "code.gitea.io/gitea/modules/forms" 23 22 "code.gitea.io/gitea/modules/git" 24 23 "code.gitea.io/gitea/modules/log" 25 24 "code.gitea.io/gitea/modules/process" ··· 27 26 "code.gitea.io/gitea/modules/setting" 28 27 "code.gitea.io/gitea/modules/timeutil" 29 28 "code.gitea.io/gitea/modules/web" 29 + "code.gitea.io/gitea/services/forms" 30 30 "code.gitea.io/gitea/services/mailer" 31 31 jsoniter "github.com/json-iterator/go" 32 32 ··· 134 134 135 135 // DashboardPost run an admin operation 136 136 func DashboardPost(ctx *context.Context) { 137 - form := web.GetForm(ctx).(*auth.AdminDashboardForm) 137 + form := web.GetForm(ctx).(*forms.AdminDashboardForm) 138 138 ctx.Data["Title"] = ctx.Tr("admin.dashboard") 139 139 ctx.Data["PageIsAdmin"] = true 140 140 ctx.Data["PageIsAdminDashboard"] = true
+7 -7
routers/admin/auths.go
··· 16 16 "code.gitea.io/gitea/modules/auth/pam" 17 17 "code.gitea.io/gitea/modules/base" 18 18 "code.gitea.io/gitea/modules/context" 19 - auth "code.gitea.io/gitea/modules/forms" 20 19 "code.gitea.io/gitea/modules/log" 21 20 "code.gitea.io/gitea/modules/setting" 22 21 "code.gitea.io/gitea/modules/util" 23 22 "code.gitea.io/gitea/modules/web" 23 + "code.gitea.io/gitea/services/forms" 24 24 25 25 "xorm.io/xorm/convert" 26 26 ) ··· 113 113 ctx.HTML(http.StatusOK, tplAuthNew) 114 114 } 115 115 116 - func parseLDAPConfig(form auth.AuthenticationForm) *models.LDAPConfig { 116 + func parseLDAPConfig(form forms.AuthenticationForm) *models.LDAPConfig { 117 117 var pageSize uint32 118 118 if form.UsePagedSearch { 119 119 pageSize = uint32(form.SearchPageSize) ··· 150 150 } 151 151 } 152 152 153 - func parseSMTPConfig(form auth.AuthenticationForm) *models.SMTPConfig { 153 + func parseSMTPConfig(form forms.AuthenticationForm) *models.SMTPConfig { 154 154 return &models.SMTPConfig{ 155 155 Auth: form.SMTPAuth, 156 156 Host: form.SMTPHost, ··· 161 161 } 162 162 } 163 163 164 - func parseOAuth2Config(form auth.AuthenticationForm) *models.OAuth2Config { 164 + func parseOAuth2Config(form forms.AuthenticationForm) *models.OAuth2Config { 165 165 var customURLMapping *oauth2.CustomURLMapping 166 166 if form.Oauth2UseCustomURL { 167 167 customURLMapping = &oauth2.CustomURLMapping{ ··· 183 183 } 184 184 } 185 185 186 - func parseSSPIConfig(ctx *context.Context, form auth.AuthenticationForm) (*models.SSPIConfig, error) { 186 + func parseSSPIConfig(ctx *context.Context, form forms.AuthenticationForm) (*models.SSPIConfig, error) { 187 187 if util.IsEmptyString(form.SSPISeparatorReplacement) { 188 188 ctx.Data["Err_SSPISeparatorReplacement"] = true 189 189 return nil, errors.New(ctx.Tr("form.SSPISeparatorReplacement") + ctx.Tr("form.require_error")) ··· 209 209 210 210 // NewAuthSourcePost response for adding an auth source 211 211 func NewAuthSourcePost(ctx *context.Context) { 212 - form := *web.GetForm(ctx).(*auth.AuthenticationForm) 212 + form := *web.GetForm(ctx).(*forms.AuthenticationForm) 213 213 ctx.Data["Title"] = ctx.Tr("admin.auths.new") 214 214 ctx.Data["PageIsAdmin"] = true 215 215 ctx.Data["PageIsAdminAuthentications"] = true ··· 316 316 317 317 // EditAuthSourcePost response for editing auth source 318 318 func EditAuthSourcePost(ctx *context.Context) { 319 - form := *web.GetForm(ctx).(*auth.AuthenticationForm) 319 + form := *web.GetForm(ctx).(*forms.AuthenticationForm) 320 320 ctx.Data["Title"] = ctx.Tr("admin.auths.edit") 321 321 ctx.Data["PageIsAdmin"] = true 322 322 ctx.Data["PageIsAdminAuthentications"] = true
+3 -3
routers/admin/users.go
··· 14 14 "code.gitea.io/gitea/models" 15 15 "code.gitea.io/gitea/modules/base" 16 16 "code.gitea.io/gitea/modules/context" 17 - auth "code.gitea.io/gitea/modules/forms" 18 17 "code.gitea.io/gitea/modules/log" 19 18 "code.gitea.io/gitea/modules/password" 20 19 "code.gitea.io/gitea/modules/setting" 21 20 "code.gitea.io/gitea/modules/web" 22 21 "code.gitea.io/gitea/routers" 23 22 router_user_setting "code.gitea.io/gitea/routers/user/setting" 23 + "code.gitea.io/gitea/services/forms" 24 24 "code.gitea.io/gitea/services/mailer" 25 25 ) 26 26 ··· 66 66 67 67 // NewUserPost response for adding a new user 68 68 func NewUserPost(ctx *context.Context) { 69 - form := web.GetForm(ctx).(*auth.AdminCreateUserForm) 69 + form := web.GetForm(ctx).(*forms.AdminCreateUserForm) 70 70 ctx.Data["Title"] = ctx.Tr("admin.users.new_account") 71 71 ctx.Data["PageIsAdmin"] = true 72 72 ctx.Data["PageIsAdminUsers"] = true ··· 218 218 219 219 // EditUserPost response for editting user 220 220 func EditUserPost(ctx *context.Context) { 221 - form := web.GetForm(ctx).(*auth.AdminEditUserForm) 221 + form := web.GetForm(ctx).(*forms.AdminEditUserForm) 222 222 ctx.Data["Title"] = ctx.Tr("admin.users.edit_account") 223 223 ctx.Data["PageIsAdmin"] = true 224 224 ctx.Data["PageIsAdminUsers"] = true
+4 -4
routers/admin/users_test.go
··· 8 8 "testing" 9 9 10 10 "code.gitea.io/gitea/models" 11 - auth "code.gitea.io/gitea/modules/forms" 12 11 "code.gitea.io/gitea/modules/test" 13 12 "code.gitea.io/gitea/modules/web" 13 + "code.gitea.io/gitea/services/forms" 14 14 15 15 "github.com/stretchr/testify/assert" 16 16 ) ··· 30 30 username := "gitea" 31 31 email := "gitea@gitea.io" 32 32 33 - form := auth.AdminCreateUserForm{ 33 + form := forms.AdminCreateUserForm{ 34 34 LoginType: "local", 35 35 LoginName: "local", 36 36 UserName: username, ··· 68 68 username := "gitea" 69 69 email := "gitea@gitea.io" 70 70 71 - form := auth.AdminCreateUserForm{ 71 + form := forms.AdminCreateUserForm{ 72 72 LoginType: "local", 73 73 LoginName: "local", 74 74 UserName: username, ··· 106 106 username := "gitea" 107 107 email := "gitea@gitea.io\r\n" 108 108 109 - form := auth.AdminCreateUserForm{ 109 + form := forms.AdminCreateUserForm{ 110 110 LoginType: "local", 111 111 LoginName: "local", 112 112 UserName: username,
+2 -2
routers/api/v1/api.go
··· 71 71 72 72 "code.gitea.io/gitea/models" 73 73 "code.gitea.io/gitea/modules/context" 74 - auth "code.gitea.io/gitea/modules/forms" 75 74 "code.gitea.io/gitea/modules/log" 76 75 "code.gitea.io/gitea/modules/setting" 77 76 api "code.gitea.io/gitea/modules/structs" ··· 84 83 "code.gitea.io/gitea/routers/api/v1/settings" 85 84 _ "code.gitea.io/gitea/routers/api/v1/swagger" // for swagger generation 86 85 "code.gitea.io/gitea/routers/api/v1/user" 86 + "code.gitea.io/gitea/services/forms" 87 87 88 88 "gitea.com/go-chi/binding" 89 89 "gitea.com/go-chi/session" ··· 897 897 m.Get(".patch", repo.DownloadPullPatch) 898 898 m.Post("/update", reqToken(), repo.UpdatePullRequest) 899 899 m.Combo("/merge").Get(repo.IsPullRequestMerged). 900 - Post(reqToken(), mustNotBeArchived, bind(auth.MergePullRequestForm{}), repo.MergePullRequest) 900 + Post(reqToken(), mustNotBeArchived, bind(forms.MergePullRequestForm{}), repo.MergePullRequest) 901 901 m.Group("/reviews", func() { 902 902 m.Combo(""). 903 903 Get(repo.ListPullReviews).
+2 -2
routers/api/v1/repo/migrate.go
··· 14 14 "code.gitea.io/gitea/models" 15 15 "code.gitea.io/gitea/modules/context" 16 16 "code.gitea.io/gitea/modules/convert" 17 - auth "code.gitea.io/gitea/modules/forms" 18 17 "code.gitea.io/gitea/modules/graceful" 19 18 "code.gitea.io/gitea/modules/log" 20 19 "code.gitea.io/gitea/modules/migrations" ··· 25 24 api "code.gitea.io/gitea/modules/structs" 26 25 "code.gitea.io/gitea/modules/util" 27 26 "code.gitea.io/gitea/modules/web" 27 + "code.gitea.io/gitea/services/forms" 28 28 ) 29 29 30 30 // Migrate migrate remote git repository to gitea ··· 96 96 } 97 97 } 98 98 99 - remoteAddr, err := auth.ParseRemoteAddr(form.CloneAddr, form.AuthUsername, form.AuthPassword) 99 + remoteAddr, err := forms.ParseRemoteAddr(form.CloneAddr, form.AuthUsername, form.AuthPassword) 100 100 if err == nil { 101 101 err = migrations.IsMigrateURLAllowed(remoteAddr, ctx.User) 102 102 }
+2 -2
routers/api/v1/repo/pull.go
··· 13 13 "code.gitea.io/gitea/models" 14 14 "code.gitea.io/gitea/modules/context" 15 15 "code.gitea.io/gitea/modules/convert" 16 - auth "code.gitea.io/gitea/modules/forms" 17 16 "code.gitea.io/gitea/modules/git" 18 17 "code.gitea.io/gitea/modules/log" 19 18 "code.gitea.io/gitea/modules/notification" ··· 21 20 "code.gitea.io/gitea/modules/timeutil" 22 21 "code.gitea.io/gitea/modules/web" 23 22 "code.gitea.io/gitea/routers/api/v1/utils" 23 + "code.gitea.io/gitea/services/forms" 24 24 issue_service "code.gitea.io/gitea/services/issue" 25 25 pull_service "code.gitea.io/gitea/services/pull" 26 26 ) ··· 721 721 // "409": 722 722 // "$ref": "#/responses/error" 723 723 724 - form := web.GetForm(ctx).(*auth.MergePullRequestForm) 724 + form := web.GetForm(ctx).(*forms.MergePullRequestForm) 725 725 pr, err := models.GetPullRequestByIndex(ctx.Repo.Repository.ID, ctx.ParamsInt64(":index")) 726 726 if err != nil { 727 727 if models.IsErrPullRequestNotExist(err) {
+3 -3
routers/api/v1/swagger/options.go
··· 5 5 package swagger 6 6 7 7 import ( 8 - auth "code.gitea.io/gitea/modules/forms" 9 8 api "code.gitea.io/gitea/modules/structs" 9 + "code.gitea.io/gitea/services/forms" 10 10 ) 11 11 12 12 // not actually a response, just a hack to get go-swagger to include definitions ··· 72 72 // in:body 73 73 EditPullRequestOption api.EditPullRequestOption 74 74 // in:body 75 - MergePullRequestOption auth.MergePullRequestForm 75 + MergePullRequestOption forms.MergePullRequestForm 76 76 77 77 // in:body 78 78 CreateReleaseOption api.CreateReleaseOption ··· 106 106 EditUserOption api.EditUserOption 107 107 108 108 // in:body 109 - MigrateRepoForm auth.MigrateRepoForm 109 + MigrateRepoForm forms.MigrateRepoForm 110 110 111 111 // in:body 112 112 EditAttachmentOptions api.EditAttachmentOptions
+3 -3
routers/install.go
··· 16 16 "code.gitea.io/gitea/models" 17 17 "code.gitea.io/gitea/modules/base" 18 18 "code.gitea.io/gitea/modules/context" 19 - auth "code.gitea.io/gitea/modules/forms" 20 19 "code.gitea.io/gitea/modules/generate" 21 20 "code.gitea.io/gitea/modules/graceful" 22 21 "code.gitea.io/gitea/modules/log" ··· 26 25 "code.gitea.io/gitea/modules/util" 27 26 "code.gitea.io/gitea/modules/web" 28 27 "code.gitea.io/gitea/modules/web/middleware" 28 + "code.gitea.io/gitea/services/forms" 29 29 30 30 "gitea.com/go-chi/session" 31 31 "gopkg.in/ini.v1" ··· 76 76 77 77 // Install render installation page 78 78 func Install(ctx *context.Context) { 79 - form := auth.InstallForm{} 79 + form := forms.InstallForm{} 80 80 81 81 // Database settings 82 82 form.DbHost = setting.Database.Host ··· 151 151 152 152 // InstallPost response for submit install items 153 153 func InstallPost(ctx *context.Context) { 154 - form := *web.GetForm(ctx).(*auth.InstallForm) 154 + form := *web.GetForm(ctx).(*forms.InstallForm) 155 155 var err error 156 156 ctx.Data["CurDbOption"] = form.DbType 157 157
+2 -2
routers/org/org.go
··· 12 12 "code.gitea.io/gitea/models" 13 13 "code.gitea.io/gitea/modules/base" 14 14 "code.gitea.io/gitea/modules/context" 15 - auth "code.gitea.io/gitea/modules/forms" 16 15 "code.gitea.io/gitea/modules/log" 17 16 "code.gitea.io/gitea/modules/setting" 18 17 "code.gitea.io/gitea/modules/web" 18 + "code.gitea.io/gitea/services/forms" 19 19 ) 20 20 21 21 const ( ··· 36 36 37 37 // CreatePost response for create organization 38 38 func CreatePost(ctx *context.Context) { 39 - form := *web.GetForm(ctx).(*auth.CreateOrgForm) 39 + form := *web.GetForm(ctx).(*forms.CreateOrgForm) 40 40 ctx.Data["Title"] = ctx.Tr("new_org") 41 41 42 42 if !ctx.User.CanCreateOrganization() {
+4 -4
routers/org/org_labels.go
··· 9 9 10 10 "code.gitea.io/gitea/models" 11 11 "code.gitea.io/gitea/modules/context" 12 - auth "code.gitea.io/gitea/modules/forms" 13 12 "code.gitea.io/gitea/modules/web" 13 + "code.gitea.io/gitea/services/forms" 14 14 ) 15 15 16 16 // RetrieveLabels find all the labels of an organization ··· 30 30 31 31 // NewLabel create new label for organization 32 32 func NewLabel(ctx *context.Context) { 33 - form := web.GetForm(ctx).(*auth.CreateLabelForm) 33 + form := web.GetForm(ctx).(*forms.CreateLabelForm) 34 34 ctx.Data["Title"] = ctx.Tr("repo.labels") 35 35 ctx.Data["PageIsLabels"] = true 36 36 ··· 55 55 56 56 // UpdateLabel update a label's name and color 57 57 func UpdateLabel(ctx *context.Context) { 58 - form := web.GetForm(ctx).(*auth.CreateLabelForm) 58 + form := web.GetForm(ctx).(*forms.CreateLabelForm) 59 59 l, err := models.GetLabelInOrgByID(ctx.Org.Organization.ID, form.ID) 60 60 if err != nil { 61 61 switch { ··· 92 92 93 93 // InitializeLabels init labels for an organization 94 94 func InitializeLabels(ctx *context.Context) { 95 - form := web.GetForm(ctx).(*auth.InitializeLabelsForm) 95 + form := web.GetForm(ctx).(*forms.InitializeLabelsForm) 96 96 if ctx.HasError() { 97 97 ctx.Redirect(ctx.Repo.RepoLink + "/labels") 98 98 return
+4 -4
routers/org/setting.go
··· 12 12 "code.gitea.io/gitea/models" 13 13 "code.gitea.io/gitea/modules/base" 14 14 "code.gitea.io/gitea/modules/context" 15 - auth "code.gitea.io/gitea/modules/forms" 16 15 "code.gitea.io/gitea/modules/log" 17 16 "code.gitea.io/gitea/modules/setting" 18 17 "code.gitea.io/gitea/modules/web" 19 18 userSetting "code.gitea.io/gitea/routers/user/setting" 19 + "code.gitea.io/gitea/services/forms" 20 20 ) 21 21 22 22 const ( ··· 41 41 42 42 // SettingsPost response for settings change submited 43 43 func SettingsPost(ctx *context.Context) { 44 - form := web.GetForm(ctx).(*auth.UpdateOrgSettingForm) 44 + form := web.GetForm(ctx).(*forms.UpdateOrgSettingForm) 45 45 ctx.Data["Title"] = ctx.Tr("org.settings") 46 46 ctx.Data["PageIsSettingsOptions"] = true 47 47 ctx.Data["CurrentVisibility"] = ctx.Org.Organization.Visibility ··· 119 119 120 120 // SettingsAvatar response for change avatar on settings page 121 121 func SettingsAvatar(ctx *context.Context) { 122 - form := web.GetForm(ctx).(*auth.AvatarForm) 123 - form.Source = auth.AvatarLocal 122 + form := web.GetForm(ctx).(*forms.AvatarForm) 123 + form.Source = forms.AvatarLocal 124 124 if err := userSetting.UpdateAvatarSetting(ctx, form, ctx.Org.Organization); err != nil { 125 125 ctx.Flash.Error(err.Error()) 126 126 } else {
+3 -3
routers/org/teams.go
··· 13 13 "code.gitea.io/gitea/models" 14 14 "code.gitea.io/gitea/modules/base" 15 15 "code.gitea.io/gitea/modules/context" 16 - auth "code.gitea.io/gitea/modules/forms" 17 16 "code.gitea.io/gitea/modules/log" 18 17 "code.gitea.io/gitea/modules/web" 19 18 "code.gitea.io/gitea/routers/utils" 19 + "code.gitea.io/gitea/services/forms" 20 20 ) 21 21 22 22 const ( ··· 188 188 189 189 // NewTeamPost response for create new team 190 190 func NewTeamPost(ctx *context.Context) { 191 - form := web.GetForm(ctx).(*auth.CreateTeamForm) 191 + form := web.GetForm(ctx).(*forms.CreateTeamForm) 192 192 ctx.Data["Title"] = ctx.Org.Organization.FullName 193 193 ctx.Data["PageIsOrgTeams"] = true 194 194 ctx.Data["PageIsOrgTeamsNew"] = true ··· 277 277 278 278 // EditTeamPost response for modify team information 279 279 func EditTeamPost(ctx *context.Context) { 280 - form := web.GetForm(ctx).(*auth.CreateTeamForm) 280 + form := web.GetForm(ctx).(*forms.CreateTeamForm) 281 281 t := ctx.Org.Team 282 282 ctx.Data["Title"] = ctx.Org.Organization.FullName 283 283 ctx.Data["PageIsOrgTeams"] = true
+2 -2
routers/repo/branch.go
··· 13 13 "code.gitea.io/gitea/models" 14 14 "code.gitea.io/gitea/modules/base" 15 15 "code.gitea.io/gitea/modules/context" 16 - auth "code.gitea.io/gitea/modules/forms" 17 16 "code.gitea.io/gitea/modules/git" 18 17 "code.gitea.io/gitea/modules/log" 19 18 "code.gitea.io/gitea/modules/repofiles" ··· 21 20 "code.gitea.io/gitea/modules/util" 22 21 "code.gitea.io/gitea/modules/web" 23 22 "code.gitea.io/gitea/routers/utils" 23 + "code.gitea.io/gitea/services/forms" 24 24 release_service "code.gitea.io/gitea/services/release" 25 25 repo_service "code.gitea.io/gitea/services/repository" 26 26 ) ··· 372 372 373 373 // CreateBranch creates new branch in repository 374 374 func CreateBranch(ctx *context.Context) { 375 - form := web.GetForm(ctx).(*auth.NewBranchForm) 375 + form := web.GetForm(ctx).(*forms.NewBranchForm) 376 376 if !ctx.Repo.CanCreateBranch() { 377 377 ctx.NotFound("CreateBranch", nil) 378 378 return
+8 -8
routers/repo/editor.go
··· 15 15 "code.gitea.io/gitea/modules/base" 16 16 "code.gitea.io/gitea/modules/charset" 17 17 "code.gitea.io/gitea/modules/context" 18 - auth "code.gitea.io/gitea/modules/forms" 19 18 "code.gitea.io/gitea/modules/git" 20 19 "code.gitea.io/gitea/modules/log" 21 20 "code.gitea.io/gitea/modules/repofiles" ··· 25 24 "code.gitea.io/gitea/modules/util" 26 25 "code.gitea.io/gitea/modules/web" 27 26 "code.gitea.io/gitea/routers/utils" 27 + "code.gitea.io/gitea/services/forms" 28 28 jsoniter "github.com/json-iterator/go" 29 29 ) 30 30 ··· 177 177 editFile(ctx, true) 178 178 } 179 179 180 - func editFilePost(ctx *context.Context, form auth.EditRepoFileForm, isNewFile bool) { 180 + func editFilePost(ctx *context.Context, form forms.EditRepoFileForm, isNewFile bool) { 181 181 canCommit := renderCommitRights(ctx) 182 182 treeNames, treePaths := getParentTreeFields(form.TreePath) 183 183 branchName := ctx.Repo.BranchName ··· 330 330 331 331 // EditFilePost response for editing file 332 332 func EditFilePost(ctx *context.Context) { 333 - form := web.GetForm(ctx).(*auth.EditRepoFileForm) 333 + form := web.GetForm(ctx).(*forms.EditRepoFileForm) 334 334 editFilePost(ctx, *form, false) 335 335 } 336 336 337 337 // NewFilePost response for creating file 338 338 func NewFilePost(ctx *context.Context) { 339 - form := web.GetForm(ctx).(*auth.EditRepoFileForm) 339 + form := web.GetForm(ctx).(*forms.EditRepoFileForm) 340 340 editFilePost(ctx, *form, true) 341 341 } 342 342 343 343 // DiffPreviewPost render preview diff page 344 344 func DiffPreviewPost(ctx *context.Context) { 345 - form := web.GetForm(ctx).(*auth.EditPreviewDiffForm) 345 + form := web.GetForm(ctx).(*forms.EditPreviewDiffForm) 346 346 treePath := cleanUploadFileName(ctx.Repo.TreePath) 347 347 if len(treePath) == 0 { 348 348 ctx.Error(http.StatusInternalServerError, "file name to diff is invalid") ··· 402 402 403 403 // DeleteFilePost response for deleting file 404 404 func DeleteFilePost(ctx *context.Context) { 405 - form := web.GetForm(ctx).(*auth.DeleteRepoFileForm) 405 + form := web.GetForm(ctx).(*forms.DeleteRepoFileForm) 406 406 canCommit := renderCommitRights(ctx) 407 407 branchName := ctx.Repo.BranchName 408 408 if form.CommitChoice == frmCommitChoiceNewBranch { ··· 566 566 567 567 // UploadFilePost response for uploading file 568 568 func UploadFilePost(ctx *context.Context) { 569 - form := web.GetForm(ctx).(*auth.UploadRepoFileForm) 569 + form := web.GetForm(ctx).(*forms.UploadRepoFileForm) 570 570 ctx.Data["PageIsUpload"] = true 571 571 ctx.Data["RequireTribute"] = true 572 572 ctx.Data["RequireSimpleMDE"] = true ··· 772 772 773 773 // RemoveUploadFileFromServer remove file from server file dir 774 774 func RemoveUploadFileFromServer(ctx *context.Context) { 775 - form := web.GetForm(ctx).(*auth.RemoveUploadFileForm) 775 + form := web.GetForm(ctx).(*forms.RemoveUploadFileForm) 776 776 if len(form.File) == 0 { 777 777 ctx.Status(204) 778 778 return
+6 -6
routers/repo/issue.go
··· 19 19 "code.gitea.io/gitea/modules/base" 20 20 "code.gitea.io/gitea/modules/context" 21 21 "code.gitea.io/gitea/modules/convert" 22 - auth "code.gitea.io/gitea/modules/forms" 23 22 "code.gitea.io/gitea/modules/git" 24 23 issue_indexer "code.gitea.io/gitea/modules/indexer/issues" 25 24 "code.gitea.io/gitea/modules/log" ··· 31 30 "code.gitea.io/gitea/modules/util" 32 31 "code.gitea.io/gitea/modules/web" 33 32 comment_service "code.gitea.io/gitea/services/comments" 33 + "code.gitea.io/gitea/services/forms" 34 34 issue_service "code.gitea.io/gitea/services/issue" 35 35 pull_service "code.gitea.io/gitea/services/pull" 36 36 ··· 836 836 } 837 837 838 838 // ValidateRepoMetas check and returns repository's meta informations 839 - func ValidateRepoMetas(ctx *context.Context, form auth.CreateIssueForm, isPull bool) ([]int64, []int64, int64, int64) { 839 + func ValidateRepoMetas(ctx *context.Context, form forms.CreateIssueForm, isPull bool) ([]int64, []int64, int64, int64) { 840 840 var ( 841 841 repo = ctx.Repo.Repository 842 842 err error ··· 934 934 935 935 // NewIssuePost response for creating new issue 936 936 func NewIssuePost(ctx *context.Context) { 937 - form := web.GetForm(ctx).(*auth.CreateIssueForm) 937 + form := web.GetForm(ctx).(*forms.CreateIssueForm) 938 938 ctx.Data["Title"] = ctx.Tr("repo.issues.new") 939 939 ctx.Data["PageIsIssueList"] = true 940 940 ctx.Data["NewIssueChooseTemplate"] = len(ctx.IssueTemplatesFromDefaultBranch()) > 0 ··· 1961 1961 1962 1962 // NewComment create a comment for issue 1963 1963 func NewComment(ctx *context.Context) { 1964 - form := web.GetForm(ctx).(*auth.CreateCommentForm) 1964 + form := web.GetForm(ctx).(*forms.CreateCommentForm) 1965 1965 issue := GetActionIssue(ctx) 1966 1966 if ctx.Written() { 1967 1967 return ··· 2171 2171 2172 2172 // ChangeIssueReaction create a reaction for issue 2173 2173 func ChangeIssueReaction(ctx *context.Context) { 2174 - form := web.GetForm(ctx).(*auth.ReactionForm) 2174 + form := web.GetForm(ctx).(*forms.ReactionForm) 2175 2175 issue := GetActionIssue(ctx) 2176 2176 if ctx.Written() { 2177 2177 return ··· 2267 2267 2268 2268 // ChangeCommentReaction create a reaction for comment 2269 2269 func ChangeCommentReaction(ctx *context.Context) { 2270 - form := web.GetForm(ctx).(*auth.ReactionForm) 2270 + form := web.GetForm(ctx).(*forms.ReactionForm) 2271 2271 comment, err := models.GetCommentByID(ctx.ParamsInt64(":id")) 2272 2272 if err != nil { 2273 2273 ctx.NotFoundOrServerError("GetCommentByID", models.IsErrCommentNotExist, err)
+4 -4
routers/repo/issue_label.go
··· 10 10 "code.gitea.io/gitea/models" 11 11 "code.gitea.io/gitea/modules/base" 12 12 "code.gitea.io/gitea/modules/context" 13 - auth "code.gitea.io/gitea/modules/forms" 14 13 "code.gitea.io/gitea/modules/log" 15 14 "code.gitea.io/gitea/modules/setting" 16 15 "code.gitea.io/gitea/modules/web" 16 + "code.gitea.io/gitea/services/forms" 17 17 issue_service "code.gitea.io/gitea/services/issue" 18 18 ) 19 19 ··· 33 33 34 34 // InitializeLabels init labels for a repository 35 35 func InitializeLabels(ctx *context.Context) { 36 - form := web.GetForm(ctx).(*auth.InitializeLabelsForm) 36 + form := web.GetForm(ctx).(*forms.InitializeLabelsForm) 37 37 if ctx.HasError() { 38 38 ctx.Redirect(ctx.Repo.RepoLink + "/labels") 39 39 return ··· 99 99 100 100 // NewLabel create new label for repository 101 101 func NewLabel(ctx *context.Context) { 102 - form := web.GetForm(ctx).(*auth.CreateLabelForm) 102 + form := web.GetForm(ctx).(*forms.CreateLabelForm) 103 103 ctx.Data["Title"] = ctx.Tr("repo.labels") 104 104 ctx.Data["PageIsLabels"] = true 105 105 ··· 124 124 125 125 // UpdateLabel update a label's name and color 126 126 func UpdateLabel(ctx *context.Context) { 127 - form := web.GetForm(ctx).(*auth.CreateLabelForm) 127 + form := web.GetForm(ctx).(*forms.CreateLabelForm) 128 128 l, err := models.GetLabelInRepoByID(ctx.Repo.Repository.ID, form.ID) 129 129 if err != nil { 130 130 switch {
+4 -4
routers/repo/issue_label_test.go
··· 10 10 "testing" 11 11 12 12 "code.gitea.io/gitea/models" 13 - auth "code.gitea.io/gitea/modules/forms" 14 13 "code.gitea.io/gitea/modules/test" 15 14 "code.gitea.io/gitea/modules/web" 15 + "code.gitea.io/gitea/services/forms" 16 16 17 17 "github.com/stretchr/testify/assert" 18 18 ) ··· 33 33 ctx := test.MockContext(t, "user2/repo1/labels/initialize") 34 34 test.LoadUser(t, ctx, 2) 35 35 test.LoadRepo(t, ctx, 2) 36 - web.SetForm(ctx, &auth.InitializeLabelsForm{TemplateName: "Default"}) 36 + web.SetForm(ctx, &forms.InitializeLabelsForm{TemplateName: "Default"}) 37 37 InitializeLabels(ctx) 38 38 assert.EqualValues(t, http.StatusFound, ctx.Resp.Status()) 39 39 models.AssertExistsAndLoadBean(t, &models.Label{ ··· 76 76 ctx := test.MockContext(t, "user2/repo1/labels/edit") 77 77 test.LoadUser(t, ctx, 2) 78 78 test.LoadRepo(t, ctx, 1) 79 - web.SetForm(ctx, &auth.CreateLabelForm{ 79 + web.SetForm(ctx, &forms.CreateLabelForm{ 80 80 Title: "newlabel", 81 81 Color: "#abcdef", 82 82 }) ··· 94 94 ctx := test.MockContext(t, "user2/repo1/labels/edit") 95 95 test.LoadUser(t, ctx, 2) 96 96 test.LoadRepo(t, ctx, 1) 97 - web.SetForm(ctx, &auth.CreateLabelForm{ 97 + web.SetForm(ctx, &forms.CreateLabelForm{ 98 98 ID: 2, 99 99 Title: "newnameforlabel", 100 100 Color: "#abcdef",
+2 -2
routers/repo/issue_lock.go
··· 9 9 10 10 "code.gitea.io/gitea/models" 11 11 "code.gitea.io/gitea/modules/context" 12 - auth "code.gitea.io/gitea/modules/forms" 13 12 "code.gitea.io/gitea/modules/web" 13 + "code.gitea.io/gitea/services/forms" 14 14 ) 15 15 16 16 // LockIssue locks an issue. This would limit commenting abilities to 17 17 // users with write access to the repo. 18 18 func LockIssue(ctx *context.Context) { 19 - form := web.GetForm(ctx).(*auth.IssueLockForm) 19 + form := web.GetForm(ctx).(*forms.IssueLockForm) 20 20 issue := GetActionIssue(ctx) 21 21 if ctx.Written() { 22 22 return
+1 -1
routers/repo/issue_timetrack.go
··· 10 10 11 11 "code.gitea.io/gitea/models" 12 12 "code.gitea.io/gitea/modules/context" 13 - "code.gitea.io/gitea/modules/forms" 14 13 "code.gitea.io/gitea/modules/web" 14 + "code.gitea.io/gitea/services/forms" 15 15 ) 16 16 17 17 // AddTimeManually tracks time manually
+5 -5
routers/repo/migrate.go
··· 12 12 "code.gitea.io/gitea/models" 13 13 "code.gitea.io/gitea/modules/base" 14 14 "code.gitea.io/gitea/modules/context" 15 - auth "code.gitea.io/gitea/modules/forms" 16 15 "code.gitea.io/gitea/modules/log" 17 16 "code.gitea.io/gitea/modules/migrations" 18 17 "code.gitea.io/gitea/modules/setting" ··· 20 19 "code.gitea.io/gitea/modules/task" 21 20 "code.gitea.io/gitea/modules/util" 22 21 "code.gitea.io/gitea/modules/web" 22 + "code.gitea.io/gitea/services/forms" 23 23 ) 24 24 25 25 const ( ··· 63 63 ctx.HTML(http.StatusOK, base.TplName("repo/migrate/"+serviceType.Name())) 64 64 } 65 65 66 - func handleMigrateError(ctx *context.Context, owner *models.User, err error, name string, tpl base.TplName, form *auth.MigrateRepoForm) { 66 + func handleMigrateError(ctx *context.Context, owner *models.User, err error, name string, tpl base.TplName, form *forms.MigrateRepoForm) { 67 67 if setting.Repository.DisableMigrations { 68 68 ctx.Error(http.StatusForbidden, "MigrateError: the site administrator has disabled migrations") 69 69 return ··· 98 98 ctx.Data["Err_RepoName"] = true 99 99 ctx.RenderWithErr(ctx.Tr("repo.form.name_pattern_not_allowed", err.(models.ErrNamePatternNotAllowed).Pattern), tpl, form) 100 100 default: 101 - remoteAddr, _ := auth.ParseRemoteAddr(form.CloneAddr, form.AuthUsername, form.AuthPassword) 101 + remoteAddr, _ := forms.ParseRemoteAddr(form.CloneAddr, form.AuthUsername, form.AuthPassword) 102 102 err = util.URLSanitizedError(err, remoteAddr) 103 103 if strings.Contains(err.Error(), "Authentication failed") || 104 104 strings.Contains(err.Error(), "Bad credentials") || ··· 116 116 117 117 // MigratePost response for migrating from external git repository 118 118 func MigratePost(ctx *context.Context) { 119 - form := web.GetForm(ctx).(*auth.MigrateRepoForm) 119 + form := web.GetForm(ctx).(*forms.MigrateRepoForm) 120 120 if setting.Repository.DisableMigrations { 121 121 ctx.Error(http.StatusForbidden, "MigratePost: the site administrator has disabled migrations") 122 122 return ··· 139 139 return 140 140 } 141 141 142 - remoteAddr, err := auth.ParseRemoteAddr(form.CloneAddr, form.AuthUsername, form.AuthPassword) 142 + remoteAddr, err := forms.ParseRemoteAddr(form.CloneAddr, form.AuthUsername, form.AuthPassword) 143 143 if err == nil { 144 144 err = migrations.IsMigrateURLAllowed(remoteAddr, ctx.User) 145 145 }
+3 -3
routers/repo/milestone.go
··· 11 11 "code.gitea.io/gitea/models" 12 12 "code.gitea.io/gitea/modules/base" 13 13 "code.gitea.io/gitea/modules/context" 14 - auth "code.gitea.io/gitea/modules/forms" 15 14 "code.gitea.io/gitea/modules/markup/markdown" 16 15 "code.gitea.io/gitea/modules/setting" 17 16 "code.gitea.io/gitea/modules/structs" 18 17 "code.gitea.io/gitea/modules/timeutil" 19 18 "code.gitea.io/gitea/modules/util" 20 19 "code.gitea.io/gitea/modules/web" 20 + "code.gitea.io/gitea/services/forms" 21 21 22 22 "xorm.io/builder" 23 23 ) ··· 109 109 110 110 // NewMilestonePost response for creating milestone 111 111 func NewMilestonePost(ctx *context.Context) { 112 - form := web.GetForm(ctx).(*auth.CreateMilestoneForm) 112 + form := web.GetForm(ctx).(*forms.CreateMilestoneForm) 113 113 ctx.Data["Title"] = ctx.Tr("repo.milestones.new") 114 114 ctx.Data["PageIsIssueList"] = true 115 115 ctx.Data["PageIsMilestones"] = true ··· 169 169 170 170 // EditMilestonePost response for edting milestone 171 171 func EditMilestonePost(ctx *context.Context) { 172 - form := web.GetForm(ctx).(*auth.CreateMilestoneForm) 172 + form := web.GetForm(ctx).(*forms.CreateMilestoneForm) 173 173 ctx.Data["Title"] = ctx.Tr("repo.milestones.edit") 174 174 ctx.Data["PageIsMilestones"] = true 175 175 ctx.Data["PageIsEditMilestone"] = true
+6 -6
routers/repo/projects.go
··· 12 12 "code.gitea.io/gitea/models" 13 13 "code.gitea.io/gitea/modules/base" 14 14 "code.gitea.io/gitea/modules/context" 15 - auth "code.gitea.io/gitea/modules/forms" 16 15 "code.gitea.io/gitea/modules/markup/markdown" 17 16 "code.gitea.io/gitea/modules/setting" 18 17 "code.gitea.io/gitea/modules/util" 19 18 "code.gitea.io/gitea/modules/web" 19 + "code.gitea.io/gitea/services/forms" 20 20 ) 21 21 22 22 const ( ··· 115 115 116 116 // NewProjectPost creates a new project 117 117 func NewProjectPost(ctx *context.Context) { 118 - form := web.GetForm(ctx).(*auth.CreateProjectForm) 118 + form := web.GetForm(ctx).(*forms.CreateProjectForm) 119 119 ctx.Data["Title"] = ctx.Tr("repo.projects.new") 120 120 121 121 if ctx.HasError() { ··· 221 221 222 222 // EditProjectPost response for editing a project 223 223 func EditProjectPost(ctx *context.Context) { 224 - form := web.GetForm(ctx).(*auth.CreateProjectForm) 224 + form := web.GetForm(ctx).(*forms.CreateProjectForm) 225 225 ctx.Data["Title"] = ctx.Tr("repo.projects.edit") 226 226 ctx.Data["PageIsProjects"] = true 227 227 ctx.Data["PageIsEditProjects"] = true ··· 404 404 405 405 // AddBoardToProjectPost allows a new board to be added to a project. 406 406 func AddBoardToProjectPost(ctx *context.Context) { 407 - form := web.GetForm(ctx).(*auth.EditProjectBoardForm) 407 + form := web.GetForm(ctx).(*forms.EditProjectBoardForm) 408 408 if !ctx.Repo.IsOwner() && !ctx.Repo.IsAdmin() && !ctx.Repo.CanAccess(models.AccessModeWrite, models.UnitTypeProjects) { 409 409 ctx.JSON(http.StatusForbidden, map[string]string{ 410 410 "message": "Only authorized users are allowed to perform this action.", ··· 484 484 485 485 // EditProjectBoard allows a project board's to be updated 486 486 func EditProjectBoard(ctx *context.Context) { 487 - form := web.GetForm(ctx).(*auth.EditProjectBoardForm) 487 + form := web.GetForm(ctx).(*forms.EditProjectBoardForm) 488 488 _, board := checkProjectBoardChangePermissions(ctx) 489 489 if ctx.Written() { 490 490 return ··· 614 614 } 615 615 616 616 // CreateProjectPost creates an individual and/or organization project 617 - func CreateProjectPost(ctx *context.Context, form auth.UserCreateProjectForm) { 617 + func CreateProjectPost(ctx *context.Context, form forms.UserCreateProjectForm) { 618 618 619 619 user := checkContextUser(ctx, form.UID) 620 620 if ctx.Written() {
+4 -4
routers/repo/pull.go
··· 18 18 "code.gitea.io/gitea/models" 19 19 "code.gitea.io/gitea/modules/base" 20 20 "code.gitea.io/gitea/modules/context" 21 - auth "code.gitea.io/gitea/modules/forms" 22 21 "code.gitea.io/gitea/modules/git" 23 22 "code.gitea.io/gitea/modules/log" 24 23 "code.gitea.io/gitea/modules/notification" ··· 30 29 "code.gitea.io/gitea/modules/web" 31 30 "code.gitea.io/gitea/modules/web/middleware" 32 31 "code.gitea.io/gitea/routers/utils" 32 + "code.gitea.io/gitea/services/forms" 33 33 "code.gitea.io/gitea/services/gitdiff" 34 34 pull_service "code.gitea.io/gitea/services/pull" 35 35 repo_service "code.gitea.io/gitea/services/repository" ··· 172 172 173 173 // ForkPost response for forking a repository 174 174 func ForkPost(ctx *context.Context) { 175 - form := web.GetForm(ctx).(*auth.CreateRepoForm) 175 + form := web.GetForm(ctx).(*forms.CreateRepoForm) 176 176 ctx.Data["Title"] = ctx.Tr("new_fork") 177 177 178 178 ctxUser := checkContextUser(ctx, form.UID) ··· 764 764 765 765 // MergePullRequest response for merging pull request 766 766 func MergePullRequest(ctx *context.Context) { 767 - form := web.GetForm(ctx).(*auth.MergePullRequestForm) 767 + form := web.GetForm(ctx).(*forms.MergePullRequestForm) 768 768 issue := checkPullInfo(ctx) 769 769 if ctx.Written() { 770 770 return ··· 975 975 976 976 // CompareAndPullRequestPost response for creating pull request 977 977 func CompareAndPullRequestPost(ctx *context.Context) { 978 - form := web.GetForm(ctx).(*auth.CreateIssueForm) 978 + form := web.GetForm(ctx).(*forms.CreateIssueForm) 979 979 ctx.Data["Title"] = ctx.Tr("repo.pulls.compare_changes") 980 980 ctx.Data["PageIsComparePull"] = true 981 981 ctx.Data["IsDiffCompare"] = true
+4 -4
routers/repo/pull_review.go
··· 11 11 "code.gitea.io/gitea/models" 12 12 "code.gitea.io/gitea/modules/base" 13 13 "code.gitea.io/gitea/modules/context" 14 - auth "code.gitea.io/gitea/modules/forms" 15 14 "code.gitea.io/gitea/modules/log" 16 15 "code.gitea.io/gitea/modules/web" 16 + "code.gitea.io/gitea/services/forms" 17 17 pull_service "code.gitea.io/gitea/services/pull" 18 18 ) 19 19 ··· 47 47 48 48 // CreateCodeComment will create a code comment including an pending review if required 49 49 func CreateCodeComment(ctx *context.Context) { 50 - form := web.GetForm(ctx).(*auth.CodeCommentForm) 50 + form := web.GetForm(ctx).(*forms.CodeCommentForm) 51 51 issue := GetActionIssue(ctx) 52 52 if !issue.IsPull { 53 53 return ··· 175 175 176 176 // SubmitReview creates a review out of the existing pending review or creates a new one if no pending review exist 177 177 func SubmitReview(ctx *context.Context) { 178 - form := web.GetForm(ctx).(*auth.SubmitReviewForm) 178 + form := web.GetForm(ctx).(*forms.SubmitReviewForm) 179 179 issue := GetActionIssue(ctx) 180 180 if !issue.IsPull { 181 181 return ··· 227 227 228 228 // DismissReview dismissing stale review by repo admin 229 229 func DismissReview(ctx *context.Context) { 230 - form := web.GetForm(ctx).(*auth.DismissReviewForm) 230 + form := web.GetForm(ctx).(*forms.DismissReviewForm) 231 231 comm, err := pull_service.DismissReview(form.ReviewID, form.Message, ctx.User, true) 232 232 if err != nil { 233 233 ctx.ServerError("pull_service.DismissReview", err)
+3 -3
routers/repo/release.go
··· 14 14 "code.gitea.io/gitea/modules/base" 15 15 "code.gitea.io/gitea/modules/context" 16 16 "code.gitea.io/gitea/modules/convert" 17 - auth "code.gitea.io/gitea/modules/forms" 18 17 "code.gitea.io/gitea/modules/log" 19 18 "code.gitea.io/gitea/modules/markup/markdown" 20 19 "code.gitea.io/gitea/modules/setting" 21 20 "code.gitea.io/gitea/modules/upload" 22 21 "code.gitea.io/gitea/modules/web" 22 + "code.gitea.io/gitea/services/forms" 23 23 releaseservice "code.gitea.io/gitea/services/release" 24 24 ) 25 25 ··· 243 243 244 244 // NewReleasePost response for creating a release 245 245 func NewReleasePost(ctx *context.Context) { 246 - form := web.GetForm(ctx).(*auth.NewReleaseForm) 246 + form := web.GetForm(ctx).(*forms.NewReleaseForm) 247 247 ctx.Data["Title"] = ctx.Tr("repo.release.new_release") 248 248 ctx.Data["PageIsReleaseList"] = true 249 249 ctx.Data["RequireSimpleMDE"] = true ··· 384 384 385 385 // EditReleasePost response for edit release 386 386 func EditReleasePost(ctx *context.Context) { 387 - form := web.GetForm(ctx).(*auth.EditReleaseForm) 387 + form := web.GetForm(ctx).(*forms.EditReleaseForm) 388 388 ctx.Data["Title"] = ctx.Tr("repo.release.edit_release") 389 389 ctx.Data["PageIsReleaseList"] = true 390 390 ctx.Data["PageIsEditRelease"] = true
+4 -4
routers/repo/release_test.go
··· 8 8 "testing" 9 9 10 10 "code.gitea.io/gitea/models" 11 - auth "code.gitea.io/gitea/modules/forms" 12 11 "code.gitea.io/gitea/modules/test" 13 12 "code.gitea.io/gitea/modules/web" 13 + "code.gitea.io/gitea/services/forms" 14 14 ) 15 15 16 16 func TestNewReleasePost(t *testing.T) { ··· 18 18 RepoID int64 19 19 UserID int64 20 20 TagName string 21 - Form auth.NewReleaseForm 21 + Form forms.NewReleaseForm 22 22 }{ 23 23 { 24 24 RepoID: 1, 25 25 UserID: 2, 26 26 TagName: "v1.1", // pre-existing tag 27 - Form: auth.NewReleaseForm{ 27 + Form: forms.NewReleaseForm{ 28 28 TagName: "newtag", 29 29 Target: "master", 30 30 Title: "title", ··· 35 35 RepoID: 1, 36 36 UserID: 2, 37 37 TagName: "newtag", 38 - Form: auth.NewReleaseForm{ 38 + Form: forms.NewReleaseForm{ 39 39 TagName: "newtag", 40 40 Target: "master", 41 41 Title: "title",
+2 -2
routers/repo/repo.go
··· 15 15 "code.gitea.io/gitea/models" 16 16 "code.gitea.io/gitea/modules/base" 17 17 "code.gitea.io/gitea/modules/context" 18 - auth "code.gitea.io/gitea/modules/forms" 19 18 "code.gitea.io/gitea/modules/log" 20 19 "code.gitea.io/gitea/modules/setting" 21 20 "code.gitea.io/gitea/modules/web" 22 21 archiver_service "code.gitea.io/gitea/services/archiver" 22 + "code.gitea.io/gitea/services/forms" 23 23 repo_service "code.gitea.io/gitea/services/repository" 24 24 ) 25 25 ··· 185 185 186 186 // CreatePost response for creating repository 187 187 func CreatePost(ctx *context.Context) { 188 - form := web.GetForm(ctx).(*auth.CreateRepoForm) 188 + form := web.GetForm(ctx).(*forms.CreateRepoForm) 189 189 ctx.Data["Title"] = ctx.Tr("new_repo") 190 190 191 191 ctx.Data["Gitignores"] = models.Gitignores
+7 -7
routers/repo/setting.go
··· 16 16 "code.gitea.io/gitea/models" 17 17 "code.gitea.io/gitea/modules/base" 18 18 "code.gitea.io/gitea/modules/context" 19 - auth "code.gitea.io/gitea/modules/forms" 20 19 "code.gitea.io/gitea/modules/git" 21 20 "code.gitea.io/gitea/modules/log" 22 21 "code.gitea.io/gitea/modules/migrations" ··· 27 26 "code.gitea.io/gitea/modules/validation" 28 27 "code.gitea.io/gitea/modules/web" 29 28 "code.gitea.io/gitea/routers/utils" 29 + "code.gitea.io/gitea/services/forms" 30 30 "code.gitea.io/gitea/services/mailer" 31 31 mirror_service "code.gitea.io/gitea/services/mirror" 32 32 repo_service "code.gitea.io/gitea/services/repository" ··· 57 57 58 58 // SettingsPost response for changes of a repository 59 59 func SettingsPost(ctx *context.Context) { 60 - form := web.GetForm(ctx).(*auth.RepoSettingForm) 60 + form := web.GetForm(ctx).(*forms.RepoSettingForm) 61 61 ctx.Data["Title"] = ctx.Tr("repo.settings") 62 62 ctx.Data["PageIsSettingsOptions"] = true 63 63 ··· 165 165 } 166 166 } 167 167 168 - address, err := auth.ParseRemoteAddr(form.MirrorAddress, form.MirrorUsername, form.MirrorPassword) 168 + address, err := forms.ParseRemoteAddr(form.MirrorAddress, form.MirrorUsername, form.MirrorPassword) 169 169 if err == nil { 170 170 err = migrations.IsMigrateURLAllowed(address, ctx.User) 171 171 } ··· 883 883 884 884 // DeployKeysPost response for adding a deploy key of a repository 885 885 func DeployKeysPost(ctx *context.Context) { 886 - form := web.GetForm(ctx).(*auth.AddKeyForm) 886 + form := web.GetForm(ctx).(*forms.AddKeyForm) 887 887 ctx.Data["Title"] = ctx.Tr("repo.settings.deploy_keys") 888 888 ctx.Data["PageIsSettingsKeys"] = true 889 889 ··· 955 955 } 956 956 957 957 // UpdateAvatarSetting update repo's avatar 958 - func UpdateAvatarSetting(ctx *context.Context, form auth.AvatarForm) error { 958 + func UpdateAvatarSetting(ctx *context.Context, form forms.AvatarForm) error { 959 959 ctxRepo := ctx.Repo.Repository 960 960 961 961 if form.Avatar == nil { ··· 993 993 994 994 // SettingsAvatar save new POSTed repository avatar 995 995 func SettingsAvatar(ctx *context.Context) { 996 - form := web.GetForm(ctx).(*auth.AvatarForm) 997 - form.Source = auth.AvatarLocal 996 + form := web.GetForm(ctx).(*forms.AvatarForm) 997 + form.Source = forms.AvatarLocal 998 998 if err := UpdateAvatarSetting(ctx, *form); err != nil { 999 999 ctx.Flash.Error(err.Error()) 1000 1000 } else {
+2 -2
routers/repo/setting_protected_branch.go
··· 13 13 "code.gitea.io/gitea/models" 14 14 "code.gitea.io/gitea/modules/base" 15 15 "code.gitea.io/gitea/modules/context" 16 - auth "code.gitea.io/gitea/modules/forms" 17 16 "code.gitea.io/gitea/modules/git" 18 17 "code.gitea.io/gitea/modules/log" 19 18 "code.gitea.io/gitea/modules/setting" 20 19 "code.gitea.io/gitea/modules/web" 20 + "code.gitea.io/gitea/services/forms" 21 21 pull_service "code.gitea.io/gitea/services/pull" 22 22 ) 23 23 ··· 171 171 172 172 // SettingsProtectedBranchPost updates the protected branch settings 173 173 func SettingsProtectedBranchPost(ctx *context.Context) { 174 - f := web.GetForm(ctx).(*auth.ProtectBranchForm) 174 + f := web.GetForm(ctx).(*forms.ProtectBranchForm) 175 175 branch := ctx.Params("*") 176 176 if !ctx.Repo.GitRepo.IsBranchExist(branch) { 177 177 ctx.NotFound("IsBranchExist", nil)
+3 -3
routers/repo/settings_test.go
··· 11 11 12 12 "code.gitea.io/gitea/models" 13 13 "code.gitea.io/gitea/modules/context" 14 - auth "code.gitea.io/gitea/modules/forms" 15 14 "code.gitea.io/gitea/modules/setting" 16 15 "code.gitea.io/gitea/modules/test" 17 16 "code.gitea.io/gitea/modules/util" 18 17 "code.gitea.io/gitea/modules/web" 18 + "code.gitea.io/gitea/services/forms" 19 19 20 20 "github.com/stretchr/testify/assert" 21 21 ) ··· 49 49 test.LoadUser(t, ctx, 2) 50 50 test.LoadRepo(t, ctx, 2) 51 51 52 - addKeyForm := auth.AddKeyForm{ 52 + addKeyForm := forms.AddKeyForm{ 53 53 Title: "read-only", 54 54 Content: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC4cn+iXnA4KvcQYSV88vGn0Yi91vG47t1P7okprVmhNTkipNRIHWr6WdCO4VDr/cvsRkuVJAsLO2enwjGWWueOO6BodiBgyAOZ/5t5nJNMCNuLGT5UIo/RI1b0WRQwxEZTRjt6mFNw6lH14wRd8ulsr9toSWBPMOGWoYs1PDeDL0JuTjL+tr1SZi/EyxCngpYszKdXllJEHyI79KQgeD0Vt3pTrkbNVTOEcCNqZePSVmUH8X8Vhugz3bnE0/iE9Pb5fkWO9c4AnM1FgI/8Bvp27Fw2ShryIXuR6kKvUqhVMTuOSDHwu6A8jLE5Owt3GAYugDpDYuwTVNGrHLXKpPzrGGPE/jPmaLCMZcsdkec95dYeU3zKODEm8UQZFhmJmDeWVJ36nGrGZHL4J5aTTaeFUJmmXDaJYiJ+K2/ioKgXqnXvltu0A9R8/LGy4nrTJRr4JMLuJFoUXvGm1gXQ70w2LSpk6yl71RNC0hCtsBe8BP8IhYCM0EP5jh7eCMQZNvM= nocomment\n", 55 55 } ··· 78 78 test.LoadUser(t, ctx, 2) 79 79 test.LoadRepo(t, ctx, 2) 80 80 81 - addKeyForm := auth.AddKeyForm{ 81 + addKeyForm := forms.AddKeyForm{ 82 82 Title: "read-write", 83 83 Content: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC4cn+iXnA4KvcQYSV88vGn0Yi91vG47t1P7okprVmhNTkipNRIHWr6WdCO4VDr/cvsRkuVJAsLO2enwjGWWueOO6BodiBgyAOZ/5t5nJNMCNuLGT5UIo/RI1b0WRQwxEZTRjt6mFNw6lH14wRd8ulsr9toSWBPMOGWoYs1PDeDL0JuTjL+tr1SZi/EyxCngpYszKdXllJEHyI79KQgeD0Vt3pTrkbNVTOEcCNqZePSVmUH8X8Vhugz3bnE0/iE9Pb5fkWO9c4AnM1FgI/8Bvp27Fw2ShryIXuR6kKvUqhVMTuOSDHwu6A8jLE5Owt3GAYugDpDYuwTVNGrHLXKpPzrGGPE/jPmaLCMZcsdkec95dYeU3zKODEm8UQZFhmJmDeWVJ36nGrGZHL4J5aTTaeFUJmmXDaJYiJ+K2/ioKgXqnXvltu0A9R8/LGy4nrTJRr4JMLuJFoUXvGm1gXQ70w2LSpk6yl71RNC0hCtsBe8BP8IhYCM0EP5jh7eCMQZNvM= nocomment\n", 84 84 IsWritable: true,
+21 -21
routers/repo/webhook.go
··· 16 16 "code.gitea.io/gitea/modules/base" 17 17 "code.gitea.io/gitea/modules/context" 18 18 "code.gitea.io/gitea/modules/convert" 19 - auth "code.gitea.io/gitea/modules/forms" 20 19 "code.gitea.io/gitea/modules/git" 21 20 "code.gitea.io/gitea/modules/setting" 22 21 api "code.gitea.io/gitea/modules/structs" 23 22 "code.gitea.io/gitea/modules/util" 24 23 "code.gitea.io/gitea/modules/web" 24 + "code.gitea.io/gitea/services/forms" 25 25 "code.gitea.io/gitea/services/webhook" 26 26 jsoniter "github.com/json-iterator/go" 27 27 ) ··· 153 153 } 154 154 155 155 // ParseHookEvent convert web form content to models.HookEvent 156 - func ParseHookEvent(form auth.WebhookForm) *models.HookEvent { 156 + func ParseHookEvent(form forms.WebhookForm) *models.HookEvent { 157 157 return &models.HookEvent{ 158 158 PushOnly: form.PushOnly(), 159 159 SendEverything: form.SendEverything(), ··· 184 184 185 185 // GiteaHooksNewPost response for creating Gitea webhook 186 186 func GiteaHooksNewPost(ctx *context.Context) { 187 - form := web.GetForm(ctx).(*auth.NewWebhookForm) 187 + form := web.GetForm(ctx).(*forms.NewWebhookForm) 188 188 ctx.Data["Title"] = ctx.Tr("repo.settings.add_webhook") 189 189 ctx.Data["PageIsSettingsHooks"] = true 190 190 ctx.Data["PageIsSettingsHooksNew"] = true ··· 234 234 235 235 // GogsHooksNewPost response for creating webhook 236 236 func GogsHooksNewPost(ctx *context.Context) { 237 - form := web.GetForm(ctx).(*auth.NewGogshookForm) 237 + form := web.GetForm(ctx).(*forms.NewGogshookForm) 238 238 newGogsWebhookPost(ctx, *form, models.GOGS) 239 239 } 240 240 241 241 // newGogsWebhookPost response for creating gogs hook 242 - func newGogsWebhookPost(ctx *context.Context, form auth.NewGogshookForm, kind models.HookTaskType) { 242 + func newGogsWebhookPost(ctx *context.Context, form forms.NewGogshookForm, kind models.HookTaskType) { 243 243 ctx.Data["Title"] = ctx.Tr("repo.settings.add_webhook") 244 244 ctx.Data["PageIsSettingsHooks"] = true 245 245 ctx.Data["PageIsSettingsHooksNew"] = true ··· 288 288 289 289 // DiscordHooksNewPost response for creating discord hook 290 290 func DiscordHooksNewPost(ctx *context.Context) { 291 - form := web.GetForm(ctx).(*auth.NewDiscordHookForm) 291 + form := web.GetForm(ctx).(*forms.NewDiscordHookForm) 292 292 ctx.Data["Title"] = ctx.Tr("repo.settings") 293 293 ctx.Data["PageIsSettingsHooks"] = true 294 294 ctx.Data["PageIsSettingsHooksNew"] = true ··· 341 341 342 342 // DingtalkHooksNewPost response for creating dingtalk hook 343 343 func DingtalkHooksNewPost(ctx *context.Context) { 344 - form := web.GetForm(ctx).(*auth.NewDingtalkHookForm) 344 + form := web.GetForm(ctx).(*forms.NewDingtalkHookForm) 345 345 ctx.Data["Title"] = ctx.Tr("repo.settings") 346 346 ctx.Data["PageIsSettingsHooks"] = true 347 347 ctx.Data["PageIsSettingsHooksNew"] = true ··· 384 384 385 385 // TelegramHooksNewPost response for creating telegram hook 386 386 func TelegramHooksNewPost(ctx *context.Context) { 387 - form := web.GetForm(ctx).(*auth.NewTelegramHookForm) 387 + form := web.GetForm(ctx).(*forms.NewTelegramHookForm) 388 388 ctx.Data["Title"] = ctx.Tr("repo.settings") 389 389 ctx.Data["PageIsSettingsHooks"] = true 390 390 ctx.Data["PageIsSettingsHooksNew"] = true ··· 437 437 438 438 // MatrixHooksNewPost response for creating a Matrix hook 439 439 func MatrixHooksNewPost(ctx *context.Context) { 440 - form := web.GetForm(ctx).(*auth.NewMatrixHookForm) 440 + form := web.GetForm(ctx).(*forms.NewMatrixHookForm) 441 441 ctx.Data["Title"] = ctx.Tr("repo.settings") 442 442 ctx.Data["PageIsSettingsHooks"] = true 443 443 ctx.Data["PageIsSettingsHooksNew"] = true ··· 493 493 494 494 // MSTeamsHooksNewPost response for creating MS Teams hook 495 495 func MSTeamsHooksNewPost(ctx *context.Context) { 496 - form := web.GetForm(ctx).(*auth.NewMSTeamsHookForm) 496 + form := web.GetForm(ctx).(*forms.NewMSTeamsHookForm) 497 497 ctx.Data["Title"] = ctx.Tr("repo.settings") 498 498 ctx.Data["PageIsSettingsHooks"] = true 499 499 ctx.Data["PageIsSettingsHooksNew"] = true ··· 536 536 537 537 // SlackHooksNewPost response for creating slack hook 538 538 func SlackHooksNewPost(ctx *context.Context) { 539 - form := web.GetForm(ctx).(*auth.NewSlackHookForm) 539 + form := web.GetForm(ctx).(*forms.NewSlackHookForm) 540 540 ctx.Data["Title"] = ctx.Tr("repo.settings") 541 541 ctx.Data["PageIsSettingsHooks"] = true 542 542 ctx.Data["PageIsSettingsHooksNew"] = true ··· 597 597 598 598 // FeishuHooksNewPost response for creating feishu hook 599 599 func FeishuHooksNewPost(ctx *context.Context) { 600 - form := web.GetForm(ctx).(*auth.NewFeishuHookForm) 600 + form := web.GetForm(ctx).(*forms.NewFeishuHookForm) 601 601 ctx.Data["Title"] = ctx.Tr("repo.settings") 602 602 ctx.Data["PageIsSettingsHooks"] = true 603 603 ctx.Data["PageIsSettingsHooksNew"] = true ··· 701 701 702 702 // WebHooksEditPost response for editing web hook 703 703 func WebHooksEditPost(ctx *context.Context) { 704 - form := web.GetForm(ctx).(*auth.NewWebhookForm) 704 + form := web.GetForm(ctx).(*forms.NewWebhookForm) 705 705 ctx.Data["Title"] = ctx.Tr("repo.settings.update_webhook") 706 706 ctx.Data["PageIsSettingsHooks"] = true 707 707 ctx.Data["PageIsSettingsHooksEdit"] = true ··· 742 742 743 743 // GogsHooksEditPost response for editing gogs hook 744 744 func GogsHooksEditPost(ctx *context.Context) { 745 - form := web.GetForm(ctx).(*auth.NewGogshookForm) 745 + form := web.GetForm(ctx).(*forms.NewGogshookForm) 746 746 ctx.Data["Title"] = ctx.Tr("repo.settings.update_webhook") 747 747 ctx.Data["PageIsSettingsHooks"] = true 748 748 ctx.Data["PageIsSettingsHooksEdit"] = true ··· 782 782 783 783 // SlackHooksEditPost response for editing slack hook 784 784 func SlackHooksEditPost(ctx *context.Context) { 785 - form := web.GetForm(ctx).(*auth.NewSlackHookForm) 785 + form := web.GetForm(ctx).(*forms.NewSlackHookForm) 786 786 ctx.Data["Title"] = ctx.Tr("repo.settings") 787 787 ctx.Data["PageIsSettingsHooks"] = true 788 788 ctx.Data["PageIsSettingsHooksEdit"] = true ··· 834 834 835 835 // DiscordHooksEditPost response for editing discord hook 836 836 func DiscordHooksEditPost(ctx *context.Context) { 837 - form := web.GetForm(ctx).(*auth.NewDiscordHookForm) 837 + form := web.GetForm(ctx).(*forms.NewDiscordHookForm) 838 838 ctx.Data["Title"] = ctx.Tr("repo.settings") 839 839 ctx.Data["PageIsSettingsHooks"] = true 840 840 ctx.Data["PageIsSettingsHooksEdit"] = true ··· 878 878 879 879 // DingtalkHooksEditPost response for editing discord hook 880 880 func DingtalkHooksEditPost(ctx *context.Context) { 881 - form := web.GetForm(ctx).(*auth.NewDingtalkHookForm) 881 + form := web.GetForm(ctx).(*forms.NewDingtalkHookForm) 882 882 ctx.Data["Title"] = ctx.Tr("repo.settings") 883 883 ctx.Data["PageIsSettingsHooks"] = true 884 884 ctx.Data["PageIsSettingsHooksEdit"] = true ··· 911 911 912 912 // TelegramHooksEditPost response for editing discord hook 913 913 func TelegramHooksEditPost(ctx *context.Context) { 914 - form := web.GetForm(ctx).(*auth.NewTelegramHookForm) 914 + form := web.GetForm(ctx).(*forms.NewTelegramHookForm) 915 915 ctx.Data["Title"] = ctx.Tr("repo.settings") 916 916 ctx.Data["PageIsSettingsHooks"] = true 917 917 ctx.Data["PageIsSettingsHooksEdit"] = true ··· 953 953 954 954 // MatrixHooksEditPost response for editing a Matrix hook 955 955 func MatrixHooksEditPost(ctx *context.Context) { 956 - form := web.GetForm(ctx).(*auth.NewMatrixHookForm) 956 + form := web.GetForm(ctx).(*forms.NewMatrixHookForm) 957 957 ctx.Data["Title"] = ctx.Tr("repo.settings") 958 958 ctx.Data["PageIsSettingsHooks"] = true 959 959 ctx.Data["PageIsSettingsHooksEdit"] = true ··· 998 998 999 999 // MSTeamsHooksEditPost response for editing MS Teams hook 1000 1000 func MSTeamsHooksEditPost(ctx *context.Context) { 1001 - form := web.GetForm(ctx).(*auth.NewMSTeamsHookForm) 1001 + form := web.GetForm(ctx).(*forms.NewMSTeamsHookForm) 1002 1002 ctx.Data["Title"] = ctx.Tr("repo.settings") 1003 1003 ctx.Data["PageIsSettingsHooks"] = true 1004 1004 ctx.Data["PageIsSettingsHooksEdit"] = true ··· 1031 1031 1032 1032 // FeishuHooksEditPost response for editing feishu hook 1033 1033 func FeishuHooksEditPost(ctx *context.Context) { 1034 - form := web.GetForm(ctx).(*auth.NewFeishuHookForm) 1034 + form := web.GetForm(ctx).(*forms.NewFeishuHookForm) 1035 1035 ctx.Data["Title"] = ctx.Tr("repo.settings") 1036 1036 ctx.Data["PageIsSettingsHooks"] = true 1037 1037 ctx.Data["PageIsSettingsHooksEdit"] = true
+3 -3
routers/repo/wiki.go
··· 16 16 "code.gitea.io/gitea/models" 17 17 "code.gitea.io/gitea/modules/base" 18 18 "code.gitea.io/gitea/modules/context" 19 - auth "code.gitea.io/gitea/modules/forms" 20 19 "code.gitea.io/gitea/modules/git" 21 20 "code.gitea.io/gitea/modules/log" 22 21 "code.gitea.io/gitea/modules/markup" ··· 24 23 "code.gitea.io/gitea/modules/timeutil" 25 24 "code.gitea.io/gitea/modules/util" 26 25 "code.gitea.io/gitea/modules/web" 26 + "code.gitea.io/gitea/services/forms" 27 27 wiki_service "code.gitea.io/gitea/services/wiki" 28 28 ) 29 29 ··· 559 559 560 560 // NewWikiPost response for wiki create request 561 561 func NewWikiPost(ctx *context.Context) { 562 - form := web.GetForm(ctx).(*auth.NewWikiForm) 562 + form := web.GetForm(ctx).(*forms.NewWikiForm) 563 563 ctx.Data["Title"] = ctx.Tr("repo.wiki.new_page") 564 564 ctx.Data["PageIsWiki"] = true 565 565 ctx.Data["RequireSimpleMDE"] = true ··· 617 617 618 618 // EditWikiPost response for wiki modify request 619 619 func EditWikiPost(ctx *context.Context) { 620 - form := web.GetForm(ctx).(*auth.NewWikiForm) 620 + form := web.GetForm(ctx).(*forms.NewWikiForm) 621 621 ctx.Data["Title"] = ctx.Tr("repo.wiki.new_page") 622 622 ctx.Data["PageIsWiki"] = true 623 623 ctx.Data["RequireSimpleMDE"] = true
+4 -4
routers/repo/wiki_test.go
··· 10 10 "testing" 11 11 12 12 "code.gitea.io/gitea/models" 13 - auth "code.gitea.io/gitea/modules/forms" 14 13 "code.gitea.io/gitea/modules/git" 15 14 "code.gitea.io/gitea/modules/test" 16 15 "code.gitea.io/gitea/modules/web" 16 + "code.gitea.io/gitea/services/forms" 17 17 wiki_service "code.gitea.io/gitea/services/wiki" 18 18 19 19 "github.com/stretchr/testify/assert" ··· 115 115 ctx := test.MockContext(t, "user2/repo1/wiki/_new") 116 116 test.LoadUser(t, ctx, 2) 117 117 test.LoadRepo(t, ctx, 1) 118 - web.SetForm(ctx, &auth.NewWikiForm{ 118 + web.SetForm(ctx, &forms.NewWikiForm{ 119 119 Title: title, 120 120 Content: content, 121 121 Message: message, ··· 133 133 ctx := test.MockContext(t, "user2/repo1/wiki/_new") 134 134 test.LoadUser(t, ctx, 2) 135 135 test.LoadRepo(t, ctx, 1) 136 - web.SetForm(ctx, &auth.NewWikiForm{ 136 + web.SetForm(ctx, &forms.NewWikiForm{ 137 137 Title: "_edit", 138 138 Content: content, 139 139 Message: message, ··· 167 167 ctx.SetParams(":page", "Home") 168 168 test.LoadUser(t, ctx, 2) 169 169 test.LoadRepo(t, ctx, 1) 170 - web.SetForm(ctx, &auth.NewWikiForm{ 170 + web.SetForm(ctx, &forms.NewWikiForm{ 171 171 Title: title, 172 172 Content: content, 173 173 Message: message,
+1 -1
routers/routes/install.go
··· 9 9 "net/http" 10 10 "path" 11 11 12 - "code.gitea.io/gitea/modules/forms" 13 12 "code.gitea.io/gitea/modules/log" 14 13 "code.gitea.io/gitea/modules/public" 15 14 "code.gitea.io/gitea/modules/setting" ··· 17 16 "code.gitea.io/gitea/modules/web" 18 17 "code.gitea.io/gitea/modules/web/middleware" 19 18 "code.gitea.io/gitea/routers" 19 + "code.gitea.io/gitea/services/forms" 20 20 21 21 "gitea.com/go-chi/session" 22 22 )
+134 -134
routers/routes/web.go
··· 15 15 16 16 "code.gitea.io/gitea/models" 17 17 "code.gitea.io/gitea/modules/context" 18 - auth "code.gitea.io/gitea/modules/forms" 19 18 "code.gitea.io/gitea/modules/httpcache" 20 19 "code.gitea.io/gitea/modules/lfs" 21 20 "code.gitea.io/gitea/modules/log" ··· 38 37 "code.gitea.io/gitea/routers/repo" 39 38 "code.gitea.io/gitea/routers/user" 40 39 userSetting "code.gitea.io/gitea/routers/user/setting" 40 + "code.gitea.io/gitea/services/forms" 41 41 "code.gitea.io/gitea/services/mailer" 42 42 43 43 // to registers all internal adapters ··· 361 361 // ***** START: User ***** 362 362 m.Group("/user", func() { 363 363 m.Get("/login", user.SignIn) 364 - m.Post("/login", bindIgnErr(auth.SignInForm{}), user.SignInPost) 364 + m.Post("/login", bindIgnErr(forms.SignInForm{}), user.SignInPost) 365 365 m.Group("", func() { 366 366 m.Combo("/login/openid"). 367 367 Get(user.SignInOpenID). 368 - Post(bindIgnErr(auth.SignInOpenIDForm{}), user.SignInOpenIDPost) 368 + Post(bindIgnErr(forms.SignInOpenIDForm{}), user.SignInOpenIDPost) 369 369 }, openIDSignInEnabled) 370 370 m.Group("/openid", func() { 371 371 m.Combo("/connect"). 372 372 Get(user.ConnectOpenID). 373 - Post(bindIgnErr(auth.ConnectOpenIDForm{}), user.ConnectOpenIDPost) 373 + Post(bindIgnErr(forms.ConnectOpenIDForm{}), user.ConnectOpenIDPost) 374 374 m.Group("/register", func() { 375 375 m.Combo(""). 376 376 Get(user.RegisterOpenID, openIDSignUpEnabled). 377 - Post(bindIgnErr(auth.SignUpOpenIDForm{}), user.RegisterOpenIDPost) 377 + Post(bindIgnErr(forms.SignUpOpenIDForm{}), user.RegisterOpenIDPost) 378 378 }, openIDSignUpEnabled) 379 379 }, openIDSignInEnabled) 380 380 m.Get("/sign_up", user.SignUp) 381 - m.Post("/sign_up", bindIgnErr(auth.RegisterForm{}), user.SignUpPost) 381 + m.Post("/sign_up", bindIgnErr(forms.RegisterForm{}), user.SignUpPost) 382 382 m.Group("/oauth2", func() { 383 383 m.Get("/{provider}", user.SignInOAuth) 384 384 m.Get("/{provider}/callback", user.SignInOAuthCallback) 385 385 }) 386 386 m.Get("/link_account", user.LinkAccount) 387 - m.Post("/link_account_signin", bindIgnErr(auth.SignInForm{}), user.LinkAccountPostSignIn) 388 - m.Post("/link_account_signup", bindIgnErr(auth.RegisterForm{}), user.LinkAccountPostRegister) 387 + m.Post("/link_account_signin", bindIgnErr(forms.SignInForm{}), user.LinkAccountPostSignIn) 388 + m.Post("/link_account_signup", bindIgnErr(forms.RegisterForm{}), user.LinkAccountPostRegister) 389 389 m.Group("/two_factor", func() { 390 390 m.Get("", user.TwoFactor) 391 - m.Post("", bindIgnErr(auth.TwoFactorAuthForm{}), user.TwoFactorPost) 391 + m.Post("", bindIgnErr(forms.TwoFactorAuthForm{}), user.TwoFactorPost) 392 392 m.Get("/scratch", user.TwoFactorScratch) 393 - m.Post("/scratch", bindIgnErr(auth.TwoFactorScratchAuthForm{}), user.TwoFactorScratchPost) 393 + m.Post("/scratch", bindIgnErr(forms.TwoFactorScratchAuthForm{}), user.TwoFactorScratchPost) 394 394 }) 395 395 m.Group("/u2f", func() { 396 396 m.Get("", user.U2F) ··· 403 403 m.Any("/user/events", events.Events) 404 404 405 405 m.Group("/login/oauth", func() { 406 - m.Get("/authorize", bindIgnErr(auth.AuthorizationForm{}), user.AuthorizeOAuth) 407 - m.Post("/grant", bindIgnErr(auth.GrantApplicationForm{}), user.GrantApplicationOAuth) 406 + m.Get("/authorize", bindIgnErr(forms.AuthorizationForm{}), user.AuthorizeOAuth) 407 + m.Post("/grant", bindIgnErr(forms.GrantApplicationForm{}), user.GrantApplicationOAuth) 408 408 // TODO manage redirection 409 - m.Post("/authorize", bindIgnErr(auth.AuthorizationForm{}), user.AuthorizeOAuth) 409 + m.Post("/authorize", bindIgnErr(forms.AuthorizationForm{}), user.AuthorizeOAuth) 410 410 }, ignSignInAndCsrf, reqSignIn) 411 411 if setting.CORSConfig.Enabled { 412 412 m.Post("/login/oauth/access_token", cors.Handler(cors.Options{ ··· 416 416 AllowedMethods: setting.CORSConfig.Methods, 417 417 AllowCredentials: setting.CORSConfig.AllowCredentials, 418 418 MaxAge: int(setting.CORSConfig.MaxAge.Seconds()), 419 - }), bindIgnErr(auth.AccessTokenForm{}), ignSignInAndCsrf, user.AccessTokenOAuth) 419 + }), bindIgnErr(forms.AccessTokenForm{}), ignSignInAndCsrf, user.AccessTokenOAuth) 420 420 } else { 421 - m.Post("/login/oauth/access_token", bindIgnErr(auth.AccessTokenForm{}), ignSignInAndCsrf, user.AccessTokenOAuth) 421 + m.Post("/login/oauth/access_token", bindIgnErr(forms.AccessTokenForm{}), ignSignInAndCsrf, user.AccessTokenOAuth) 422 422 } 423 423 424 424 m.Group("/user/settings", func() { 425 425 m.Get("", userSetting.Profile) 426 - m.Post("", bindIgnErr(auth.UpdateProfileForm{}), userSetting.ProfilePost) 426 + m.Post("", bindIgnErr(forms.UpdateProfileForm{}), userSetting.ProfilePost) 427 427 m.Get("/change_password", user.MustChangePassword) 428 - m.Post("/change_password", bindIgnErr(auth.MustChangePasswordForm{}), user.MustChangePasswordPost) 429 - m.Post("/avatar", bindIgnErr(auth.AvatarForm{}), userSetting.AvatarPost) 428 + m.Post("/change_password", bindIgnErr(forms.MustChangePasswordForm{}), user.MustChangePasswordPost) 429 + m.Post("/avatar", bindIgnErr(forms.AvatarForm{}), userSetting.AvatarPost) 430 430 m.Post("/avatar/delete", userSetting.DeleteAvatar) 431 431 m.Group("/account", func() { 432 - m.Combo("").Get(userSetting.Account).Post(bindIgnErr(auth.ChangePasswordForm{}), userSetting.AccountPost) 433 - m.Post("/email", bindIgnErr(auth.AddEmailForm{}), userSetting.EmailPost) 432 + m.Combo("").Get(userSetting.Account).Post(bindIgnErr(forms.ChangePasswordForm{}), userSetting.AccountPost) 433 + m.Post("/email", bindIgnErr(forms.AddEmailForm{}), userSetting.EmailPost) 434 434 m.Post("/email/delete", userSetting.DeleteEmail) 435 435 m.Post("/delete", userSetting.DeleteAccount) 436 - m.Post("/theme", bindIgnErr(auth.UpdateThemeForm{}), userSetting.UpdateUIThemePost) 436 + m.Post("/theme", bindIgnErr(forms.UpdateThemeForm{}), userSetting.UpdateUIThemePost) 437 437 }) 438 438 m.Group("/security", func() { 439 439 m.Get("", userSetting.Security) ··· 441 441 m.Post("/regenerate_scratch", userSetting.RegenerateScratchTwoFactor) 442 442 m.Post("/disable", userSetting.DisableTwoFactor) 443 443 m.Get("/enroll", userSetting.EnrollTwoFactor) 444 - m.Post("/enroll", bindIgnErr(auth.TwoFactorAuthForm{}), userSetting.EnrollTwoFactorPost) 444 + m.Post("/enroll", bindIgnErr(forms.TwoFactorAuthForm{}), userSetting.EnrollTwoFactorPost) 445 445 }) 446 446 m.Group("/u2f", func() { 447 - m.Post("/request_register", bindIgnErr(auth.U2FRegistrationForm{}), userSetting.U2FRegister) 447 + m.Post("/request_register", bindIgnErr(forms.U2FRegistrationForm{}), userSetting.U2FRegister) 448 448 m.Post("/register", bindIgnErr(u2f.RegisterResponse{}), userSetting.U2FRegisterPost) 449 - m.Post("/delete", bindIgnErr(auth.U2FDeleteForm{}), userSetting.U2FDelete) 449 + m.Post("/delete", bindIgnErr(forms.U2FDeleteForm{}), userSetting.U2FDelete) 450 450 }) 451 451 m.Group("/openid", func() { 452 - m.Post("", bindIgnErr(auth.AddOpenIDForm{}), userSetting.OpenIDPost) 452 + m.Post("", bindIgnErr(forms.AddOpenIDForm{}), userSetting.OpenIDPost) 453 453 m.Post("/delete", userSetting.DeleteOpenID) 454 454 m.Post("/toggle_visibility", userSetting.ToggleOpenIDVisibility) 455 455 }, openIDSignInEnabled) ··· 457 457 }) 458 458 m.Group("/applications/oauth2", func() { 459 459 m.Get("/{id}", userSetting.OAuth2ApplicationShow) 460 - m.Post("/{id}", bindIgnErr(auth.EditOAuth2ApplicationForm{}), userSetting.OAuthApplicationsEdit) 460 + m.Post("/{id}", bindIgnErr(forms.EditOAuth2ApplicationForm{}), userSetting.OAuthApplicationsEdit) 461 461 m.Post("/{id}/regenerate_secret", userSetting.OAuthApplicationsRegenerateSecret) 462 - m.Post("", bindIgnErr(auth.EditOAuth2ApplicationForm{}), userSetting.OAuthApplicationsPost) 462 + m.Post("", bindIgnErr(forms.EditOAuth2ApplicationForm{}), userSetting.OAuthApplicationsPost) 463 463 m.Post("/delete", userSetting.DeleteOAuth2Application) 464 464 m.Post("/revoke", userSetting.RevokeOAuth2Grant) 465 465 }) 466 466 m.Combo("/applications").Get(userSetting.Applications). 467 - Post(bindIgnErr(auth.NewAccessTokenForm{}), userSetting.ApplicationsPost) 467 + Post(bindIgnErr(forms.NewAccessTokenForm{}), userSetting.ApplicationsPost) 468 468 m.Post("/applications/delete", userSetting.DeleteApplication) 469 469 m.Combo("/keys").Get(userSetting.Keys). 470 - Post(bindIgnErr(auth.AddKeyForm{}), userSetting.KeysPost) 470 + Post(bindIgnErr(forms.AddKeyForm{}), userSetting.KeysPost) 471 471 m.Post("/keys/delete", userSetting.DeleteKey) 472 472 m.Get("/organization", userSetting.Organization) 473 473 m.Get("/repos", userSetting.Repos) ··· 499 499 // ***** START: Admin ***** 500 500 m.Group("/admin", func() { 501 501 m.Get("", adminReq, admin.Dashboard) 502 - m.Post("", adminReq, bindIgnErr(auth.AdminDashboardForm{}), admin.DashboardPost) 502 + m.Post("", adminReq, bindIgnErr(forms.AdminDashboardForm{}), admin.DashboardPost) 503 503 m.Get("/config", admin.Config) 504 504 m.Post("/config/test_mail", admin.SendTestMail) 505 505 m.Group("/monitor", func() { ··· 516 516 517 517 m.Group("/users", func() { 518 518 m.Get("", admin.Users) 519 - m.Combo("/new").Get(admin.NewUser).Post(bindIgnErr(auth.AdminCreateUserForm{}), admin.NewUserPost) 520 - m.Combo("/{userid}").Get(admin.EditUser).Post(bindIgnErr(auth.AdminEditUserForm{}), admin.EditUserPost) 519 + m.Combo("/new").Get(admin.NewUser).Post(bindIgnErr(forms.AdminCreateUserForm{}), admin.NewUserPost) 520 + m.Combo("/{userid}").Get(admin.EditUser).Post(bindIgnErr(forms.AdminEditUserForm{}), admin.EditUserPost) 521 521 m.Post("/{userid}/delete", admin.DeleteUser) 522 522 }) 523 523 ··· 540 540 m.Get("", admin.DefaultOrSystemWebhooks) 541 541 m.Post("/delete", admin.DeleteDefaultOrSystemWebhook) 542 542 m.Get("/{id}", repo.WebHooksEdit) 543 - m.Post("/gitea/{id}", bindIgnErr(auth.NewWebhookForm{}), repo.WebHooksEditPost) 544 - m.Post("/gogs/{id}", bindIgnErr(auth.NewGogshookForm{}), repo.GogsHooksEditPost) 545 - m.Post("/slack/{id}", bindIgnErr(auth.NewSlackHookForm{}), repo.SlackHooksEditPost) 546 - m.Post("/discord/{id}", bindIgnErr(auth.NewDiscordHookForm{}), repo.DiscordHooksEditPost) 547 - m.Post("/dingtalk/{id}", bindIgnErr(auth.NewDingtalkHookForm{}), repo.DingtalkHooksEditPost) 548 - m.Post("/telegram/{id}", bindIgnErr(auth.NewTelegramHookForm{}), repo.TelegramHooksEditPost) 549 - m.Post("/matrix/{id}", bindIgnErr(auth.NewMatrixHookForm{}), repo.MatrixHooksEditPost) 550 - m.Post("/msteams/{id}", bindIgnErr(auth.NewMSTeamsHookForm{}), repo.MSTeamsHooksEditPost) 551 - m.Post("/feishu/{id}", bindIgnErr(auth.NewFeishuHookForm{}), repo.FeishuHooksEditPost) 543 + m.Post("/gitea/{id}", bindIgnErr(forms.NewWebhookForm{}), repo.WebHooksEditPost) 544 + m.Post("/gogs/{id}", bindIgnErr(forms.NewGogshookForm{}), repo.GogsHooksEditPost) 545 + m.Post("/slack/{id}", bindIgnErr(forms.NewSlackHookForm{}), repo.SlackHooksEditPost) 546 + m.Post("/discord/{id}", bindIgnErr(forms.NewDiscordHookForm{}), repo.DiscordHooksEditPost) 547 + m.Post("/dingtalk/{id}", bindIgnErr(forms.NewDingtalkHookForm{}), repo.DingtalkHooksEditPost) 548 + m.Post("/telegram/{id}", bindIgnErr(forms.NewTelegramHookForm{}), repo.TelegramHooksEditPost) 549 + m.Post("/matrix/{id}", bindIgnErr(forms.NewMatrixHookForm{}), repo.MatrixHooksEditPost) 550 + m.Post("/msteams/{id}", bindIgnErr(forms.NewMSTeamsHookForm{}), repo.MSTeamsHooksEditPost) 551 + m.Post("/feishu/{id}", bindIgnErr(forms.NewFeishuHookForm{}), repo.FeishuHooksEditPost) 552 552 }, webhooksEnabled) 553 553 554 554 m.Group("/{configType:default-hooks|system-hooks}", func() { 555 555 m.Get("/{type}/new", repo.WebhooksNew) 556 - m.Post("/gitea/new", bindIgnErr(auth.NewWebhookForm{}), repo.GiteaHooksNewPost) 557 - m.Post("/gogs/new", bindIgnErr(auth.NewGogshookForm{}), repo.GogsHooksNewPost) 558 - m.Post("/slack/new", bindIgnErr(auth.NewSlackHookForm{}), repo.SlackHooksNewPost) 559 - m.Post("/discord/new", bindIgnErr(auth.NewDiscordHookForm{}), repo.DiscordHooksNewPost) 560 - m.Post("/dingtalk/new", bindIgnErr(auth.NewDingtalkHookForm{}), repo.DingtalkHooksNewPost) 561 - m.Post("/telegram/new", bindIgnErr(auth.NewTelegramHookForm{}), repo.TelegramHooksNewPost) 562 - m.Post("/matrix/new", bindIgnErr(auth.NewMatrixHookForm{}), repo.MatrixHooksNewPost) 563 - m.Post("/msteams/new", bindIgnErr(auth.NewMSTeamsHookForm{}), repo.MSTeamsHooksNewPost) 564 - m.Post("/feishu/new", bindIgnErr(auth.NewFeishuHookForm{}), repo.FeishuHooksNewPost) 556 + m.Post("/gitea/new", bindIgnErr(forms.NewWebhookForm{}), repo.GiteaHooksNewPost) 557 + m.Post("/gogs/new", bindIgnErr(forms.NewGogshookForm{}), repo.GogsHooksNewPost) 558 + m.Post("/slack/new", bindIgnErr(forms.NewSlackHookForm{}), repo.SlackHooksNewPost) 559 + m.Post("/discord/new", bindIgnErr(forms.NewDiscordHookForm{}), repo.DiscordHooksNewPost) 560 + m.Post("/dingtalk/new", bindIgnErr(forms.NewDingtalkHookForm{}), repo.DingtalkHooksNewPost) 561 + m.Post("/telegram/new", bindIgnErr(forms.NewTelegramHookForm{}), repo.TelegramHooksNewPost) 562 + m.Post("/matrix/new", bindIgnErr(forms.NewMatrixHookForm{}), repo.MatrixHooksNewPost) 563 + m.Post("/msteams/new", bindIgnErr(forms.NewMSTeamsHookForm{}), repo.MSTeamsHooksNewPost) 564 + m.Post("/feishu/new", bindIgnErr(forms.NewFeishuHookForm{}), repo.FeishuHooksNewPost) 565 565 }) 566 566 567 567 m.Group("/auths", func() { 568 568 m.Get("", admin.Authentications) 569 - m.Combo("/new").Get(admin.NewAuthSource).Post(bindIgnErr(auth.AuthenticationForm{}), admin.NewAuthSourcePost) 569 + m.Combo("/new").Get(admin.NewAuthSource).Post(bindIgnErr(forms.AuthenticationForm{}), admin.NewAuthSourcePost) 570 570 m.Combo("/{authid}").Get(admin.EditAuthSource). 571 - Post(bindIgnErr(auth.AuthenticationForm{}), admin.EditAuthSourcePost) 571 + Post(bindIgnErr(forms.AuthenticationForm{}), admin.EditAuthSourcePost) 572 572 m.Post("/{authid}/delete", admin.DeleteAuthSource) 573 573 }) 574 574 ··· 611 611 m.Group("/org", func() { 612 612 m.Group("", func() { 613 613 m.Get("/create", org.Create) 614 - m.Post("/create", bindIgnErr(auth.CreateOrgForm{}), org.CreatePost) 614 + m.Post("/create", bindIgnErr(forms.CreateOrgForm{}), org.CreatePost) 615 615 }) 616 616 617 617 m.Group("/{org}", func() { ··· 637 637 638 638 m.Group("/{org}", func() { 639 639 m.Get("/teams/new", org.NewTeam) 640 - m.Post("/teams/new", bindIgnErr(auth.CreateTeamForm{}), org.NewTeamPost) 640 + m.Post("/teams/new", bindIgnErr(forms.CreateTeamForm{}), org.NewTeamPost) 641 641 m.Get("/teams/{team}/edit", org.EditTeam) 642 - m.Post("/teams/{team}/edit", bindIgnErr(auth.CreateTeamForm{}), org.EditTeamPost) 642 + m.Post("/teams/{team}/edit", bindIgnErr(forms.CreateTeamForm{}), org.EditTeamPost) 643 643 m.Post("/teams/{team}/delete", org.DeleteTeam) 644 644 645 645 m.Group("/settings", func() { 646 646 m.Combo("").Get(org.Settings). 647 - Post(bindIgnErr(auth.UpdateOrgSettingForm{}), org.SettingsPost) 648 - m.Post("/avatar", bindIgnErr(auth.AvatarForm{}), org.SettingsAvatar) 647 + Post(bindIgnErr(forms.UpdateOrgSettingForm{}), org.SettingsPost) 648 + m.Post("/avatar", bindIgnErr(forms.AvatarForm{}), org.SettingsAvatar) 649 649 m.Post("/avatar/delete", org.SettingsDeleteAvatar) 650 650 651 651 m.Group("/hooks", func() { 652 652 m.Get("", org.Webhooks) 653 653 m.Post("/delete", org.DeleteWebhook) 654 654 m.Get("/{type}/new", repo.WebhooksNew) 655 - m.Post("/gitea/new", bindIgnErr(auth.NewWebhookForm{}), repo.GiteaHooksNewPost) 656 - m.Post("/gogs/new", bindIgnErr(auth.NewGogshookForm{}), repo.GogsHooksNewPost) 657 - m.Post("/slack/new", bindIgnErr(auth.NewSlackHookForm{}), repo.SlackHooksNewPost) 658 - m.Post("/discord/new", bindIgnErr(auth.NewDiscordHookForm{}), repo.DiscordHooksNewPost) 659 - m.Post("/dingtalk/new", bindIgnErr(auth.NewDingtalkHookForm{}), repo.DingtalkHooksNewPost) 660 - m.Post("/telegram/new", bindIgnErr(auth.NewTelegramHookForm{}), repo.TelegramHooksNewPost) 661 - m.Post("/matrix/new", bindIgnErr(auth.NewMatrixHookForm{}), repo.MatrixHooksNewPost) 662 - m.Post("/msteams/new", bindIgnErr(auth.NewMSTeamsHookForm{}), repo.MSTeamsHooksNewPost) 663 - m.Post("/feishu/new", bindIgnErr(auth.NewFeishuHookForm{}), repo.FeishuHooksNewPost) 655 + m.Post("/gitea/new", bindIgnErr(forms.NewWebhookForm{}), repo.GiteaHooksNewPost) 656 + m.Post("/gogs/new", bindIgnErr(forms.NewGogshookForm{}), repo.GogsHooksNewPost) 657 + m.Post("/slack/new", bindIgnErr(forms.NewSlackHookForm{}), repo.SlackHooksNewPost) 658 + m.Post("/discord/new", bindIgnErr(forms.NewDiscordHookForm{}), repo.DiscordHooksNewPost) 659 + m.Post("/dingtalk/new", bindIgnErr(forms.NewDingtalkHookForm{}), repo.DingtalkHooksNewPost) 660 + m.Post("/telegram/new", bindIgnErr(forms.NewTelegramHookForm{}), repo.TelegramHooksNewPost) 661 + m.Post("/matrix/new", bindIgnErr(forms.NewMatrixHookForm{}), repo.MatrixHooksNewPost) 662 + m.Post("/msteams/new", bindIgnErr(forms.NewMSTeamsHookForm{}), repo.MSTeamsHooksNewPost) 663 + m.Post("/feishu/new", bindIgnErr(forms.NewFeishuHookForm{}), repo.FeishuHooksNewPost) 664 664 m.Get("/{id}", repo.WebHooksEdit) 665 - m.Post("/gitea/{id}", bindIgnErr(auth.NewWebhookForm{}), repo.WebHooksEditPost) 666 - m.Post("/gogs/{id}", bindIgnErr(auth.NewGogshookForm{}), repo.GogsHooksEditPost) 667 - m.Post("/slack/{id}", bindIgnErr(auth.NewSlackHookForm{}), repo.SlackHooksEditPost) 668 - m.Post("/discord/{id}", bindIgnErr(auth.NewDiscordHookForm{}), repo.DiscordHooksEditPost) 669 - m.Post("/dingtalk/{id}", bindIgnErr(auth.NewDingtalkHookForm{}), repo.DingtalkHooksEditPost) 670 - m.Post("/telegram/{id}", bindIgnErr(auth.NewTelegramHookForm{}), repo.TelegramHooksEditPost) 671 - m.Post("/matrix/{id}", bindIgnErr(auth.NewMatrixHookForm{}), repo.MatrixHooksEditPost) 672 - m.Post("/msteams/{id}", bindIgnErr(auth.NewMSTeamsHookForm{}), repo.MSTeamsHooksEditPost) 673 - m.Post("/feishu/{id}", bindIgnErr(auth.NewFeishuHookForm{}), repo.FeishuHooksEditPost) 665 + m.Post("/gitea/{id}", bindIgnErr(forms.NewWebhookForm{}), repo.WebHooksEditPost) 666 + m.Post("/gogs/{id}", bindIgnErr(forms.NewGogshookForm{}), repo.GogsHooksEditPost) 667 + m.Post("/slack/{id}", bindIgnErr(forms.NewSlackHookForm{}), repo.SlackHooksEditPost) 668 + m.Post("/discord/{id}", bindIgnErr(forms.NewDiscordHookForm{}), repo.DiscordHooksEditPost) 669 + m.Post("/dingtalk/{id}", bindIgnErr(forms.NewDingtalkHookForm{}), repo.DingtalkHooksEditPost) 670 + m.Post("/telegram/{id}", bindIgnErr(forms.NewTelegramHookForm{}), repo.TelegramHooksEditPost) 671 + m.Post("/matrix/{id}", bindIgnErr(forms.NewMatrixHookForm{}), repo.MatrixHooksEditPost) 672 + m.Post("/msteams/{id}", bindIgnErr(forms.NewMSTeamsHookForm{}), repo.MSTeamsHooksEditPost) 673 + m.Post("/feishu/{id}", bindIgnErr(forms.NewFeishuHookForm{}), repo.FeishuHooksEditPost) 674 674 }, webhooksEnabled) 675 675 676 676 m.Group("/labels", func() { 677 677 m.Get("", org.RetrieveLabels, org.Labels) 678 - m.Post("/new", bindIgnErr(auth.CreateLabelForm{}), org.NewLabel) 679 - m.Post("/edit", bindIgnErr(auth.CreateLabelForm{}), org.UpdateLabel) 678 + m.Post("/new", bindIgnErr(forms.CreateLabelForm{}), org.NewLabel) 679 + m.Post("/edit", bindIgnErr(forms.CreateLabelForm{}), org.UpdateLabel) 680 680 m.Post("/delete", org.DeleteLabel) 681 - m.Post("/initialize", bindIgnErr(auth.InitializeLabelsForm{}), org.InitializeLabels) 681 + m.Post("/initialize", bindIgnErr(forms.InitializeLabelsForm{}), org.InitializeLabels) 682 682 }) 683 683 684 684 m.Route("/delete", "GET,POST", org.SettingsDelete) ··· 690 690 // ***** START: Repository ***** 691 691 m.Group("/repo", func() { 692 692 m.Get("/create", repo.Create) 693 - m.Post("/create", bindIgnErr(auth.CreateRepoForm{}), repo.CreatePost) 693 + m.Post("/create", bindIgnErr(forms.CreateRepoForm{}), repo.CreatePost) 694 694 m.Get("/migrate", repo.Migrate) 695 - m.Post("/migrate", bindIgnErr(auth.MigrateRepoForm{}), repo.MigratePost) 695 + m.Post("/migrate", bindIgnErr(forms.MigrateRepoForm{}), repo.MigratePost) 696 696 m.Group("/fork", func() { 697 697 m.Combo("/{repoid}").Get(repo.Fork). 698 - Post(bindIgnErr(auth.CreateRepoForm{}), repo.ForkPost) 698 + Post(bindIgnErr(forms.CreateRepoForm{}), repo.ForkPost) 699 699 }, context.RepoIDAssignment(), context.UnitTypes(), reqRepoCodeReader) 700 700 }, reqSignIn) 701 701 ··· 705 705 m.Group("/{username}/{reponame}", func() { 706 706 m.Group("/settings", func() { 707 707 m.Combo("").Get(repo.Settings). 708 - Post(bindIgnErr(auth.RepoSettingForm{}), repo.SettingsPost) 709 - m.Post("/avatar", bindIgnErr(auth.AvatarForm{}), repo.SettingsAvatar) 708 + Post(bindIgnErr(forms.RepoSettingForm{}), repo.SettingsPost) 709 + m.Post("/avatar", bindIgnErr(forms.AvatarForm{}), repo.SettingsAvatar) 710 710 m.Post("/avatar/delete", repo.SettingsDeleteAvatar) 711 711 712 712 m.Group("/collaboration", func() { ··· 721 721 m.Group("/branches", func() { 722 722 m.Combo("").Get(repo.ProtectedBranch).Post(repo.ProtectedBranchPost) 723 723 m.Combo("/*").Get(repo.SettingsProtectedBranch). 724 - Post(bindIgnErr(auth.ProtectBranchForm{}), context.RepoMustNotBeArchived(), repo.SettingsProtectedBranchPost) 724 + Post(bindIgnErr(forms.ProtectBranchForm{}), context.RepoMustNotBeArchived(), repo.SettingsProtectedBranchPost) 725 725 }, repo.MustBeNotEmpty) 726 726 727 727 m.Group("/hooks/git", func() { ··· 734 734 m.Get("", repo.Webhooks) 735 735 m.Post("/delete", repo.DeleteWebhook) 736 736 m.Get("/{type}/new", repo.WebhooksNew) 737 - m.Post("/gitea/new", bindIgnErr(auth.NewWebhookForm{}), repo.GiteaHooksNewPost) 738 - m.Post("/gogs/new", bindIgnErr(auth.NewGogshookForm{}), repo.GogsHooksNewPost) 739 - m.Post("/slack/new", bindIgnErr(auth.NewSlackHookForm{}), repo.SlackHooksNewPost) 740 - m.Post("/discord/new", bindIgnErr(auth.NewDiscordHookForm{}), repo.DiscordHooksNewPost) 741 - m.Post("/dingtalk/new", bindIgnErr(auth.NewDingtalkHookForm{}), repo.DingtalkHooksNewPost) 742 - m.Post("/telegram/new", bindIgnErr(auth.NewTelegramHookForm{}), repo.TelegramHooksNewPost) 743 - m.Post("/matrix/new", bindIgnErr(auth.NewMatrixHookForm{}), repo.MatrixHooksNewPost) 744 - m.Post("/msteams/new", bindIgnErr(auth.NewMSTeamsHookForm{}), repo.MSTeamsHooksNewPost) 745 - m.Post("/feishu/new", bindIgnErr(auth.NewFeishuHookForm{}), repo.FeishuHooksNewPost) 737 + m.Post("/gitea/new", bindIgnErr(forms.NewWebhookForm{}), repo.GiteaHooksNewPost) 738 + m.Post("/gogs/new", bindIgnErr(forms.NewGogshookForm{}), repo.GogsHooksNewPost) 739 + m.Post("/slack/new", bindIgnErr(forms.NewSlackHookForm{}), repo.SlackHooksNewPost) 740 + m.Post("/discord/new", bindIgnErr(forms.NewDiscordHookForm{}), repo.DiscordHooksNewPost) 741 + m.Post("/dingtalk/new", bindIgnErr(forms.NewDingtalkHookForm{}), repo.DingtalkHooksNewPost) 742 + m.Post("/telegram/new", bindIgnErr(forms.NewTelegramHookForm{}), repo.TelegramHooksNewPost) 743 + m.Post("/matrix/new", bindIgnErr(forms.NewMatrixHookForm{}), repo.MatrixHooksNewPost) 744 + m.Post("/msteams/new", bindIgnErr(forms.NewMSTeamsHookForm{}), repo.MSTeamsHooksNewPost) 745 + m.Post("/feishu/new", bindIgnErr(forms.NewFeishuHookForm{}), repo.FeishuHooksNewPost) 746 746 m.Get("/{id}", repo.WebHooksEdit) 747 747 m.Post("/{id}/test", repo.TestWebhook) 748 - m.Post("/gitea/{id}", bindIgnErr(auth.NewWebhookForm{}), repo.WebHooksEditPost) 749 - m.Post("/gogs/{id}", bindIgnErr(auth.NewGogshookForm{}), repo.GogsHooksEditPost) 750 - m.Post("/slack/{id}", bindIgnErr(auth.NewSlackHookForm{}), repo.SlackHooksEditPost) 751 - m.Post("/discord/{id}", bindIgnErr(auth.NewDiscordHookForm{}), repo.DiscordHooksEditPost) 752 - m.Post("/dingtalk/{id}", bindIgnErr(auth.NewDingtalkHookForm{}), repo.DingtalkHooksEditPost) 753 - m.Post("/telegram/{id}", bindIgnErr(auth.NewTelegramHookForm{}), repo.TelegramHooksEditPost) 754 - m.Post("/matrix/{id}", bindIgnErr(auth.NewMatrixHookForm{}), repo.MatrixHooksEditPost) 755 - m.Post("/msteams/{id}", bindIgnErr(auth.NewMSTeamsHookForm{}), repo.MSTeamsHooksEditPost) 756 - m.Post("/feishu/{id}", bindIgnErr(auth.NewFeishuHookForm{}), repo.FeishuHooksEditPost) 748 + m.Post("/gitea/{id}", bindIgnErr(forms.NewWebhookForm{}), repo.WebHooksEditPost) 749 + m.Post("/gogs/{id}", bindIgnErr(forms.NewGogshookForm{}), repo.GogsHooksEditPost) 750 + m.Post("/slack/{id}", bindIgnErr(forms.NewSlackHookForm{}), repo.SlackHooksEditPost) 751 + m.Post("/discord/{id}", bindIgnErr(forms.NewDiscordHookForm{}), repo.DiscordHooksEditPost) 752 + m.Post("/dingtalk/{id}", bindIgnErr(forms.NewDingtalkHookForm{}), repo.DingtalkHooksEditPost) 753 + m.Post("/telegram/{id}", bindIgnErr(forms.NewTelegramHookForm{}), repo.TelegramHooksEditPost) 754 + m.Post("/matrix/{id}", bindIgnErr(forms.NewMatrixHookForm{}), repo.MatrixHooksEditPost) 755 + m.Post("/msteams/{id}", bindIgnErr(forms.NewMSTeamsHookForm{}), repo.MSTeamsHooksEditPost) 756 + m.Post("/feishu/{id}", bindIgnErr(forms.NewFeishuHookForm{}), repo.FeishuHooksEditPost) 757 757 }, webhooksEnabled) 758 758 759 759 m.Group("/keys", func() { 760 760 m.Combo("").Get(repo.DeployKeys). 761 - Post(bindIgnErr(auth.AddKeyForm{}), repo.DeployKeysPost) 761 + Post(bindIgnErr(forms.AddKeyForm{}), repo.DeployKeysPost) 762 762 m.Post("/delete", repo.DeleteDeployKey) 763 763 }) 764 764 ··· 791 791 }, reqRepoIssuesOrPullsReader, context.RepoRef()) 792 792 m.Combo("/compare/*", repo.MustBeNotEmpty, reqRepoCodeReader, repo.SetEditorconfigIfExists). 793 793 Get(ignSignIn, repo.SetDiffViewStyle, repo.SetWhitespaceBehavior, repo.CompareDiff). 794 - Post(reqSignIn, context.RepoMustNotBeArchived(), reqRepoPullsReader, repo.MustAllowPulls, bindIgnErr(auth.CreateIssueForm{}), repo.SetWhitespaceBehavior, repo.CompareAndPullRequestPost) 794 + Post(reqSignIn, context.RepoMustNotBeArchived(), reqRepoPullsReader, repo.MustAllowPulls, bindIgnErr(forms.CreateIssueForm{}), repo.SetWhitespaceBehavior, repo.CompareAndPullRequestPost) 795 795 }, context.RepoAssignment(), context.UnitTypes()) 796 796 797 797 // Grouping for those endpoints that do require authentication ··· 799 799 m.Group("/issues", func() { 800 800 m.Group("/new", func() { 801 801 m.Combo("").Get(context.RepoRef(), repo.NewIssue). 802 - Post(bindIgnErr(auth.CreateIssueForm{}), repo.NewIssuePost) 802 + Post(bindIgnErr(forms.CreateIssueForm{}), repo.NewIssuePost) 803 803 m.Get("/choose", context.RepoRef(), repo.NewIssueChooseTemplate) 804 804 }) 805 805 }, context.RepoMustNotBeArchived(), reqRepoIssueReader) ··· 815 815 m.Post("/add", repo.AddDependency) 816 816 m.Post("/delete", repo.RemoveDependency) 817 817 }) 818 - m.Combo("/comments").Post(repo.MustAllowUserComment, bindIgnErr(auth.CreateCommentForm{}), repo.NewComment) 818 + m.Combo("/comments").Post(repo.MustAllowUserComment, bindIgnErr(forms.CreateCommentForm{}), repo.NewComment) 819 819 m.Group("/times", func() { 820 - m.Post("/add", bindIgnErr(auth.AddTimeManuallyForm{}), repo.AddTimeManually) 820 + m.Post("/add", bindIgnErr(forms.AddTimeManuallyForm{}), repo.AddTimeManually) 821 821 m.Post("/{timeid}/delete", repo.DeleteTime) 822 822 m.Group("/stopwatch", func() { 823 823 m.Post("/toggle", repo.IssueStopwatch) 824 824 m.Post("/cancel", repo.CancelStopwatch) 825 825 }) 826 826 }) 827 - m.Post("/reactions/{action}", bindIgnErr(auth.ReactionForm{}), repo.ChangeIssueReaction) 828 - m.Post("/lock", reqRepoIssueWriter, bindIgnErr(auth.IssueLockForm{}), repo.LockIssue) 827 + m.Post("/reactions/{action}", bindIgnErr(forms.ReactionForm{}), repo.ChangeIssueReaction) 828 + m.Post("/lock", reqRepoIssueWriter, bindIgnErr(forms.IssueLockForm{}), repo.LockIssue) 829 829 m.Post("/unlock", reqRepoIssueWriter, repo.UnlockIssue) 830 830 }, context.RepoMustNotBeArchived()) 831 831 m.Group("/{index}", func() { ··· 838 838 m.Post("/projects", reqRepoIssuesOrPullsWriter, repo.UpdateIssueProject) 839 839 m.Post("/assignee", reqRepoIssuesOrPullsWriter, repo.UpdateIssueAssignee) 840 840 m.Post("/request_review", reqRepoIssuesOrPullsReader, repo.UpdatePullReviewRequest) 841 - m.Post("/dismiss_review", reqRepoAdmin, bindIgnErr(auth.DismissReviewForm{}), repo.DismissReview) 841 + m.Post("/dismiss_review", reqRepoAdmin, bindIgnErr(forms.DismissReviewForm{}), repo.DismissReview) 842 842 m.Post("/status", reqRepoIssuesOrPullsWriter, repo.UpdateIssueStatus) 843 843 m.Post("/resolve_conversation", reqRepoIssuesOrPullsReader, repo.UpdateResolveConversation) 844 844 m.Post("/attachments", repo.UploadIssueAttachment) ··· 847 847 m.Group("/comments/{id}", func() { 848 848 m.Post("", repo.UpdateCommentContent) 849 849 m.Post("/delete", repo.DeleteComment) 850 - m.Post("/reactions/{action}", bindIgnErr(auth.ReactionForm{}), repo.ChangeCommentReaction) 850 + m.Post("/reactions/{action}", bindIgnErr(forms.ReactionForm{}), repo.ChangeCommentReaction) 851 851 }, context.RepoMustNotBeArchived()) 852 852 m.Group("/comments/{id}", func() { 853 853 m.Get("/attachments", repo.GetCommentAttachments) 854 854 }) 855 855 m.Group("/labels", func() { 856 - m.Post("/new", bindIgnErr(auth.CreateLabelForm{}), repo.NewLabel) 857 - m.Post("/edit", bindIgnErr(auth.CreateLabelForm{}), repo.UpdateLabel) 856 + m.Post("/new", bindIgnErr(forms.CreateLabelForm{}), repo.NewLabel) 857 + m.Post("/edit", bindIgnErr(forms.CreateLabelForm{}), repo.UpdateLabel) 858 858 m.Post("/delete", repo.DeleteLabel) 859 - m.Post("/initialize", bindIgnErr(auth.InitializeLabelsForm{}), repo.InitializeLabels) 859 + m.Post("/initialize", bindIgnErr(forms.InitializeLabelsForm{}), repo.InitializeLabels) 860 860 }, context.RepoMustNotBeArchived(), reqRepoIssuesOrPullsWriter, context.RepoRef()) 861 861 m.Group("/milestones", func() { 862 862 m.Combo("/new").Get(repo.NewMilestone). 863 - Post(bindIgnErr(auth.CreateMilestoneForm{}), repo.NewMilestonePost) 863 + Post(bindIgnErr(forms.CreateMilestoneForm{}), repo.NewMilestonePost) 864 864 m.Get("/{id}/edit", repo.EditMilestone) 865 - m.Post("/{id}/edit", bindIgnErr(auth.CreateMilestoneForm{}), repo.EditMilestonePost) 865 + m.Post("/{id}/edit", bindIgnErr(forms.CreateMilestoneForm{}), repo.EditMilestonePost) 866 866 m.Post("/{id}/{action}", repo.ChangeMilestoneStatus) 867 867 m.Post("/delete", repo.DeleteMilestone) 868 868 }, context.RepoMustNotBeArchived(), reqRepoIssuesOrPullsWriter, context.RepoRef()) ··· 873 873 m.Group("", func() { 874 874 m.Group("", func() { 875 875 m.Combo("/_edit/*").Get(repo.EditFile). 876 - Post(bindIgnErr(auth.EditRepoFileForm{}), repo.EditFilePost) 876 + Post(bindIgnErr(forms.EditRepoFileForm{}), repo.EditFilePost) 877 877 m.Combo("/_new/*").Get(repo.NewFile). 878 - Post(bindIgnErr(auth.EditRepoFileForm{}), repo.NewFilePost) 879 - m.Post("/_preview/*", bindIgnErr(auth.EditPreviewDiffForm{}), repo.DiffPreviewPost) 878 + Post(bindIgnErr(forms.EditRepoFileForm{}), repo.NewFilePost) 879 + m.Post("/_preview/*", bindIgnErr(forms.EditPreviewDiffForm{}), repo.DiffPreviewPost) 880 880 m.Combo("/_delete/*").Get(repo.DeleteFile). 881 - Post(bindIgnErr(auth.DeleteRepoFileForm{}), repo.DeleteFilePost) 881 + Post(bindIgnErr(forms.DeleteRepoFileForm{}), repo.DeleteFilePost) 882 882 m.Combo("/_upload/*", repo.MustBeAbleToUpload). 883 883 Get(repo.UploadFile). 884 - Post(bindIgnErr(auth.UploadRepoFileForm{}), repo.UploadFilePost) 884 + Post(bindIgnErr(forms.UploadRepoFileForm{}), repo.UploadFilePost) 885 885 }, context.RepoRefByType(context.RepoRefBranch), repo.MustBeEditable) 886 886 m.Group("", func() { 887 887 m.Post("/upload-file", repo.UploadFileToServer) 888 - m.Post("/upload-remove", bindIgnErr(auth.RemoveUploadFileForm{}), repo.RemoveUploadFileFromServer) 888 + m.Post("/upload-remove", bindIgnErr(forms.RemoveUploadFileForm{}), repo.RemoveUploadFileFromServer) 889 889 }, context.RepoRef(), repo.MustBeEditable, repo.MustBeAbleToUpload) 890 890 }, context.RepoMustNotBeArchived(), reqRepoCodeWriter, repo.MustBeNotEmpty) 891 891 ··· 894 894 m.Post("/branch/*", context.RepoRefByType(context.RepoRefBranch), repo.CreateBranch) 895 895 m.Post("/tag/*", context.RepoRefByType(context.RepoRefTag), repo.CreateBranch) 896 896 m.Post("/commit/*", context.RepoRefByType(context.RepoRefCommit), repo.CreateBranch) 897 - }, bindIgnErr(auth.NewBranchForm{})) 897 + }, bindIgnErr(forms.NewBranchForm{})) 898 898 m.Post("/delete", repo.DeleteBranchPost) 899 899 m.Post("/restore", repo.RestoreBranchPost) 900 900 }, context.RepoMustNotBeArchived(), reqRepoCodeWriter, repo.MustBeNotEmpty) ··· 913 913 }, repo.MustBeNotEmpty, reqRepoReleaseReader, context.RepoRefByType(context.RepoRefTag)) 914 914 m.Group("/releases", func() { 915 915 m.Get("/new", repo.NewRelease) 916 - m.Post("/new", bindIgnErr(auth.NewReleaseForm{}), repo.NewReleasePost) 916 + m.Post("/new", bindIgnErr(forms.NewReleaseForm{}), repo.NewReleasePost) 917 917 m.Post("/delete", repo.DeleteRelease) 918 918 m.Post("/attachments", repo.UploadReleaseAttachment) 919 919 m.Post("/attachments/remove", repo.DeleteAttachment) ··· 922 922 repo.MustBeNotEmpty, context.RepoMustNotBeArchived(), reqRepoCodeWriter, context.RepoRef()) 923 923 m.Group("/releases", func() { 924 924 m.Get("/edit/*", repo.EditRelease) 925 - m.Post("/edit/*", bindIgnErr(auth.EditReleaseForm{}), repo.EditReleasePost) 925 + m.Post("/edit/*", bindIgnErr(forms.EditReleaseForm{}), repo.EditReleasePost) 926 926 }, reqSignIn, repo.MustBeNotEmpty, context.RepoMustNotBeArchived(), reqRepoReleaseWriter, func(ctx *context.Context) { 927 927 var err error 928 928 ctx.Repo.Commit, err = ctx.Repo.GitRepo.GetBranchCommit(ctx.Repo.Repository.DefaultBranch) ··· 956 956 m.Get("/{id}", repo.ViewProject) 957 957 m.Group("", func() { 958 958 m.Get("/new", repo.NewProject) 959 - m.Post("/new", bindIgnErr(auth.CreateProjectForm{}), repo.NewProjectPost) 959 + m.Post("/new", bindIgnErr(forms.CreateProjectForm{}), repo.NewProjectPost) 960 960 m.Group("/{id}", func() { 961 - m.Post("", bindIgnErr(auth.EditProjectBoardForm{}), repo.AddBoardToProjectPost) 961 + m.Post("", bindIgnErr(forms.EditProjectBoardForm{}), repo.AddBoardToProjectPost) 962 962 m.Post("/delete", repo.DeleteProject) 963 963 964 964 m.Get("/edit", repo.EditProject) 965 - m.Post("/edit", bindIgnErr(auth.CreateProjectForm{}), repo.EditProjectPost) 965 + m.Post("/edit", bindIgnErr(forms.CreateProjectForm{}), repo.EditProjectPost) 966 966 m.Post("/{action:open|close}", repo.ChangeProjectStatus) 967 967 968 968 m.Group("/{boardID}", func() { 969 - m.Put("", bindIgnErr(auth.EditProjectBoardForm{}), repo.EditProjectBoard) 969 + m.Put("", bindIgnErr(forms.EditProjectBoardForm{}), repo.EditProjectBoard) 970 970 m.Delete("", repo.DeleteProjectBoard) 971 971 m.Post("/default", repo.SetDefaultProjectBoard) 972 972 ··· 986 986 987 987 m.Group("", func() { 988 988 m.Combo("/_new").Get(repo.NewWiki). 989 - Post(bindIgnErr(auth.NewWikiForm{}), repo.NewWikiPost) 989 + Post(bindIgnErr(forms.NewWikiForm{}), repo.NewWikiPost) 990 990 m.Combo("/{page}/_edit").Get(repo.EditWiki). 991 - Post(bindIgnErr(auth.NewWikiForm{}), repo.EditWikiPost) 991 + Post(bindIgnErr(forms.NewWikiForm{}), repo.EditWikiPost) 992 992 m.Post("/{page}/delete", repo.DeleteWikiPagePost) 993 993 }, context.RepoMustNotBeArchived(), reqSignIn, reqRepoWikiWriter) 994 994 }, repo.MustEnableWiki, context.RepoRef(), func(ctx *context.Context) { ··· 1026 1026 m.Get(".diff", repo.DownloadPullDiff) 1027 1027 m.Get(".patch", repo.DownloadPullPatch) 1028 1028 m.Get("/commits", context.RepoRef(), repo.ViewPullCommits) 1029 - m.Post("/merge", context.RepoMustNotBeArchived(), bindIgnErr(auth.MergePullRequestForm{}), repo.MergePullRequest) 1029 + m.Post("/merge", context.RepoMustNotBeArchived(), bindIgnErr(forms.MergePullRequestForm{}), repo.MergePullRequest) 1030 1030 m.Post("/update", repo.UpdatePullRequest) 1031 1031 m.Post("/cleanup", context.RepoMustNotBeArchived(), context.RepoRef(), repo.CleanUpPullRequest) 1032 1032 m.Group("/files", func() { 1033 1033 m.Get("", context.RepoRef(), repo.SetEditorconfigIfExists, repo.SetDiffViewStyle, repo.SetWhitespaceBehavior, repo.ViewPullFiles) 1034 1034 m.Group("/reviews", func() { 1035 1035 m.Get("/new_comment", repo.RenderNewCodeCommentForm) 1036 - m.Post("/comments", bindIgnErr(auth.CodeCommentForm{}), repo.CreateCodeComment) 1037 - m.Post("/submit", bindIgnErr(auth.SubmitReviewForm{}), repo.SubmitReview) 1036 + m.Post("/comments", bindIgnErr(forms.CodeCommentForm{}), repo.CreateCodeComment) 1037 + m.Post("/submit", bindIgnErr(forms.SubmitReviewForm{}), repo.SubmitReview) 1038 1038 }, context.RepoMustNotBeArchived()) 1039 1039 }) 1040 1040 }, repo.MustAllowPulls)
+10 -10
routers/user/auth.go
··· 16 16 "code.gitea.io/gitea/modules/base" 17 17 "code.gitea.io/gitea/modules/context" 18 18 "code.gitea.io/gitea/modules/eventsource" 19 - auth "code.gitea.io/gitea/modules/forms" 20 19 "code.gitea.io/gitea/modules/hcaptcha" 21 20 "code.gitea.io/gitea/modules/log" 22 21 "code.gitea.io/gitea/modules/password" ··· 27 26 "code.gitea.io/gitea/modules/web/middleware" 28 27 "code.gitea.io/gitea/routers/utils" 29 28 "code.gitea.io/gitea/services/externalaccount" 29 + "code.gitea.io/gitea/services/forms" 30 30 "code.gitea.io/gitea/services/mailer" 31 31 32 32 "github.com/markbates/goth" ··· 171 171 return 172 172 } 173 173 174 - form := web.GetForm(ctx).(*auth.SignInForm) 174 + form := web.GetForm(ctx).(*forms.SignInForm) 175 175 u, err := models.UserSignIn(form.UserName, form.Password) 176 176 if err != nil { 177 177 if models.IsErrUserNotExist(err) { ··· 253 253 254 254 // TwoFactorPost validates a user's two-factor authentication token. 255 255 func TwoFactorPost(ctx *context.Context) { 256 - form := web.GetForm(ctx).(*auth.TwoFactorAuthForm) 256 + form := web.GetForm(ctx).(*forms.TwoFactorAuthForm) 257 257 ctx.Data["Title"] = ctx.Tr("twofa") 258 258 259 259 // Ensure user is in a 2FA session. ··· 309 309 return 310 310 } 311 311 312 - ctx.RenderWithErr(ctx.Tr("auth.twofa_passcode_incorrect"), tplTwofa, auth.TwoFactorAuthForm{}) 312 + ctx.RenderWithErr(ctx.Tr("auth.twofa_passcode_incorrect"), tplTwofa, forms.TwoFactorAuthForm{}) 313 313 } 314 314 315 315 // TwoFactorScratch shows the scratch code form for two-factor authentication. ··· 332 332 333 333 // TwoFactorScratchPost validates and invalidates a user's two-factor scratch token. 334 334 func TwoFactorScratchPost(ctx *context.Context) { 335 - form := web.GetForm(ctx).(*auth.TwoFactorScratchAuthForm) 335 + form := web.GetForm(ctx).(*forms.TwoFactorScratchAuthForm) 336 336 ctx.Data["Title"] = ctx.Tr("twofa_scratch") 337 337 338 338 // Ensure user is in a 2FA session. ··· 375 375 return 376 376 } 377 377 378 - ctx.RenderWithErr(ctx.Tr("auth.twofa_scratch_token_incorrect"), tplTwofaScratch, auth.TwoFactorScratchAuthForm{}) 378 + ctx.RenderWithErr(ctx.Tr("auth.twofa_scratch_token_incorrect"), tplTwofaScratch, forms.TwoFactorScratchAuthForm{}) 379 379 } 380 380 381 381 // U2F shows the U2F login page ··· 796 796 797 797 // LinkAccountPostSignIn handle the coupling of external account with another account using signIn 798 798 func LinkAccountPostSignIn(ctx *context.Context) { 799 - signInForm := web.GetForm(ctx).(*auth.SignInForm) 799 + signInForm := web.GetForm(ctx).(*forms.SignInForm) 800 800 ctx.Data["DisablePassword"] = !setting.Service.RequireExternalRegistrationPassword || setting.Service.AllowOnlyExternalRegistration 801 801 ctx.Data["Title"] = ctx.Tr("link_account") 802 802 ctx.Data["LinkAccountMode"] = true ··· 881 881 882 882 // LinkAccountPostRegister handle the creation of a new account for an external account using signUp 883 883 func LinkAccountPostRegister(ctx *context.Context) { 884 - form := web.GetForm(ctx).(*auth.RegisterForm) 884 + form := web.GetForm(ctx).(*forms.RegisterForm) 885 885 // TODO Make insecure passwords optional for local accounts also, 886 886 // once email-based Second-Factor Auth is available 887 887 ctx.Data["DisablePassword"] = !setting.Service.RequireExternalRegistrationPassword || setting.Service.AllowOnlyExternalRegistration ··· 1089 1089 1090 1090 // SignUpPost response for sign up information submission 1091 1091 func SignUpPost(ctx *context.Context) { 1092 - form := web.GetForm(ctx).(*auth.RegisterForm) 1092 + form := web.GetForm(ctx).(*forms.RegisterForm) 1093 1093 ctx.Data["Title"] = ctx.Tr("sign_up") 1094 1094 1095 1095 ctx.Data["SignUpLink"] = setting.AppSubURL + "/user/sign_up" ··· 1584 1584 // MustChangePasswordPost response for updating a user's password after his/her 1585 1585 // account was created by an admin 1586 1586 func MustChangePasswordPost(ctx *context.Context) { 1587 - form := web.GetForm(ctx).(*auth.MustChangePasswordForm) 1587 + form := web.GetForm(ctx).(*forms.MustChangePasswordForm) 1588 1588 ctx.Data["Title"] = ctx.Tr("auth.must_change_password") 1589 1589 ctx.Data["ChangePasscodeLink"] = setting.AppSubURL + "/user/settings/change_password" 1590 1590 if ctx.HasError() {
+10 -10
routers/user/auth_openid.go
··· 13 13 "code.gitea.io/gitea/modules/auth/openid" 14 14 "code.gitea.io/gitea/modules/base" 15 15 "code.gitea.io/gitea/modules/context" 16 - auth "code.gitea.io/gitea/modules/forms" 17 16 "code.gitea.io/gitea/modules/generate" 18 17 "code.gitea.io/gitea/modules/hcaptcha" 19 18 "code.gitea.io/gitea/modules/log" ··· 22 21 "code.gitea.io/gitea/modules/timeutil" 23 22 "code.gitea.io/gitea/modules/web" 24 23 "code.gitea.io/gitea/modules/web/middleware" 24 + "code.gitea.io/gitea/services/forms" 25 25 "code.gitea.io/gitea/services/mailer" 26 26 ) 27 27 ··· 92 92 93 93 // SignInOpenIDPost response for openid sign in request 94 94 func SignInOpenIDPost(ctx *context.Context) { 95 - form := web.GetForm(ctx).(*auth.SignInOpenIDForm) 95 + form := web.GetForm(ctx).(*forms.SignInOpenIDForm) 96 96 ctx.Data["Title"] = ctx.Tr("sign_in") 97 97 ctx.Data["PageIsSignIn"] = true 98 98 ctx.Data["PageIsLoginOpenID"] = true ··· 152 152 153 153 var id, err = openid.Verify(fullURL) 154 154 if err != nil { 155 - ctx.RenderWithErr(err.Error(), tplSignInOpenID, &auth.SignInOpenIDForm{ 155 + ctx.RenderWithErr(err.Error(), tplSignInOpenID, &forms.SignInOpenIDForm{ 156 156 Openid: id, 157 157 }) 158 158 return ··· 166 166 u, err := models.GetUserByOpenID(id) 167 167 if err != nil { 168 168 if !models.IsErrUserNotExist(err) { 169 - ctx.RenderWithErr(err.Error(), tplSignInOpenID, &auth.SignInOpenIDForm{ 169 + ctx.RenderWithErr(err.Error(), tplSignInOpenID, &forms.SignInOpenIDForm{ 170 170 Openid: id, 171 171 }) 172 172 return ··· 185 185 186 186 parsedURL, err := url.Parse(fullURL) 187 187 if err != nil { 188 - ctx.RenderWithErr(err.Error(), tplSignInOpenID, &auth.SignInOpenIDForm{ 188 + ctx.RenderWithErr(err.Error(), tplSignInOpenID, &forms.SignInOpenIDForm{ 189 189 Openid: id, 190 190 }) 191 191 return 192 192 } 193 193 values, err := url.ParseQuery(parsedURL.RawQuery) 194 194 if err != nil { 195 - ctx.RenderWithErr(err.Error(), tplSignInOpenID, &auth.SignInOpenIDForm{ 195 + ctx.RenderWithErr(err.Error(), tplSignInOpenID, &forms.SignInOpenIDForm{ 196 196 Openid: id, 197 197 }) 198 198 return ··· 206 206 u, err = models.GetUserByEmail(email) 207 207 if err != nil { 208 208 if !models.IsErrUserNotExist(err) { 209 - ctx.RenderWithErr(err.Error(), tplSignInOpenID, &auth.SignInOpenIDForm{ 209 + ctx.RenderWithErr(err.Error(), tplSignInOpenID, &forms.SignInOpenIDForm{ 210 210 Openid: id, 211 211 }) 212 212 return ··· 222 222 u, _ = models.GetUserByName(nickname) 223 223 if err != nil { 224 224 if !models.IsErrUserNotExist(err) { 225 - ctx.RenderWithErr(err.Error(), tplSignInOpenID, &auth.SignInOpenIDForm{ 225 + ctx.RenderWithErr(err.Error(), tplSignInOpenID, &forms.SignInOpenIDForm{ 226 226 Openid: id, 227 227 }) 228 228 return ··· 279 279 280 280 // ConnectOpenIDPost handles submission of a form to connect an OpenID URI to an existing account 281 281 func ConnectOpenIDPost(ctx *context.Context) { 282 - form := web.GetForm(ctx).(*auth.ConnectOpenIDForm) 282 + form := web.GetForm(ctx).(*forms.ConnectOpenIDForm) 283 283 oid, _ := ctx.Session.Get("openid_verified_uri").(string) 284 284 if oid == "" { 285 285 ctx.Redirect(setting.AppSubURL + "/user/login/openid") ··· 350 350 351 351 // RegisterOpenIDPost handles submission of a form to create a new user authenticated via an OpenID URI 352 352 func RegisterOpenIDPost(ctx *context.Context) { 353 - form := web.GetForm(ctx).(*auth.SignUpOpenIDForm) 353 + form := web.GetForm(ctx).(*forms.SignUpOpenIDForm) 354 354 oid, _ := ctx.Session.Get("openid_verified_uri").(string) 355 355 if oid == "" { 356 356 ctx.Redirect(setting.AppSubURL + "/user/login/openid")
+6 -6
routers/user/oauth.go
··· 15 15 "code.gitea.io/gitea/models" 16 16 "code.gitea.io/gitea/modules/base" 17 17 "code.gitea.io/gitea/modules/context" 18 - auth "code.gitea.io/gitea/modules/forms" 19 18 "code.gitea.io/gitea/modules/log" 20 19 "code.gitea.io/gitea/modules/setting" 21 20 "code.gitea.io/gitea/modules/timeutil" 22 21 "code.gitea.io/gitea/modules/web" 22 + "code.gitea.io/gitea/services/forms" 23 23 24 24 "gitea.com/go-chi/binding" 25 25 "github.com/dgrijalva/jwt-go" ··· 195 195 196 196 // AuthorizeOAuth manages authorize requests 197 197 func AuthorizeOAuth(ctx *context.Context) { 198 - form := web.GetForm(ctx).(*auth.AuthorizationForm) 198 + form := web.GetForm(ctx).(*forms.AuthorizationForm) 199 199 errs := binding.Errors{} 200 200 errs = form.Validate(ctx.Req, errs) 201 201 if len(errs) > 0 { ··· 345 345 346 346 // GrantApplicationOAuth manages the post request submitted when a user grants access to an application 347 347 func GrantApplicationOAuth(ctx *context.Context) { 348 - form := web.GetForm(ctx).(*auth.GrantApplicationForm) 348 + form := web.GetForm(ctx).(*forms.GrantApplicationForm) 349 349 if ctx.Session.Get("client_id") != form.ClientID || ctx.Session.Get("state") != form.State || 350 350 ctx.Session.Get("redirect_uri") != form.RedirectURI { 351 351 ctx.Error(http.StatusBadRequest) ··· 391 391 392 392 // AccessTokenOAuth manages all access token requests by the client 393 393 func AccessTokenOAuth(ctx *context.Context) { 394 - form := *web.GetForm(ctx).(*auth.AccessTokenForm) 394 + form := *web.GetForm(ctx).(*forms.AccessTokenForm) 395 395 if form.ClientID == "" { 396 396 authHeader := ctx.Req.Header.Get("Authorization") 397 397 authContent := strings.SplitN(authHeader, " ", 2) ··· 431 431 } 432 432 } 433 433 434 - func handleRefreshToken(ctx *context.Context, form auth.AccessTokenForm) { 434 + func handleRefreshToken(ctx *context.Context, form forms.AccessTokenForm) { 435 435 token, err := models.ParseOAuth2Token(form.RefreshToken) 436 436 if err != nil { 437 437 handleAccessTokenError(ctx, AccessTokenError{ ··· 467 467 ctx.JSON(http.StatusOK, accessToken) 468 468 } 469 469 470 - func handleAuthorizationCode(ctx *context.Context, form auth.AccessTokenForm) { 470 + func handleAuthorizationCode(ctx *context.Context, form forms.AccessTokenForm) { 471 471 app, err := models.GetOAuth2ApplicationByClientID(form.ClientID) 472 472 if err != nil { 473 473 handleAccessTokenError(ctx, AccessTokenError{
+4 -4
routers/user/setting/account.go
··· 13 13 "code.gitea.io/gitea/models" 14 14 "code.gitea.io/gitea/modules/base" 15 15 "code.gitea.io/gitea/modules/context" 16 - auth "code.gitea.io/gitea/modules/forms" 17 16 "code.gitea.io/gitea/modules/log" 18 17 "code.gitea.io/gitea/modules/password" 19 18 "code.gitea.io/gitea/modules/setting" 20 19 "code.gitea.io/gitea/modules/timeutil" 21 20 "code.gitea.io/gitea/modules/web" 21 + "code.gitea.io/gitea/services/forms" 22 22 "code.gitea.io/gitea/services/mailer" 23 23 ) 24 24 ··· 39 39 40 40 // AccountPost response for change user's password 41 41 func AccountPost(ctx *context.Context) { 42 - form := web.GetForm(ctx).(*auth.ChangePasswordForm) 42 + form := web.GetForm(ctx).(*forms.ChangePasswordForm) 43 43 ctx.Data["Title"] = ctx.Tr("settings") 44 44 ctx.Data["PageIsSettingsAccount"] = true 45 45 ··· 84 84 85 85 // EmailPost response for change user's email 86 86 func EmailPost(ctx *context.Context) { 87 - form := web.GetForm(ctx).(*auth.AddEmailForm) 87 + form := web.GetForm(ctx).(*forms.AddEmailForm) 88 88 ctx.Data["Title"] = ctx.Tr("settings") 89 89 ctx.Data["PageIsSettingsAccount"] = true 90 90 ··· 257 257 258 258 // UpdateUIThemePost is used to update users' specific theme 259 259 func UpdateUIThemePost(ctx *context.Context) { 260 - form := web.GetForm(ctx).(*auth.UpdateThemeForm) 260 + form := web.GetForm(ctx).(*forms.UpdateThemeForm) 261 261 ctx.Data["Title"] = ctx.Tr("settings") 262 262 ctx.Data["PageIsSettingsAccount"] = true 263 263
+2 -2
routers/user/setting/account_test.go
··· 9 9 "testing" 10 10 11 11 "code.gitea.io/gitea/models" 12 - auth "code.gitea.io/gitea/modules/forms" 13 12 "code.gitea.io/gitea/modules/setting" 14 13 "code.gitea.io/gitea/modules/test" 15 14 "code.gitea.io/gitea/modules/web" 15 + "code.gitea.io/gitea/services/forms" 16 16 17 17 "github.com/stretchr/testify/assert" 18 18 ) ··· 86 86 test.LoadUser(t, ctx, 2) 87 87 test.LoadRepo(t, ctx, 1) 88 88 89 - web.SetForm(ctx, &auth.ChangePasswordForm{ 89 + web.SetForm(ctx, &forms.ChangePasswordForm{ 90 90 OldPassword: req.OldPassword, 91 91 Password: req.NewPassword, 92 92 Retype: req.Retype,
+2 -2
routers/user/setting/applications.go
··· 11 11 "code.gitea.io/gitea/models" 12 12 "code.gitea.io/gitea/modules/base" 13 13 "code.gitea.io/gitea/modules/context" 14 - auth "code.gitea.io/gitea/modules/forms" 15 14 "code.gitea.io/gitea/modules/setting" 16 15 "code.gitea.io/gitea/modules/web" 16 + "code.gitea.io/gitea/services/forms" 17 17 ) 18 18 19 19 const ( ··· 32 32 33 33 // ApplicationsPost response for add user's access token 34 34 func ApplicationsPost(ctx *context.Context) { 35 - form := web.GetForm(ctx).(*auth.NewAccessTokenForm) 35 + form := web.GetForm(ctx).(*forms.NewAccessTokenForm) 36 36 ctx.Data["Title"] = ctx.Tr("settings") 37 37 ctx.Data["PageIsSettingsApplications"] = true 38 38
+2 -2
routers/user/setting/keys.go
··· 11 11 "code.gitea.io/gitea/models" 12 12 "code.gitea.io/gitea/modules/base" 13 13 "code.gitea.io/gitea/modules/context" 14 - auth "code.gitea.io/gitea/modules/forms" 15 14 "code.gitea.io/gitea/modules/setting" 16 15 "code.gitea.io/gitea/modules/web" 16 + "code.gitea.io/gitea/services/forms" 17 17 ) 18 18 19 19 const ( ··· 35 35 36 36 // KeysPost response for change user's SSH/GPG keys 37 37 func KeysPost(ctx *context.Context) { 38 - form := web.GetForm(ctx).(*auth.AddKeyForm) 38 + form := web.GetForm(ctx).(*forms.AddKeyForm) 39 39 ctx.Data["Title"] = ctx.Tr("settings") 40 40 ctx.Data["PageIsSettingsKeys"] = true 41 41 ctx.Data["DisableSSH"] = setting.SSH.Disabled
+3 -3
routers/user/setting/oauth2.go
··· 11 11 "code.gitea.io/gitea/models" 12 12 "code.gitea.io/gitea/modules/base" 13 13 "code.gitea.io/gitea/modules/context" 14 - auth "code.gitea.io/gitea/modules/forms" 15 14 "code.gitea.io/gitea/modules/log" 16 15 "code.gitea.io/gitea/modules/setting" 17 16 "code.gitea.io/gitea/modules/web" 17 + "code.gitea.io/gitea/services/forms" 18 18 ) 19 19 20 20 const ( ··· 23 23 24 24 // OAuthApplicationsPost response for adding a oauth2 application 25 25 func OAuthApplicationsPost(ctx *context.Context) { 26 - form := web.GetForm(ctx).(*auth.EditOAuth2ApplicationForm) 26 + form := web.GetForm(ctx).(*forms.EditOAuth2ApplicationForm) 27 27 ctx.Data["Title"] = ctx.Tr("settings") 28 28 ctx.Data["PageIsSettingsApplications"] = true 29 29 ··· 55 55 56 56 // OAuthApplicationsEdit response for editing oauth2 application 57 57 func OAuthApplicationsEdit(ctx *context.Context) { 58 - form := web.GetForm(ctx).(*auth.EditOAuth2ApplicationForm) 58 + form := web.GetForm(ctx).(*forms.EditOAuth2ApplicationForm) 59 59 ctx.Data["Title"] = ctx.Tr("settings") 60 60 ctx.Data["PageIsSettingsApplications"] = true 61 61
+5 -5
routers/user/setting/profile.go
··· 17 17 "code.gitea.io/gitea/models" 18 18 "code.gitea.io/gitea/modules/base" 19 19 "code.gitea.io/gitea/modules/context" 20 - auth "code.gitea.io/gitea/modules/forms" 21 20 "code.gitea.io/gitea/modules/log" 22 21 "code.gitea.io/gitea/modules/setting" 23 22 "code.gitea.io/gitea/modules/util" 24 23 "code.gitea.io/gitea/modules/web" 25 24 "code.gitea.io/gitea/modules/web/middleware" 25 + "code.gitea.io/gitea/services/forms" 26 26 27 27 "github.com/unknwon/i18n" 28 28 ) ··· 75 75 76 76 // ProfilePost response for change user's profile 77 77 func ProfilePost(ctx *context.Context) { 78 - form := web.GetForm(ctx).(*auth.UpdateProfileForm) 78 + form := web.GetForm(ctx).(*forms.UpdateProfileForm) 79 79 ctx.Data["Title"] = ctx.Tr("settings") 80 80 ctx.Data["PageIsSettingsProfile"] = true 81 81 ··· 127 127 128 128 // UpdateAvatarSetting update user's avatar 129 129 // FIXME: limit size. 130 - func UpdateAvatarSetting(ctx *context.Context, form *auth.AvatarForm, ctxUser *models.User) error { 131 - ctxUser.UseCustomAvatar = form.Source == auth.AvatarLocal 130 + func UpdateAvatarSetting(ctx *context.Context, form *forms.AvatarForm, ctxUser *models.User) error { 131 + ctxUser.UseCustomAvatar = form.Source == forms.AvatarLocal 132 132 if len(form.Gravatar) > 0 { 133 133 if form.Avatar != nil { 134 134 ctxUser.Avatar = base.EncodeMD5(form.Gravatar) ··· 176 176 177 177 // AvatarPost response for change user's avatar request 178 178 func AvatarPost(ctx *context.Context) { 179 - form := web.GetForm(ctx).(*auth.AvatarForm) 179 + form := web.GetForm(ctx).(*forms.AvatarForm) 180 180 if err := UpdateAvatarSetting(ctx, form, ctx.User); err != nil { 181 181 ctx.Flash.Error(err.Error()) 182 182 } else {
+4 -4
routers/user/setting/security_openid.go
··· 10 10 "code.gitea.io/gitea/models" 11 11 "code.gitea.io/gitea/modules/auth/openid" 12 12 "code.gitea.io/gitea/modules/context" 13 - auth "code.gitea.io/gitea/modules/forms" 14 13 "code.gitea.io/gitea/modules/log" 15 14 "code.gitea.io/gitea/modules/setting" 16 15 "code.gitea.io/gitea/modules/web" 16 + "code.gitea.io/gitea/services/forms" 17 17 ) 18 18 19 19 // OpenIDPost response for change user's openid 20 20 func OpenIDPost(ctx *context.Context) { 21 - form := web.GetForm(ctx).(*auth.AddOpenIDForm) 21 + form := web.GetForm(ctx).(*forms.AddOpenIDForm) 22 22 ctx.Data["Title"] = ctx.Tr("settings") 23 23 ctx.Data["PageIsSettingsSecurity"] = true 24 24 ··· 81 81 82 82 id, err := openid.Verify(fullURL) 83 83 if err != nil { 84 - ctx.RenderWithErr(err.Error(), tplSettingsSecurity, &auth.AddOpenIDForm{ 84 + ctx.RenderWithErr(err.Error(), tplSettingsSecurity, &forms.AddOpenIDForm{ 85 85 Openid: id, 86 86 }) 87 87 return ··· 92 92 oid := &models.UserOpenID{UID: ctx.User.ID, URI: id} 93 93 if err = models.AddUserOpenID(oid); err != nil { 94 94 if models.IsErrOpenIDAlreadyUsed(err) { 95 - ctx.RenderWithErr(ctx.Tr("form.openid_been_used", id), tplSettingsSecurity, &auth.AddOpenIDForm{Openid: id}) 95 + ctx.RenderWithErr(ctx.Tr("form.openid_been_used", id), tplSettingsSecurity, &forms.AddOpenIDForm{Openid: id}) 96 96 return 97 97 } 98 98 ctx.ServerError("AddUserOpenID", err)
+2 -2
routers/user/setting/security_twofa.go
··· 15 15 16 16 "code.gitea.io/gitea/models" 17 17 "code.gitea.io/gitea/modules/context" 18 - auth "code.gitea.io/gitea/modules/forms" 19 18 "code.gitea.io/gitea/modules/log" 20 19 "code.gitea.io/gitea/modules/setting" 21 20 "code.gitea.io/gitea/modules/web" 21 + "code.gitea.io/gitea/services/forms" 22 22 23 23 "github.com/pquerna/otp" 24 24 "github.com/pquerna/otp/totp" ··· 168 168 169 169 // EnrollTwoFactorPost handles enrolling the user into 2FA. 170 170 func EnrollTwoFactorPost(ctx *context.Context) { 171 - form := web.GetForm(ctx).(*auth.TwoFactorAuthForm) 171 + form := web.GetForm(ctx).(*forms.TwoFactorAuthForm) 172 172 ctx.Data["Title"] = ctx.Tr("settings") 173 173 ctx.Data["PageIsSettingsSecurity"] = true 174 174
+3 -3
routers/user/setting/security_u2f.go
··· 10 10 11 11 "code.gitea.io/gitea/models" 12 12 "code.gitea.io/gitea/modules/context" 13 - auth "code.gitea.io/gitea/modules/forms" 14 13 "code.gitea.io/gitea/modules/log" 15 14 "code.gitea.io/gitea/modules/setting" 16 15 "code.gitea.io/gitea/modules/web" 16 + "code.gitea.io/gitea/services/forms" 17 17 18 18 "github.com/tstranex/u2f" 19 19 ) 20 20 21 21 // U2FRegister initializes the u2f registration procedure 22 22 func U2FRegister(ctx *context.Context) { 23 - form := web.GetForm(ctx).(*auth.U2FRegistrationForm) 23 + form := web.GetForm(ctx).(*forms.U2FRegistrationForm) 24 24 if form.Name == "" { 25 25 ctx.Error(http.StatusConflict) 26 26 return ··· 87 87 88 88 // U2FDelete deletes an security key by id 89 89 func U2FDelete(ctx *context.Context) { 90 - form := web.GetForm(ctx).(*auth.U2FDeleteForm) 90 + form := web.GetForm(ctx).(*forms.U2FDeleteForm) 91 91 reg, err := models.GetU2FRegistrationByID(form.ID) 92 92 if err != nil { 93 93 if models.IsErrU2FRegistrationNotExist(err) {
+2 -2
templates/swagger/v1_json.tmpl
··· 14630 14630 } 14631 14631 }, 14632 14632 "x-go-name": "MergePullRequestForm", 14633 - "x-go-package": "code.gitea.io/gitea/modules/forms" 14633 + "x-go-package": "code.gitea.io/gitea/services/forms" 14634 14634 }, 14635 14635 "MigrateRepoForm": { 14636 14636 "description": "MigrateRepoForm form for migrating repository\nthis is used to interact with web ui", ··· 14710 14710 "x-go-name": "Wiki" 14711 14711 } 14712 14712 }, 14713 - "x-go-package": "code.gitea.io/gitea/modules/forms" 14713 + "x-go-package": "code.gitea.io/gitea/services/forms" 14714 14714 }, 14715 14715 "MigrateRepoOptions": { 14716 14716 "description": "MigrateRepoOptions options for migrating repository's\nthis is used to interact with api v1",