diff --git a/app/views/admin/order_cycles/checkout_options.html.haml b/app/views/admin/order_cycles/checkout_options.html.haml index c298bd86c2..c3380c444a 100644 --- a/app/views/admin/order_cycles/checkout_options.html.haml +++ b/app/views/admin/order_cycles/checkout_options.html.haml @@ -26,7 +26,7 @@ %tr{ "data-controller": "select-all" } %td.text-center %label - = check_box_tag nil, nil, (shipping_methods - @order_cycle.shipping_methods).empty?, { "data-action": "change->select-all#toggleAll", "data-select-all-target": "all" } + = check_box_tag nil, nil, nil, { "data-action": "change->select-all#toggleAll", "data-select-all-target": "all" } = t(".select_all") %td - if shipping_methods.any? diff --git a/app/webpacker/controllers/select_all_controller.js b/app/webpacker/controllers/select_all_controller.js index 84c1cc2e63..30a00aee79 100644 --- a/app/webpacker/controllers/select_all_controller.js +++ b/app/webpacker/controllers/select_all_controller.js @@ -3,6 +3,10 @@ import { Controller } from "stimulus"; export default class extends Controller { static targets = ["all", "checkbox"]; + connect() { + this.toggleCheckbox() + } + toggleAll() { this.checkboxTargets.forEach(checkbox => { checkbox.checked = this.allTarget.checked; diff --git a/spec/javascripts/stimulus/select_all_controller_test.js b/spec/javascripts/stimulus/select_all_controller_test.js index 01731cb238..f7a17b884f 100644 --- a/spec/javascripts/stimulus/select_all_controller_test.js +++ b/spec/javascripts/stimulus/select_all_controller_test.js @@ -79,4 +79,35 @@ describe("SelectAllController", () => { expect(checkboxB.checked).toBe(false); }); }); + + describe("#connect", () => { + beforeEach(() => { + document.body.innerHTML = ` +