Commit graph

21 commits

Author SHA1 Message Date
Peter Goodhall
f5e3aac0d0 Cast IDs to int; use query builder
Normalize incoming ID parameters to integers and replace concatenated/raw SQL with CodeIgniter query builder. Controllers (Contesting.php, Themes.php) now cast $id to (int) instead of using xss_clean; models (Contesting_model.php, Themes_model.php) cast $id and use $this->db->where()/get()/select() to build queries. This improves type safety and reduces risk of injection while using more idiomatic CI DB APIs.
2026-06-24 22:08:30 +01:00
Peter Goodhall
4c1dd7a42d Add Cabrillo export modal & format improvements
Add a full Cabrillo export workflow and harden Cabrillo/QSO formatting. Introduces a modal UI to export contest logs (new button + modal form with fields for location, category time, operators, club, soapbox, date range and other Cabrillo categories). Controller updates pass the new fields to the export action. Cabrilloformat library extended to accept and emit LOCATION and CATEGORY-TIME, improve header field ordering and presence checks, map ADIF modes to the five Cabrillo modes (CW/PH/FM/RY/DG), fix a band label (2.4G -> 2.3G), and emit placeholders for missing received exchanges to preserve column alignment. Contesting_model: more robust date parsing with UTC fallback, ensure session QSO marker only persists when timestamp valid, and build start timestamp when LIVE mode omits start_date/start_time. Frontend JS: setSession() now returns the ajax promise so callers can await it; several callers updated to await setSession and re-fetch session data before refreshing the QSO table; restore full table search on callsign blur and when suggestions are cleared. Misc: small form/input fixes (club field type, default overlay option) and additional server-supplied data loaded into the contesting view (active station id, contest session, station profile). These changes add required Cabrillo fields for certain contests and make exports and session handling more reliable.
2026-03-27 00:04:21 +00:00
root
f03b96968e Contesting Dupe Check Improvement 2024-03-08 12:41:12 +00:00
Peter Goodhall
4128425f2d Resolves issue when no previous contest qsos have been set and table was empty
Should resolve #2919 #2139
2024-01-14 18:04:46 +00:00
int2001
88cf148055
Added "ago" to the relative Time, truncated seconds 2023-12-31 07:01:43 +00:00
int2001
48838c4365
Added absolute Time of last-qso to "worked before" banner 2023-12-31 06:55:25 +00:00
int2001
70db88b521
Added time of "Worked before" in Contest-Section 2023-12-30 20:17:24 +00:00
phl0
83b3261034
Fix lookups for empty contest sessions 2023-11-09 15:11:36 +01:00
HB9HIL
ae949e3b2f Contest Controller Adjustments 2023-10-06 13:14:54 +02:00
HB9HIL
65c9f5e9fb Contest Translations 2023-10-06 10:48:01 +02:00
Andreas
b481fdbb38 [Contest logging] Moved contest session from local storage to database 2023-04-10 18:54:24 +02:00
Andreas
71b38c72a5 [Bands] Contest logging band dropdown fetches bands from db. 2022-09-08 20:19:41 +02:00
Andreas
36d1b75484 [Contesting] Implemented dupecheck 2021-10-24 16:48:23 +02:00
Andreas
93b6cba00e [Contests] Added buttons for activate/deactivate all 2021-10-23 19:44:41 +02:00
Andreas
e0e80fb680 [Contesting] Fixed so that correct gridsquare was shown in the view. Also removed some unused code in the controller. 2021-10-07 21:42:19 +02:00
Andreas
adaa7f3f8a [Contesting] Contests can be added/edited/deleted inside Cloudlog. Used for choosing Contest in Contest Logging 2021-02-12 23:27:08 +01:00
Peter Goodhall
5623b004c1 [Contesting][Translate] Converted Contest Interface to use Translate system with english words.
Contesting now ready for translating into languages other than english
2021-01-05 16:14:50 +00:00
Andreas
9e790340d7 [Contesting] Restoring QSO table. 2020-12-28 19:55:51 +01:00
Paul Beesley
8ba41812ad Tweaks to text
Touches page titles, some table headers (capitalisation mostly), menu items.
2020-12-23 13:01:20 +00:00
Andreas
e83e7340f5 [Contest logging] Started work on the logging form. 2020-11-08 10:46:08 +01:00
Peter Goodhall
5412fcb3ac Added contesting controller the start of #347 2019-09-11 17:38:09 +01:00