diff --git a/public/assets/script.js b/public/assets/script.js index 57d6650..aeeb33f 100644 --- a/public/assets/script.js +++ b/public/assets/script.js @@ -97,12 +97,28 @@ IgniteKitDeactivateFeedback.FormHandler.prototype.start = function () { var FormDeactivate = document.getElementById(self.prefix + 'deactivate_feedback--form'); FormDeactivate.addEventListener('submit', function (e) { e.preventDefault(); + var form = FormDeactivate.closest('form'); + if (form) { + form.classList.add('iwpdf-form-loading') + } + var button = FormDeactivate.querySelector('.iwpdf-form-submit'); + if (button) { + button.setAttribute('disabled', ''); + } var formData = new FormData(this); var httpReq = new XMLHttpRequest(); httpReq.open('POST', FormDeactivate.action, true); httpReq.onreadystatechange = function () { if (httpReq.readyState === 4) { self.deactivatePlugin(); + setTimeout(function(){ + if (form) { + form.classList.remove('iwpdf-form-loading'); + } + if (button) { + button.removeAttribute('disabled'); + } + },2000); } }; httpReq.send(formData); diff --git a/public/assets/style.css b/public/assets/style.css index 37a5b9f..9efec0c 100644 --- a/public/assets/style.css +++ b/public/assets/style.css @@ -180,4 +180,26 @@ .iwpdf-modal__content p.iwpdf-modal__content-intro { margin-bottom: 20px; margin-top: 15px -} \ No newline at end of file +} +.iwpdf-modal__container form:not(.iwpdf-form-loading) .iwpdf-spin { + display:none; +} +.iwpdf-spin { + animation: iwpdf-dashicons-spin 1s infinite; + animation-timing-function: linear; +} + +.iwpdf-form-submit .dashicons { + position: relative; + top: 3px; + margin-right: 3px; +} + +@keyframes iwpdf-dashicons-spin { + 0% { + transform: rotate( 0deg ); + } + 100% { + transform: rotate( 360deg ); + } +} diff --git a/public/views/form.php b/public/views/form.php index cc1ffc2..23c5e6f 100644 --- a/public/views/form.php +++ b/public/views/form.php @@ -68,7 +68,7 @@