Commit graph

3014 commits

Author SHA1 Message Date
Peter Goodhall
86900513f8 Support markdown images in release notes
Adds CSS styling for images in release notes and updates the markdown parser to convert image syntax (![alt](url)) to HTML <img> tags. This improves the display of images in the version dialog.
2025-11-07 15:56:29 +00:00
Peter Goodhall
82a5e441d0 Improve markdown rendering in version dialog
Enhanced the PHP markdown-to-HTML conversion for release notes in the version dialog modal. Added CSS for better styling, improved handling of code blocks, lists, headers, links, bold/italic text, and cleaned up line break conversions for more accurate and readable output.
2025-11-07 15:55:26 +00:00
Peter Goodhall
63ec8ff1c4 Add bulk satellite assignment to logbook entries
Introduces functionality to assign satellite information to multiple QSOs in Logbook Advanced. Adds controller and model methods for updating satellite data, a new view for satellite selection, and corresponding frontend logic to handle user interaction and update selected entries.
2025-11-07 15:28:18 +00:00
Peter Goodhall
8ad5256328 Use language string for station profile label
Replaced the hardcoded 'Station Location' label with the language string 'cloudlog_station_profile' for improved localization support.
2025-11-06 13:43:09 +00:00
Peter Goodhall
ec1f2d8ddd Add station location selection to Logbook Advanced
Introduces the ability to view and change the station location for selected QSOs in Logbook Advanced. Updates backend, frontend, and QSO model to support station location display and modification, including new UI elements and AJAX handlers. Removes SimpleFLE documentation file.
2025-11-06 11:00:44 +00:00
Peter Goodhall
260b081450 Remove unused header and clean up index.php layout
Eliminated an unused header section and improved formatting in the simplefle index view. Minor CSS adjustments were made for better table display and code readability.
2025-11-05 22:31:14 +00:00
Peter Goodhall
3115689503 Improve QSO table layout and responsiveness
Added fixed column widths and ellipsis styling to QSO table headers and rows for better horizontal scrolling and readability. Updated CSS and HTML structure to enhance table responsiveness and appearance on various screen sizes.
2025-11-05 22:27:30 +00:00
Peter Goodhall
bdd3278f4c Improve SimpleFLE UI and session restore logic
Refactored the SimpleFLE interface for better spacing, clarity, and mobile responsiveness. Enhanced button styling and feedback areas, and moved satellite feedback for improved visibility. In JavaScript, session data restoration now occurs after satellite data loads, ensuring correct initialization and reducing race conditions.
2025-11-05 22:15:15 +00:00
Peter Goodhall
064ab14305 Add satellite feedback UI to SimpleFLE form
Introduces a visual feedback area in the SimpleFLE form to display satellite name and available modes when satellite-related input is detected. Updates JavaScript to show/hide feedback in real time as users type, highlight selected modes, and handle cases where satellites are not found in the database. Feedback is cleared when switching to regular bands or clearing the session.
2025-11-05 22:07:24 +00:00
Peter Goodhall
e9490cb1b9 Add satellite and gridsquare support to SimpleFLE
Enhanced the syntax help and JavaScript logic to support satellite QSOs and gridsquares. Satellite contacts can now be entered using 'sat' or 'satellite' keywords, with automatic frequency/mode population from a satellite database. Gridsquares can be included with callsigns, and both features are now parsed, displayed, and saved in the QSO table and backend.
2025-11-05 16:41:52 +00:00
Peter Goodhall
e0e3fae28a Support user date format preference in footer
Updated the date formatting logic in footer.php to use the user's preferred date format from session or config. The date input now displays according to various supported formats, improving localization and user experience.

Hopefully fixes #3358
2025-10-18 15:10:03 +01:00
Peter Goodhall
2c33a8f3ff Add 1+ option to Min QSOs filter dropdown
Introduces a '1+' option to the Min QSOs select field in the most worked view, allowing users to filter results with a minimum of one QSO.
2025-10-14 16:07:23 +01:00
Peter Goodhall
e6ecfa4f1b Require Clublog username to be a valid email address
Enforces that Clublog usernames are valid email addresses throughout the application, reflecting Clublog's policy change to no longer accept callsigns as usernames. Updates validation in controllers, models, and views, adds a migration to clear non-email usernames, and updates language files in multiple languages to clarify the requirement.
2025-10-13 13:40:56 +01:00
Peter Goodhall
cc3d728a1d Improve result limits and defaults in logbook and OQRS
Added validation and default values for result limits in Logbookadvanced_model and Oqrs_model to prevent invalid or empty limits. Updated views to set default selected options for result limits in logbook advanced and OQRS request pages. Also fixed SQL order by column alias typos in Logbookadvanced_model.
2025-10-11 10:27:47 +01:00
Peter Goodhall
00aa3bcc0b Improve CW macro handling and error management
Enhanced the Qso controller with better error handling, input validation, and user/session checks for CW macro operations. Added a new cwmacros_test method for testing session data. Updated the footer JS to check for the message element before adding event listeners, preventing errors if the element is missing. Improved error handling in winkey.js when fetching macros to handle HTTP errors more gracefully.
2025-10-10 15:19:42 +01:00
Peter Goodhall
ad9e7b04e0 Improve CW macro saving and UI feedback
Enhanced macro saving with better input sanitization, error handling, and user feedback in Qso.php and Winkey.php. Updated modal forms to display save responses in a dedicated area. Improved JavaScript to handle default macro values and update button labels more robustly. Removed unnecessary WebSocket polling for CW speed in the footer.
2025-10-10 14:54:50 +01:00
Peter Goodhall
60e191ce74 Toggle #winkey div based on mode selection
Show the #winkey div when data.mode is 'CW' and hide it otherwise. This improves the UI by conditionally displaying the Winkey controls only when relevant.
2025-10-07 22:40:23 +01:00
Peter Goodhall
3204ffd531 Improve Winkey UI visibility and layout
Added dynamic visibility for the Winkey panel based on mode selection and protocol, ensuring it only appears in CW mode and over HTTPS. Refactored the Winkey UI layout for better structure and usability, including grouped function keys, improved speed control, message input, and status/message log presentation.
2025-10-06 14:45:31 +01:00
Peter Goodhall
e17cf47f53 Add CW speed control and message log toggle to QSO UI
Introduced CW speed adjustment controls and real-time speed display to the QSO interface, with supporting JavaScript for polling and updating speed via WebSocket. Added a toggle button to show or hide the message log, improving usability and user control over the interface.
2025-10-06 14:42:03 +01:00
Peter Goodhall
62380e0181 Expand band support and improve band display in bandmap
Added support for additional LF, MF, UHF, SHF, and EHF amateur radio bands in Bands model and bandmap view. Updated band ranges and ordering, and improved band name formatting in the bandmap UI for better clarity and consistency across all supported bands.
2025-10-04 23:05:20 +01:00
Peter Goodhall
d0bc360049 Redesign DX Cluster view with real-time WebSocket spots
Revamps the DX Cluster page to use a modern card/table layout, real-time spot updates via WebSocket, and DataTables for enhanced interactivity. Adds connection status indicators, frequency click-to-copy, and age-based row styling. Removes legacy AJAX spot lookup code from the footer.
2025-10-04 14:53:43 +01:00
Peter Goodhall
1fa7315d02 Add Radio Commands button to Active Radios card
Enhanced the Active Radios card header by adding a 'Radio Commands' button linking to the commands page. This improves navigation and accessibility for users managing radio commands.
2025-10-04 14:45:32 +01:00
Peter Goodhall
4f9cab6572 Remove FT8, FT4, and VFO C options from form
FT8 and FT4 modes, as well as VFO C, have been removed from the mode and VFO selection dropdowns in the commands index view. This streamlines the available options for users.
2025-10-04 14:17:08 +01:00
Peter Goodhall
d661b0a3b7 Remove Bandmap controller and enhance QSY mode handling
Deleted the Bandmap controller as part of code cleanup or refactoring. Improved the QSY command logic in Dxcluster by adding debug logging and handling the mode parameter more robustly. Updated the bandmap view to pass spot information, detect RBN spots, and send the appropriate mode (e.g., CW) with QSY commands.
2025-10-04 14:06:19 +01:00
Peter Goodhall
25a03ab1fa Add optimized radio command APIs and QSY integration
Introduces an optimized API endpoint to fetch all pending radio commands for a user in a single call, along with a maintenance endpoint for cleaning up expired and old commands. Updates the documentation to reflect these new endpoints and usage patterns. Adds a QSY endpoint to Dxcluster for queuing frequency/mode commands from the bandmap, and integrates client-side JavaScript to send QSY commands to the selected radio with user feedback. Enhances backend models to support user-scoped cleanup of expired and old commands.
2025-10-04 13:34:42 +01:00
Peter Goodhall
5c63e5099e Add radio command queueing and management system
Introduces a new radio command queueing system with API endpoints and a user interface for sending, viewing, and managing radio commands. Adds migration for the radio_commands table, extends the Cat model with command-related methods, and implements new controllers and views for both API and web interfaces. This enables integration with desktop apps and provides users with tools to send, track, and cancel radio commands.
2025-10-04 11:48:48 +01:00
Peter Goodhall
97195690b2 Integrate DX Cluster bandmap with QSO and layout
Refactored Dxcluster controller to use header and footer layouts. Removed standalone HTML structure from dxcluster/index.php to fit within the site layout. Added 'Open Bandmap' button and supporting JavaScript to qso/index.php for easier access to the bandmap from the QSO page.
2025-10-02 21:43:35 +01:00
Peter Goodhall
e603635df7 Fix band select dropdown value assignment
Replaces direct value assignment with a loop to find and select the dropdown option matching the band's start and end range. Adds console logs for debugging the selection process.
2025-10-02 18:28:05 +01:00
Peter Goodhall
fd4dc279b2 Display band name from dropdown in bandmap
Updated the bandmap to use the band name from the dropdown option text when displaying the current band. This ensures the displayed band name matches the user's selection and improves clarity, especially for bands with custom names.
2025-10-02 18:25:46 +01:00
Peter Goodhall
111daa29cb Fix band display for 70cm and 23cm bands
Update band display logic to show '70cm' and '23cm' instead of '70m' and '23m' for those specific bands. Also add debug logging to band selection for easier troubleshooting.
2025-10-02 18:24:27 +01:00
Peter Goodhall
c9a192900f Update bandmap.php 2025-10-02 18:22:44 +01:00
Peter Goodhall
e0e12a2caa Add VHF/UHF bands to bandmap options
Added 2m, 70cm, and 23cm band options to the bandmap selection in the dxcluster view to support additional amateur radio bands.
2025-10-02 18:20:54 +01:00
Peter Goodhall
7b25beebb8 Handle satellite RX frequency in bandmap auto-tracking
Updated bandmap auto-tracking logic to use RX frequency when satellite mode is detected, ensuring correct frequency handling for satellite contacts. Added console logging to indicate when satellite mode is active.
2025-10-02 18:18:12 +01:00
Peter Goodhall
e48219ca3b Add DX Cluster link to Tools dropdown menu
Introduced a new 'DX Cluster' item in the Tools dropdown of the header, providing quick access to the DX Cluster page.
2025-10-02 18:06:07 +01:00
Peter Goodhall
5c13fb8f52 Add radio auto-tracking toggle to bandmap
Introduces a UI toggle and supporting logic for enabling or disabling automatic bandmap tracking of the selected radio's frequency. The bandmap now polls the radio endpoint and updates the view to follow the radio frequency when auto-tracking is enabled. Also adjusts the bandmap popup width in the cluster index view.
2025-10-02 18:03:10 +01:00
Peter Goodhall
5f0c95804a Add user-specific bands to bandmap and persist radio selection
The bandmap now displays only the bands configured for the current user, using a new Bands model method to retrieve and order them. The band selection dropdown in the bandmap view is dynamically generated based on user bands, with a fallback to defaults. Additionally, the selected radio is now persisted in localStorage and synchronized across selects, and the bandmap window width was adjusted for better display.
2025-10-02 17:40:49 +01:00
Peter Goodhall
c39e727f9a Add DX Cluster controller and bandmap views
Introduces a new Dxcluster controller with authorization checks and two views: a main index page and an interactive bandmap for real-time DX spots visualization. The bandmap view includes a WebSocket connection to a DX Cluster server, dynamic spot rendering, zoom, band selection, and user interface enhancements.
2025-10-02 14:19:39 +01:00
Peter Goodhall
57e4d6fe6a Remove commented-out SAT Timers menu item
Cleaned up the header by deleting unused, commented-out code related to the SAT Timers dropdown menu item.
2025-10-02 09:54:53 +01:00
Peter Goodhall
8ee56acb17 Remove Bandmap feature and related files
This commit removes the Bandmap feature, including its controller, views, JavaScript assets, and navigation menu entry. This is because it was broken upstream
2025-10-02 09:46:01 +01:00
Peter Goodhall
fb94888404 Remove extra closing div from initials table
Eliminated an unnecessary closing </div> tag after the initials data table to correct HTML structure.
2025-09-25 16:47:20 +01:00
Peter Goodhall
d925b38454 Fix incorrect HTML table closing tag
Replaces the closing </tfoot> tag with </tbody> in the table output to ensure proper HTML structure.
2025-09-25 16:42:03 +01:00
Jonathan Naylor
025b462516 Add an EME Initials option to the Analytics menu option for EME
operators.
2025-09-24 19:27:49 +01:00
Peter Goodhall
4c6eb9fe06 Update index.php 2025-08-24 11:01:13 +01:00
Peter Goodhall
76f55f7f27 Add Most Worked Callsigns feature
Introduces a new 'Most Worked Callsigns' page, controller, model, and view to display callsigns worked multiple times from the active logbook. Adds language support for this feature in multiple languages and updates the navigation menu to include a link to the new page. Also includes DataTables integration and filter options for bands, modes, satellites, date range, and minimum QSOs.
2025-08-23 21:11:36 +01:00
Peter Goodhall
a89b04966e Improve error handling for hams.at API fetch
Adds robust error handling and user feedback for failures when fetching satellite data from the hams.at API. The controller now sets error states and messages for connection issues and invalid responses, and the view displays appropriate alerts to users.
2025-08-22 17:27:35 +01:00
Peter Goodhall
67a652bce6 Add archive status for LoTW certificates
Introduces an 'archived' boolean column to the lotw_certs table via migration, adds model and controller logic to toggle archive status, and updates the view to display and allow archiving/unarchiving of certificates. This enables users to mark LoTW certificates as archived for better management.
2025-08-22 17:15:51 +01:00
Peter Goodhall
5ff5e12890 Add public radio status option to logbooks
Introduces a new 'public_radio_status' field to station logbooks, allowing users to enable or disable the display of radio status on public logbook pages. Updates migration, controllers, model, views, and language files to support this feature and provide UI controls for toggling the option.
2025-08-22 14:52:07 +01:00
Peter Goodhall
31ac64ae65 Add offset parameter to visitor map view
Introduces an offset parameter to the Visitor controller and updates the footer view to include the offset in the map URL. This enables paginated or segmented access to QSOs for public logbook pages.

Fixes #3317
2025-08-19 17:38:45 +01:00
copilot-swe-agent[bot]
e15a881190 Fix visitor gridmap initialization and JavaScript integration
Co-authored-by: magicbug <84308+magicbug@users.noreply.github.com>
2025-08-19 16:21:35 +00:00
copilot-swe-agent[bot]
499e752dbd Fix form visibility and mode handling for visitor gridmap
Co-authored-by: magicbug <84308+magicbug@users.noreply.github.com>
2025-08-19 16:17:02 +00:00