diff --git a/application/views/interface_assets/footer.php b/application/views/interface_assets/footer.php index b3aa66eb..17d81303 100644 --- a/application/views/interface_assets/footer.php +++ b/application/views/interface_assets/footer.php @@ -1681,7 +1681,7 @@ if ($this->session->userdata('user_id') != null) { $('#notice-alerts').delay(1000).fadeOut(5000); function setRst(mode) { - if (mode == 'JT65' || mode == 'JT65B' || mode == 'JT6C' || mode == 'JTMS' || mode == 'ISCAT' || mode == 'MSK144' || mode == 'JTMSK' || mode == 'QRA64' || mode == 'FT8' || mode == 'FT4' || mode == 'JS8' || mode == 'JT9' || mode == 'JT9-1' || mode == 'ROS') { + if (mode == 'JT65' || mode == 'JT65B' || mode == 'JT6C' || mode == 'JTMS' || mode == 'ISCAT' || mode == 'MSK144' || mode == 'JTMSK' || mode == 'QRA64' || mode == 'FT8' || mode == 'FT4' || mode == 'JS8' || mode == 'JT9' || mode == 'JT9-1' || mode == 'ROS' || mode == 'Q65' || mode == 'FST4' || mode == 'FST4W') { $('#rst_sent').val('-5'); $('#rst_rcvd').val('-5'); } else if (mode == 'FSK441' || mode == 'JT6M') { diff --git a/assets/js/sections/simplefle.js b/assets/js/sections/simplefle.js index ad7c8de5..4bbb259e 100644 --- a/assets/js/sections/simplefle.js +++ b/assets/js/sections/simplefle.js @@ -174,14 +174,13 @@ function handleInput() { /^[A-Z0-9]{1,3}\/[A-Z]{2}-\d{3}|[AENOS]*[FNSUACA]-\d{3}|(?!.*FF)[A-Z0-9]{1,3}-\d{4,5}|[A-Z0-9]{1,3}[F]{2}-\d{4}$/i ) ) { - sotaWwff = item.toUpperCase(); - } else if ( + sotaWwff = item.toUpperCase(); } else if ( item.match( /([a-zA-Z0-9]{1,3}[0-9][a-zA-Z0-9]{0,3}[a-zA-Z])|.*\/([a-zA-Z0-9]{1,3}[0-9][a-zA-Z0-9]{0,3}[a-zA-Z])|([a-zA-Z0-9]{1,3}[0-9][a-zA-Z0-9]{0,3}[a-zA-Z])\/.*/ ) ) { callsign = item.toUpperCase(); - } else if (itemNumber > 0 && item.match(/^\d{1,3}$/)) { + } else if (itemNumber > 0 && (item.match(/^\d{1,3}$/) || item.match(/^[+-]\d{1,2}$/))) { if (rst_s === null) { rst_s = item; } else { @@ -566,6 +565,15 @@ function getReportByMode(rst, mode) { return "599"; } + // Handle digital modes with dB signal reports (e.g., -09, +00) + if ((mode.toUpperCase() === "FT8" || mode.toUpperCase() === "FT4" || mode.toUpperCase() === "JS8" || + mode.toUpperCase() === "JT65" || mode.toUpperCase() === "JT65B" || mode.toUpperCase() === "JT6C" || + mode.toUpperCase() === "JTMS" || mode.toUpperCase() === "ISCAT" || mode.toUpperCase() === "MSK144" || + mode.toUpperCase() === "JTMSK" || mode.toUpperCase() === "QRA64" || mode.toUpperCase() === "JT9" || + mode.toUpperCase() === "JT9-1" || mode.toUpperCase() === "ROS" || mode.toUpperCase() === "Q65" || + mode.toUpperCase() === "FST4" || mode.toUpperCase() === "FST4W") && rst.match(/^[+-]\d{1,2}$/)) { + return rst; + } if (settingsMode === "SSB") { if (rst.length === 1) {