173 Commits

Author SHA1 Message Date
int2001
5ade631d92 Better debugging for 3rd party-apps 2025-04-25 14:42:35 +00:00
int2001
14e4986b5f Check key before doing hugee SQLs 2025-03-23 14:26:29 +00:00
int2001
9f2286b6ad Added RTTY-Translations for Yaesu and icom 2025-02-19 17:39:38 +00:00
Joerg (DJ7NT)
0abfcfe973 Added icom Reverse CW 2025-02-19 07:06:18 +01:00
Andreas Kristiansen
9e2d633326 [Cat API] Added CWU and CWL 2025-02-18 18:54:32 +01:00
Andreas Kristiansen
00134b7772 [API] Made api endpoint for wp plugin 2025-02-13 11:50:06 +01:00
phl0
7788fa2b45 Better replace \r\n\t only after <eor> and before the next tag 2025-02-08 21:16:33 +01:00
phl0
45ab0b551b Trim \r\n\t on ADIF before parsing JSON 2025-02-08 20:59:58 +01:00
HB9HIL
ee62f45acd init variable 2025-01-20 13:12:30 +01:00
Fabian Berg
9613e39703 Merge pull request #1459 from zone11/dev
Add API Endpoint to retrieve the version of Wavelog running
2025-01-05 12:27:20 +01:00
zone11
e8b1bc9249 Make it JSON in/out 2025-01-05 11:54:50 +01:00
zone11
35c1a93789 Make it a POST request and report status 2025-01-04 22:17:50 +01:00
zone11
2fc64208df Add API endpoint /version 2025-01-04 21:46:09 +01:00
int2001
c9f1bab0f2 If operator isn't defined at record a php came up 2025-01-02 16:55:11 +00:00
Fabian Berg
c70c2ec5cd Clubstations for Wavelog (#1334)
* feat[clubstations]: New DB structure

* feat[clubstations]: Add clubstationstable in user managment

* feat[clubstations]: Show last operator

* feat[clubstations]: Better solution for last operator. tnx for the hint @int2001

* feat[clubstations]: New Club Model and Controller

* feat[clubstations]: Add "Add User" and "Edit User" functionality

* docs[clubstations]: move comment

* feat[clubstations]: Add "Delete Member" functionality

* feat[clubstations]: some enhancements and javascript

* fix[clubstations]: Wrong message class for flashmessages

* feat[clubstations]: Added Switch in the Header menu (not functional yet)

* feat[clubstations]: clubswitch modal

* fix[clubstations]: Load encryption library if not already loaded

* fix[clubstations]: Prevent direct login attempts to clubstations and enhance impersonation authorization

* fix[clubstations]: Typo

* feat[clubstations]: Only show the operator dialog if there is something fishy

* fix[user]: little UI bug

* feat[impersonate]: Add source uid to session data

* fix[impersonate]: logic adjustment

* feat[clubstations]: Add manage button in header menu for club officers

* fix[clubstations]: typo in permission level check

* fix[clubstations]: Full rights for the admin

* feat[impersonate]: Custom sessiondata

* feat[impersonate]: Implement stop impersonation feature with modal confirmation; "the way back"

* fix(modal): Fix bug where modal was hidden when mouse leaved the browser content

* docs(config): Adjust config description for special callsigns and clubstations

* feat(club): Add club access check helper

* typo

* fix[impersonation]: Better text

* feat(club): Selectize for a efficient user search

* feat(clubstations): Restrict clubstations based on users permission level part 1/x

* adjustments for dev merge

* Adjusted club right for the advanced logbook

* feat[user]: Refactoring of the Action Buttons in the user table

* fix[club_permissions]: normal button instead small one for club permissions

* remove unnecessary line break in modal body

* feat[clubstations]: Add Club Mode badge to the header

* fix[clubstations]: fix maintenance mode

* allow switch back on http

* feat(simplefle): display operator input based on club_access

* small UI adjustments

* small UI adjustments

* moved api page to a index.php file and added support for clubstations

* removed unused stuff

* typo

* radios and api keys

* missed one binding

* fix qso view, even officers do just see their own radios in QSO logging

* omit the need for a relogin to see the changes as an admin

* Omit the need for relogin after club changes in general. It's a question of UX. It's better to accept a little higher DB load (if clubstations are enabled) then the need of an user to relogin. There is some room for improvement by changing user_model->get_by_id() and adding a join there. This can be done later if we see that the load is too high

* If the user is not the creator of the API key, it's likely a clubstation. In this case the callsign of the clubstation can not be the same as the callsign of the user (operator call provided by the user). If this is the case, we need to use the callsign of the creator of the API key

* remove debug messages

* better UI in header

* found a typo

* full access in clubstations for admins (if accessed via admin usertable)

* adjusted text

* adjusted text

* adjust text

* reduce required chars

* bugfix: missing the correct authentication in case the admin was not member of the club. he wasn't able to switch back

* reduce debug messages

* fixed UI bug related to tooltips

* load js in controller

* upps..

* some UI adjustments

* corrected permissions

* if user gets delete we need to remove data in club_permissions and also api keys which were created by this user

* Notify members about new memberships or changes in permission level

* add spinner to save button

* make login/logout process more bulletproof

* remove the relogin cookie after the attempt

* better strategy

* bug where switch back failed if user is no admin

* make api keys more secure

* mask not owned api keys

* removed annoying link

* if a user gets removed from a club we also should delete the corresponding api keys and cat radios

* adjusted wiki link

* Auto creation of logbook and location when new user is created

* store and display locator in uppercase

* same for callsign

* fixed a bug in user/club creation

* Revert "Auto creation of logbook and location when new user is created"
We found another solution to which will be addressed in a second PR
This reverts commit f05f4b7bf0.

* Optimized SQL for stats at userlist

* Source query for lastop "out", because mysql<9.0 can't handle Windowed functions

* adjust migration

* add new columns to users table to get created_at and modified_at

* added a partial down function

* add operator dropdown for clubstations

* fix mig version

* Add some backend restrictions in case a user wants to try something funny with the club

---------

Co-authored-by: Andreas Kristiansen <6977712+AndreasK79@users.noreply.github.com>
Co-authored-by: int2001 <joerg@dj7nt.de>
2025-01-02 10:22:23 +01:00
Joerg (DJ7NT)
017643f6f4 Merge pull request #1407 from int2001/api_error
If there was an error at inserting QSO via API, return 400
2024-12-31 18:05:55 +01:00
int2001
d9b3c3d502 Calculate and fill distance (API) 2024-12-30 14:16:33 +00:00
int2001
58402a3b05 aborted instead of created 2024-12-29 09:22:26 +00:00
int2001
2015635d22 If there was an error at inserting QSO via API, return information and 400 2024-12-29 09:20:40 +00:00
HB9HIL
e2d1e65d23 added new adif fields to import logic 2024-12-13 08:55:53 +01:00
int2001
3c053f0bcc Set defaults when calling API 2024-11-20 17:33:17 +00:00
int2001
0c6774d393 Prevent leaking of CI-Errors / State 500 when calling function without key 2024-11-20 17:31:02 +00:00
HB9HIL
19e4223009 better wording in api response 2024-11-02 09:24:02 +01:00
phl0
408dedf929 API responst to show processed and failed ADIF items 2024-10-10 16:01:46 +02:00
int2001
1672a80251 Added call_worked_band and call_worked_band_mode 2024-10-01 17:05:57 +00:00
int2001
5c326b7d86 Tidy up legacy-comments 2024-10-01 06:14:03 +00:00
int2001
bd98577583 Default Values for call-cnf if call not found 2024-10-01 06:01:20 +00:00
int2001
5f7ff9ab2f Added call_cnf, call_cnf_band and call_cnf_band_mode as result 2024-10-01 05:38:41 +00:00
int2001
035e95356f Added a new api: /api/private_lookup 2024-09-30 08:06:04 +00:00
int2001
3159bea404 Removed typo 2024-09-20 16:26:15 +00:00
int2001
8195325cdd Fixes a security-issue with the INTERNAL lookup-API 2024-09-20 16:06:46 +00:00
int2001
16e66f7543 Implemented "Soft-limit" for API at 20k 2024-09-18 11:10:12 +00:00
int2001
6486294b30 Adds an optional "limit" to the "get_contacts_adif"-API 2024-09-18 09:04:05 +00:00
HB9HIL
3054b59891 fix flooding debug messages 2024-09-11 10:09:43 +02:00
int2001
38821fe280 Adds eQSL-Checkbox to importer (import as already sent) 2024-08-31 10:45:09 +00:00
phl0
108c268c42 Also internal messages should not be translated 2024-08-28 14:32:39 +02:00
phl0
d22f7fc07a API messages should not be translated 2024-08-28 14:29:26 +02:00
github-actions
e71e9ffc38 remove logging 2024-08-04 08:17:20 +02:00
github-actions
3c8bdd3b8a map CW-U and CW-L to CW 2024-08-03 13:32:02 +02:00
DB4SCW
8266d3e8ee fix a bug when 0 qsos are returned for pull api 2024-08-02 18:48:40 +00:00
DB4SCW
1b2b85d3f0 changed exportall ADIF view to be switchable between internal render and file download 2024-07-31 13:28:18 +00:00
DB4SCW
dcabead239 add description comment to api endpoint and changed wording from goalpost to fetchfromid and lastfetchedid 2024-07-30 21:00:59 +00:00
DB4SCW
209424722b added SQL injection prevention layers 2024-07-30 15:15:23 +00:00
DB4SCW
c32d48f22f initial implementation of Pull API for ADIF QSO data 2024-07-30 13:27:25 +00:00
www-data
b613c0f418 initial implementation of Pull API for ADIF QSO data 2024-07-30 08:50:29 +00:00
HB9HIL
c9db79e4d9 only load Qra Lib if it isn't already, flooding log 2024-07-15 05:59:47 +02:00
HB9HIL
e74eb3b9af adjust language 2024-06-29 19:04:15 +02:00
HB9HIL
784e3c86cf matching syntax 2024-06-08 14:09:20 +02:00
HB9HIL
2a5c6538aa page titles 2024-06-08 11:01:59 +02:00
int2001
9ccec17290 Removed debug 2024-04-26 13:54:12 +00:00