diff --git a/core/src/main/resources/hudson/PluginManager/_table.js b/core/src/main/resources/hudson/PluginManager/_table.js
index 8174fa1e833d..4806c3f573bb 100644
--- a/core/src/main/resources/hudson/PluginManager/_table.js
+++ b/core/src/main/resources/hudson/PluginManager/_table.js
@@ -504,24 +504,27 @@ window.addEventListener("load", function () {
});
});
- // Enable/disable the 'Update' button depending on if any updates are checked
- const anyCheckboxesSelected = () => {
- return (
- document.querySelectorAll("input[type='checkbox']:checked:not(:disabled)")
- .length > 0
- );
- };
const updateButton = document.querySelector("#button-update");
- const checkboxes = document.querySelectorAll(
- "input[type='checkbox'], [data-select], .jenkins-table__checkbox",
- );
- checkboxes.forEach((checkbox) => {
- checkbox.addEventListener("click", () => {
- setTimeout(() => {
- updateButton.disabled = !anyCheckboxesSelected();
+ if (updateButton) {
+ // Enable/disable the 'Update' button depending on if any updates are checked
+ const anyCheckboxesSelected = () => {
+ return (
+ document.querySelectorAll(
+ "input[type='checkbox']:checked:not(:disabled)",
+ ).length > 0
+ );
+ };
+ const checkboxes = document.querySelectorAll(
+ "input[type='checkbox'], [data-select], .jenkins-table__checkbox",
+ );
+ checkboxes.forEach((checkbox) => {
+ checkbox.addEventListener("click", () => {
+ setTimeout(() => {
+ updateButton.disabled = !anyCheckboxesSelected();
+ });
});
});
- });
+ }
// Show update center error if element exists
const updateCenterError = document.querySelector("#update-center-error");
diff --git a/core/src/main/resources/hudson/PluginManager/installed.jelly b/core/src/main/resources/hudson/PluginManager/installed.jelly
index 3c3ee43e0193..951e0cf2877d 100644
--- a/core/src/main/resources/hudson/PluginManager/installed.jelly
+++ b/core/src/main/resources/hudson/PluginManager/installed.jelly
@@ -99,6 +99,13 @@ THE SOFTWARE.
+