diff --git a/media/com_patchtester/joomla.asset.json b/media/com_patchtester/joomla.asset.json index 522b6a0..cfc04f9 100644 --- a/media/com_patchtester/joomla.asset.json +++ b/media/com_patchtester/joomla.asset.json @@ -10,8 +10,7 @@ "type": "script", "uri": "com_patchtester/fetcher.js", "attributes": { - "type": "module", - "defer": true + "type": "module" } }, { @@ -19,8 +18,7 @@ "type": "script", "uri": "com_patchtester/patchtester.js", "attributes": { - "type": "module", - "defer": true + "type": "module" } }, { diff --git a/media/com_patchtester/js/patchtester.js b/media/com_patchtester/js/patchtester.js index a040914..f860433 100644 --- a/media/com_patchtester/js/patchtester.js +++ b/media/com_patchtester/js/patchtester.js @@ -1,56 +1,34 @@ /** * Patch testing component for the Joomla! CMS * - * @copyright Copyright (C) 2011 - 2012 Ian MacLennan, Copyright (C) 2013 - 2018 Open Source Matters, Inc. All rights reserved. - * @license GNU General Public License version 2 or later + * @copyright (C) 2023 Open Source Matters, Inc. + * @license GNU General Public License version 2 or later; see LICENSE.txt */ if (typeof Joomla === 'undefined') { throw new Error('PatchTester JavaScript requires the Joomla core JavaScript API') } -document.addEventListener("DOMContentLoaded", function (event) { - const submitPatch = document.querySelectorAll(".submitPatch"); +Joomla.submitbutton = (task) => { + if (task !== 'reset' || confirm(Joomla.JText._('COM_PATCHTESTER_CONFIRM_RESET', 'Resetting will attempt to revert all applied patches and removes all backed up files. This may result in a corrupted environment. Are you sure you want to continue?'))) { + Joomla.submitform(task); + } +}; - /** - * EventListener which listens on submitPatch Button, - * checks if it is an apply or revert method and - * processes the patch action - * - * @param {Event} event - */ - submitPatch.forEach(function (element) { - element.addEventListener("click", function (event) { - const currentTarget = event.currentTarget; - const task = `${currentTarget.dataset.task}.${currentTarget.dataset.task}` - const id = parseInt(currentTarget.dataset.id) +/** + * EventListener which listens on submitPatch Button, + * checks if it is an apply or revert method and + * processes the patch action + * + * @param {Event} event + */ +document.querySelectorAll(".submitPatch").forEach((element) => element.addEventListener("click", (event) => { + const element = document.getElementById('pull_id'); + const target = event.currentTarget; + + if (element) { + element.value = parseInt(target.dataset.id); + } - PatchTester.submitpatch(task, id); - }); - }); -}); - -!function (Joomla, window, document) { - 'use strict'; - - window.PatchTester = { - /** - * Process the patch action - * - * @param {String} task The task to perform - * @param {Number} id The item ID - */ - submitpatch: function (task, id) { - var idField = document.getElementById('pull_id'); - idField.value = id; - - Joomla.submitform(task); - } - }; - - Joomla.submitbutton = function (task) { - if (task !== 'reset' || confirm(Joomla.JText._('COM_PATCHTESTER_CONFIRM_RESET', 'Resetting will attempt to revert all applied patches and removes all backed up files. This may result in a corrupted environment. Are you sure you want to continue?'))) { - Joomla.submitform(task); - } - }; -}(Joomla, window, document); + Joomla.submitform(`${target.dataset.task}.${target.dataset.task}`); +}));