diff --git a/application/views/contesting/index.php b/application/views/contesting/index.php
index 6e4aff2d4..33c286cbe 100644
--- a/application/views/contesting/index.php
+++ b/application/views/contesting/index.php
@@ -236,7 +236,7 @@
-
+
diff --git a/assets/js/sections/contesting.js b/assets/js/sections/contesting.js
index b17bd8772..018ee70e9 100644
--- a/assets/js/sections/contesting.js
+++ b/assets/js/sections/contesting.js
@@ -650,6 +650,10 @@ function logQso() {
// Only "Start a new contest session" will enable it again
disabledContestnameSelect(true);
+ // Avoid resubmission by disabling the button
+ var saveQsoButtonText = $("#saveQso").html();
+ $("#saveQso").html(' ' + saveQsoButtonText + '...').prop('disabled', true);
+
$('.callsign-suggestions').text("");
$('#callsign_info').text("");
@@ -747,6 +751,8 @@ function logQso() {
var qTable = $('.qsotable').DataTable();
qTable.search('').order([0, 'desc']).draw();
+ // Re-enable the previously disabled button for resubmission avoidance
+ $("#saveQso").html(saveQsoButtonText).prop("disabled", false);
}
});
}