diff options
author | Guillaume <me@gsvd.dev> | 2025-02-27 14:40:12 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-02-27 19:40:12 +0000 |
commit | 303af554c9bc7b22d5182a6fe9e22192a546cd41 (patch) | |
tree | 4e8540df87abe0f94913be5da22b8cdaa2643ee3 /services/context | |
parent | 8362a4155929007b8d02b63a2e657557edb08fb9 (diff) | |
download | gitea-303af554c9bc7b22d5182a6fe9e22192a546cd41.tar.gz gitea-303af554c9bc7b22d5182a6fe9e22192a546cd41.zip |
Improve "generate new access token" form (#33730)
Fix: https://github.com/go-gitea/gitea/issues/33519
As discussed in [PR
#33614](https://github.com/go-gitea/gitea/pull/33614), the
ScopedAccessTokenSelector Vue component is not particularly useful.
This PR removes the component and reverts to using HTML templates. It
also introduces some (hopefully) useful refactoring.
The Vue component was causing the UX bug reported in the linked issue.
Required form fields are now properly working, as expected (see
screenshot).

---------
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Diffstat (limited to 'services/context')
-rw-r--r-- | services/context/context.go | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/services/context/context.go b/services/context/context.go index 5e08fba442..f3a0f0bb5f 100644 --- a/services/context/context.go +++ b/services/context/context.go @@ -213,13 +213,16 @@ func Contexter() func(next http.Handler) http.Handler { // Attention: this function changes ctx.Data and ctx.Flash // If HasError is called, then before Redirect, the error message should be stored by ctx.Flash.Error(ctx.GetErrMsg()) again. func (ctx *Context) HasError() bool { - hasErr, ok := ctx.Data["HasError"] - if !ok { + hasErr, _ := ctx.Data["HasError"].(bool) + hasErr = hasErr || ctx.Flash.ErrorMsg != "" + if !hasErr { return false } - ctx.Flash.ErrorMsg = ctx.GetErrMsg() + if ctx.Flash.ErrorMsg == "" { + ctx.Flash.ErrorMsg = ctx.GetErrMsg() + } ctx.Data["Flash"] = ctx.Flash - return hasErr.(bool) + return hasErr } // GetErrMsg returns error message in form validation. |