Skip to content

2.8.14

Latest

Choose a tag to compare

@magicbug magicbug released this 05 Jun 12:38
a3cb952

Cloudlog 2.8.14 Changelog

Plugins and Extensions

  • Added a Plugin Manager: I have built a brand-new plugin framework and management UI. You can now upload, install, enable, disable, or delete ZIP-packaged plugins. It includes built-in manifest validation and CSRF protection.
  • Auto-Disable on Failure: If a plugin hits a runtime error, throws an exception, or misses a hook method, Cloudlog will automatically disable it safely and log the reason to keep your installation stable.
  • Plugin Security Scanner: To keep your server secure, the installer now scans plugin code for forbidden system and execution functions. It will block the install or disable the plugin if anything dodgy is found, showing a warning banner to admins.
  • Plugin Awards Support: Added support for third-party awards provided by plugins. You can toggle their visibility in your user settings, and the main header will only display the ones you have enabled.

CW and WinKey Improvements

  • CW Speaker Sidetone: Added a client-side audio sidetone feature using the browser's AudioContext. It includes a responsive UI layout on the QSO view with a form-switch to enable it, a frequency slider, and a volume range control (saved to your browser's local storage).
  • WinKey WebSocket Relay Support: Introduced optional support for an external WinKey WebSocket relay. You can configure this directly in your account settings (URL, token, and room), and it will sync across your devices. The interface automatically handles connection states and switches smoothly between local connections and the relay.
  • Macro Layout Revamp: Swapped out the old stacked inputs for a much cleaner, responsive grid for F1–F5 macros, complete with placeholder examples.
  • Keyboard Tweaks: You can now press the Enter key in the CW free-text input field to send messages instantly. I also fixed the input clearing logic to ensure focus stays on the text box so you can keep typing without clicking back into it.

UI and Mobile Responsiveness

  • Responsive Dashboard: Refactored the dashboard code to make it look much better on phones. It now detects mobile devices to reduce recent QSO rows, collapses cards for a more compact view, adds mobile-specific quick links, and optimizes HTMX polling.
  • Responsive Logbook Header and Tables: Re-arranged the logbook header layout so it stacks nicely on small screens. Less critical columns in the logbook table now hide automatically on narrow viewports to maximize space.
  • Improved QSO View on Mobile: Added horizontal scrolling for tab bars on small screens, made form fields stack cleanly, and added a collapsible "More QSO Fields" button to hide optional fields out of the way. The QSO map is now hidden on mobile devices.

CAT, Radio, and Satellite Tracking

  • Resilient CAT Polling: Replaced the old fixed 3-second interval polling with a smarter system using exponential backoff. It tracks consecutive failures, schedules polls intelligently, only polls the selected radio, and displays a UI warning banner if the radio drops offline.
  • Radio Cache Prevention: Added headers to stop browsers from caching radio JSON data, ensuring you are always seeing fresh CAT data on the UI.
  • Satellite Field Locking: Introduced a lock mechanism to prevent CAT polling from accidentally overwriting your manually entered satellite data (#sat_name, #sat_mode, and propagation) when tracking satellites. It also now prefers the selected radio's CAT data over saved satellite defaults when a radio is actively in use.

Awards and Contesting

  • DXCC Year Filter: Added a new year dropdown filter to the DXCC awards page, allowing you to narrow down your worked DXCC results by specific years.
  • GMDX Summer Challenge: Updated the challenge logic and dates for the 2026 window (11 May – 5 July 2026). It also normalises gridsquares and groups modes into CW, Voice, and Digital so combined counts are consistent and case-insensitive.

Logbook, Imports, and Data Handling

  • VUCC Multi-Grid Support: Cloudlog now prefers COL_VUCC_GRIDS over COL_GRIDSQUARE when populating fields and plotting coordinates, allowing proper mapping for multi-grid line and corner operations.
  • Faster Bulk Imports: Added an option to skip clearing the dashboard cache after every single record during a bulk import. It now clears the cache just once at the very end of the loop, which massively speeds up large uploads.
  • Clublog Upload Feedback: Improved the Clublog upload process to track whether any QSOs were actually sent. If nothing is pending, it will log the info and let you know on-screen rather than silently finishing.
  • Advanced Search State: The Advanced Logbook view now persists your UI state (like collapsed sections, visible columns, and selections) using local storage, alongside a new status display showing result and selection counts.
  • Bug Fixes: * Fixed an issue where the wrong variable was checked before clearing the dashboard cache during exports.
    • Added safety checks to prevent PHP notices if certain database columns (like winkey_websocket or varying permission column names in older databases) are missing or null.
    • Fixed duplicate Escape key handling that caused accidental double-resets on the QSO page, and ensured satellite fields restore properly on Escape.
    • Ensured the selected radio state and QSO start_date are correctly reapplied and resynced as post-save defaults after logging a contact.