mirror of
https://github.com/rickbarrette/redmine_qbo.git
synced 2026-02-13 09:13:58 -05:00
Added Checkbox Controller javascript
This commit is contained in:
23
assets/javascripts/checkbox_controller.js
Normal file
23
assets/javascripts/checkbox_controller.js
Normal file
@@ -0,0 +1,23 @@
|
||||
document.addEventListener("turbo:load", () => {
|
||||
const selectAllBox = document.getElementById("select-all-batches");
|
||||
const checkboxes = document.querySelectorAll(".item-checkbox");
|
||||
|
||||
if (selectAllBox) {
|
||||
selectAllBox.addEventListener("change", function() {
|
||||
checkboxes.forEach((checkbox) => {
|
||||
checkbox.checked = this.checked;
|
||||
});
|
||||
});
|
||||
|
||||
// Optional: Uncheck "Select All" if an individual box is unchecked
|
||||
checkboxes.forEach((checkbox) => {
|
||||
checkbox.addEventListener("change", () => {
|
||||
if (!checkbox.checked) {
|
||||
selectAllBox.checked = false;
|
||||
} else if (Array.from(checkboxes).every(c => c.checked)) {
|
||||
selectAllBox.checked = true;
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
});
|
||||
@@ -12,8 +12,10 @@ class IssuesFormHookListener < Redmine::Hook::ViewListener
|
||||
|
||||
# Load the javascript to support the autocomplete forms
|
||||
def view_layouts_base_html_head(context = {})
|
||||
js = javascript_include_tag 'application', :plugin => 'redmine_qbo'
|
||||
js += javascript_include_tag 'autocomplete-rails', :plugin => 'redmine_qbo'
|
||||
logger.info("IssuesFormHookListener.view_layouts_base_html_head")
|
||||
js = javascript_include_tag 'application.js', :plugin => 'redmine_qbo'
|
||||
js += javascript_include_tag 'autocomplete-rails.js', :plugin => 'redmine_qbo'
|
||||
js += javascript_include_tag 'checkbox_controller.js', :plugin => 'redmine_qbo'
|
||||
return js
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user