diff options
author | sillyguodong <33891828+sillyguodong@users.noreply.github.com> | 2023-03-24 16:37:56 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-03-24 16:37:56 +0800 |
commit | d02e83a2c3e0bd1bc1150c4ed976928d967ac3f5 (patch) | |
tree | 6370aea9613e2290297ca2381fcf39d0bf640b1a | |
parent | a9cceb0597105fab89a145e55b0e5c7f8f1330f4 (diff) | |
download | gitea-d02e83a2c3e0bd1bc1150c4ed976928d967ac3f5.tar.gz gitea-d02e83a2c3e0bd1bc1150c4ed976928d967ac3f5.zip |
Fix cancel button in the page of project edit not work (#23655)
Before, in project edit page, the cancel button is not work.
https://user-images.githubusercontent.com/33891828/227182731-6478e29f-0e52-48c4-beb0-6a7d1dda6a1d.mov
1. The wrong classname `cancel` was added to the `<a>` tag. That
classname caused the default click event of `<a>` tag to be cancelled.
Because we have the following settings in the global. So I remove the
classname `cancel`.
https://github.com/go-gitea/gitea/blob/9be90a58754061171bbd5025d85d2b891364efd3/web_src/js/features/common-global.js#L325-L327
2. Another change is that page will redirect to the previous page.
https://user-images.githubusercontent.com/33891828/227187326-c653c6d6-9715-440f-a732-ba0a6f012c81.mov
-rw-r--r-- | routers/web/org/projects.go | 2 | ||||
-rw-r--r-- | routers/web/repo/projects.go | 1 | ||||
-rw-r--r-- | templates/projects/new.tmpl | 2 | ||||
-rw-r--r-- | templates/repo/projects/new.tmpl | 2 | ||||
-rw-r--r-- | web_src/js/features/common-global.js | 2 |
5 files changed, 6 insertions, 3 deletions
diff --git a/routers/web/org/projects.go b/routers/web/org/projects.go index df16d0a4c7..5d8005781d 100644 --- a/routers/web/org/projects.go +++ b/routers/web/org/projects.go @@ -245,9 +245,11 @@ func EditProject(ctx *context.Context) { return } + ctx.Data["projectID"] = p.ID ctx.Data["title"] = p.Title ctx.Data["content"] = p.Description ctx.Data["redirect"] = ctx.FormString("redirect") + ctx.Data["HomeLink"] = ctx.ContextUser.HomeLink() ctx.HTML(http.StatusOK, tplProjectsNew) } diff --git a/routers/web/repo/projects.go b/routers/web/repo/projects.go index e15f548a38..91e17dee29 100644 --- a/routers/web/repo/projects.go +++ b/routers/web/repo/projects.go @@ -232,6 +232,7 @@ func EditProject(ctx *context.Context) { return } + ctx.Data["projectID"] = p.ID ctx.Data["title"] = p.Title ctx.Data["content"] = p.Description ctx.Data["card_type"] = p.CardType diff --git a/templates/projects/new.tmpl b/templates/projects/new.tmpl index 826869ac5d..e7927221a8 100644 --- a/templates/projects/new.tmpl +++ b/templates/projects/new.tmpl @@ -50,7 +50,7 @@ <div class="ui divider"></div> <div class="ui left"> {{if .PageIsEditProjects}} - <a class="ui cancel button" href="{{.RepoLink}}/projects"> + <a class="ui cancel button" href="{{$.HomeLink}}/-/projects{{if eq .redirect "project"}}/{{.projectID}}{{end}}"> {{.locale.Tr "repo.milestones.cancel"}} </a> <button class="ui primary button"> diff --git a/templates/repo/projects/new.tmpl b/templates/repo/projects/new.tmpl index b53a47dc58..20c4d2ebfc 100644 --- a/templates/repo/projects/new.tmpl +++ b/templates/repo/projects/new.tmpl @@ -72,7 +72,7 @@ <div class="ui divider"></div> <div class="ui left"> {{if .PageIsEditProjects}} - <a class="ui cancel button" href="{{.RepoLink}}/projects"> + <a class="ui cancel button" href="{{.RepoLink}}/projects{{if eq .redirect "project"}}/{{.projectID}}{{end}}"> {{.locale.Tr "repo.milestones.cancel"}} </a> <button class="ui primary button"> diff --git a/web_src/js/features/common-global.js b/web_src/js/features/common-global.js index d533877c27..3546a052b3 100644 --- a/web_src/js/features/common-global.js +++ b/web_src/js/features/common-global.js @@ -322,7 +322,7 @@ export function initGlobalButtons() { // There are many "cancel button" elements in modal dialogs, Fomantic UI expects they are button-like elements but never submit a form. // However, Gitea misuses the modal dialog and put the cancel buttons inside forms, so we must prevent the form submission. // There are a few cancel buttons in non-modal forms, and there are some dynamically created forms (eg: the "Edit Issue Content") - $(document).on('click', 'form .ui.cancel.button', (e) => { + $(document).on('click', 'form button.ui.cancel.button', (e) => { e.preventDefault(); }); |