Skip to content

Commit 4987a0a

Browse files
committed
add 'select/deselect all' buttons for custom events in webhooks
1 parent e1372e5 commit 4987a0a

File tree

2 files changed

+29
-0
lines changed

2 files changed

+29
-0
lines changed

options/locale/locale_en-US.ini

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2382,6 +2382,8 @@ settings.event_desc = Trigger On:
23822382
settings.event_push_only = Push Events
23832383
settings.event_send_everything = All Events
23842384
settings.event_choose = Custom Events…
2385+
settings.event_button_select_all = Select All
2386+
settings.event_button_deselect_all = Deselect All
23852387
settings.event_header_repository = Repository Events
23862388
settings.event_create = Create
23872389
settings.event_create_desc = Branch or tag created.

templates/repo/settings/webhook/settings.tmpl

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,16 @@
8080
</div>
8181

8282
<div class="events fields ui grid {{if not .Webhook.ChooseEvents}}tw-hidden{{end}}">
83+
<div class="fourteen wide column">
84+
<div class="field">
85+
<button type="button" class="ui tiny button" id="event-select-all">
86+
{{ctx.Locale.Tr "repo.settings.event_button_select_all"}}
87+
</button>
88+
<button type="button" class="ui tiny button" id="event-deselect-all">
89+
{{ctx.Locale.Tr "repo.settings.event_button_deselect_all"}}
90+
</button>
91+
</div>
92+
</div>
8393
<!-- Repository Events -->
8494
<div class="fourteen wide column">
8595
<label>{{ctx.Locale.Tr "repo.settings.event_header_repository"}}</label>
@@ -354,3 +364,20 @@
354364
>{{ctx.Locale.Tr "repo.settings.delete_webhook"}}</a>
355365
{{end}}
356366
</div>
367+
368+
<script>
369+
(function () {
370+
const section = document.querySelector('.events.fields.ui.grid');
371+
if (!section) return;
372+
373+
const all = section.querySelectorAll('input[type="checkbox"]');
374+
375+
document.getElementById('event-select-all')?.addEventListener('click', () => {
376+
all.forEach(i => { i.checked = true; });
377+
});
378+
379+
document.getElementById('event-deselect-all')?.addEventListener('click', () => {
380+
all.forEach(i => { i.checked = false; });
381+
});
382+
})();
383+
</script>

0 commit comments

Comments
 (0)