Fix duplicate modals when clicking on "remove all" repository button (#24129)

Under Team tab of an organization, click on "remove all" repositories
button will trigger two modals. Because `data-modal-id` is not proerly
added.

Before:

https://user-images.githubusercontent.com/17645053/231988545-ac690b86-e3fe-4bf5-81c6-5ef09302e849.mov

After:

https://user-images.githubusercontent.com/17645053/231989678-53be4f91-fdc9-4bc5-ba11-a08aa4548e37.mov
This commit is contained in:
Hester Gong 2023-04-19 00:49:49 +08:00 committed by GitHub
parent 2002584986
commit 7ca7590c39
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 8 deletions

View file

@ -25,8 +25,8 @@
</div> </div>
<div class="inline ui field right"> <div class="inline ui field right">
<form class="ui form" id="repo-multiple-form" action="{{$.OrgLink}}/teams/{{$.Team.LowerName | PathEscape}}/repositories" method="post"> <form class="ui form" id="repo-multiple-form" action="{{$.OrgLink}}/teams/{{$.Team.LowerName | PathEscape}}/repositories" method="post">
<button class="ui red button delete-button right" data-url="{{$.OrgLink}}/teams/{{$.Team.LowerName | PathEscape}}/action/repo/removeall">{{.locale.Tr "remove_all"}}</button> <button class="ui red button delete-button right" data-modal-id="org-team-remove-all-repo" data-url="{{$.OrgLink}}/teams/{{$.Team.LowerName | PathEscape}}/action/repo/removeall">{{.locale.Tr "remove_all"}}</button>
<button class="ui green button add-all-button right" data-url="{{$.OrgLink}}/teams/{{$.Team.LowerName | PathEscape}}/action/repo/addall">{{.locale.Tr "add_all"}}</button> <button class="ui green button add-all-button right" data-modal-id="org-team-add-all-repo" data-url="{{$.OrgLink}}/teams/{{$.Team.LowerName | PathEscape}}/action/repo/addall">{{.locale.Tr "add_all"}}</button>
</form> </form>
</div> </div>
</div> </div>
@ -64,7 +64,7 @@
</div> </div>
</div> </div>
<div class="ui small basic delete modal"> <div class="ui small basic delete modal" id="org-team-remove-all-repo">
<div class="ui icon header"> <div class="ui icon header">
{{svg "octicon-trash"}} {{svg "octicon-trash"}}
{{.locale.Tr "org.teams.remove_all_repos_title"}} {{.locale.Tr "org.teams.remove_all_repos_title"}}
@ -75,7 +75,7 @@
{{template "base/delete_modal_actions" .}} {{template "base/delete_modal_actions" .}}
</div> </div>
<div class="ui small basic addall modal"> <div class="ui small basic addall modal" id="org-team-add-all-repo">
<div class="ui icon header"> <div class="ui icon header">
{{svg "octicon-globe"}} {{svg "octicon-globe"}}
{{.locale.Tr "org.teams.add_all_repos_title"}} {{.locale.Tr "org.teams.add_all_repos_title"}}

View file

@ -194,8 +194,8 @@ export function initGlobalLinkActions() {
const $this = $(this); const $this = $(this);
const dataArray = $this.data(); const dataArray = $this.data();
let filter = ''; let filter = '';
if ($this.data('modal-id')) { if ($this.attr('data-modal-id')) {
filter += `#${$this.data('modal-id')}`; filter += `#${$this.attr('data-modal-id')}`;
} }
const dialog = $(`.delete.modal${filter}`); const dialog = $(`.delete.modal${filter}`);
@ -237,8 +237,8 @@ export function initGlobalLinkActions() {
e.preventDefault(); e.preventDefault();
const $this = $(this); const $this = $(this);
let filter = ''; let filter = '';
if ($this.attr('id')) { if ($this.attr('data-modal-id')) {
filter += `#${$this.attr('id')}`; filter += `#${$this.attr('data-modal-id')}`;
} }
const dialog = $(`.addall.modal${filter}`); const dialog = $(`.addall.modal${filter}`);