Commit Graph

134 Commits

Author SHA1 Message Date
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
HB9HIL
4fcfd667e2 Static Map API (#1098)
Added new Static Map Feature

---------

Co-authored-by: phl0 <github@florian-wolters.de>
2024-10-31 10:26:59 +01:00
HB9HIL
c41e6e68dd update user session with impersonation flag 2024-08-27 23:06:22 +02:00
HB9HIL
847327d313 Revert "added operator firstname"
This reverts commit abba3fddad.
2024-08-27 20:01:06 +02:00
HB9HIL
9a76c83683 Merge branch 'dl250cdf_master' into dev 2024-08-26 22:35:28 +02:00
phl0
056c4e2165 Allow AMSAT status page upload for QSOs logged via API 2024-08-25 13:08:05 +02:00
HB9HIL
261e6c7284 Merge remote-tracking branch 'upstream/dev' into dl250cdf_master 2024-08-21 22:07:08 +02:00
HB9HIL
671c33d7de Merge remote-tracking branch 'upstream/dev' into dl250cdf_master 2024-08-17 21:25:48 +02:00
HB9HIL
1601af3e7d Merge remote-tracking branch 'upstream/dev' into impersonate 2024-08-16 20:07:50 +02:00
Andreas Kristiansen
f77bc87248 Need to use user_id upon login, since session is not set 2024-08-16 12:53:30 +02:00
Andreas Kristiansen
bf339a59c2 Easier fix, thanks @HB9HIL 2024-08-16 11:54:53 +02:00
Andreas Kristiansen
d5fa67ff47 Send in user_id 2024-08-16 11:34:31 +02:00
Andreas Kristiansen
e5fa0edd44 Null check needed, removed while testing 2024-08-16 11:22:31 +02:00
Andreas Kristiansen
c48b29c8ea Fixing qrg unit saving, and only load on login or change 2024-08-16 11:05:43 +02:00
HB9HIL
ee759d8b0d removed unused function 2024-08-16 08:17:27 +02:00
HB9HIL
c7fc6a0502 Merge remote-tracking branch 'upstream/dev' into dl250cdf_master 2024-08-09 11:06:43 +02:00
HB9HIL
cccf596ed9 Merge remote-tracking branch 'upstream/dev' into dl250cdf_master 2024-08-07 09:32:53 +02:00
HB9HIL
a6be9839e0 Merge branch 'dev' into default_radio 2024-08-06 00:16:26 +02:00
github-actions
0bb1f916fd default radio 2024-08-05 23:42:42 +02:00
github-actions
32c4e96cbf disable password change for demo users 2024-08-05 21:39:39 +02:00
github-actions
abba3fddad added operator firstname 2024-08-03 14:29:52 +02:00
HB9HIL
c73bf29f37 handle special chars in passwords 2024-07-22 22:47:15 +02:00
HB9HIL
600b31ee4b remove ip check, it's secure without aswell but more flexible 2024-07-11 15:31:38 +02:00
HB9HIL
afa3c0c682 proper encryption of keep login hash 2024-07-11 14:17:38 +02:00
HB9HIL
07a4682101 when updating the session fill the session data only with existing options. 2024-07-05 21:38:38 +02:00
HB9HIL
2970355f5c write radio and active station directly in session 2024-07-01 09:58:54 +02:00
HB9HIL
f339af6ae6 renamed 'language' column in users table to 'user_language' to avoid collisions 2024-06-06 10:46:12 +02:00
phl0
7592744620 We should use 1970 here (Unix time stimp 0) 2024-05-29 13:24:35 +02:00
HB9HIL
2f63da67ab Merge branch 'fix_cia' into date_comparison 2024-05-29 07:14:10 +02:00
HB9HIL
0fad103825 better comparison 2024-05-29 07:12:04 +02:00
int2001
9ab2d196a2 Fix last_seen (Compare Timestamp instead of seconds after full minute) 2024-05-29 04:22:19 +00:00
Andreas Kristiansen
52c54ae210 Merge branch 'import_speed' into import_speed 2024-05-26 08:45:22 +02:00
int2001
57bdafe2c0 Reduce load produced by the "CIA"-Function 2024-05-26 06:02:51 +00:00
Andreas Kristiansen
2ff5775a84 Remove one db call for each page load 2024-05-25 21:24:35 +02:00
int2001
6f90b54be8 Added to Advancedsearch as well 2024-05-13 09:19:24 +00:00
int2001
cba28293c9 Bring Clublog-"QSL" to Frontend 2024-05-13 08:02:10 +00:00
HB9HIL
a6cd207f37 add missing data to database 2024-05-09 14:08:25 +02:00
HB9HIL
bd4f2a2a50 don't overwrite pwd if it's the placeholder 2024-05-09 13:09:34 +02:00
HB9HIL
18eb23437d allow to remove lotw, eqsl and clublog password from db 2024-05-09 09:44:43 +02:00
int2001
da54d16ed6 Deletion of User tested 2024-04-03 08:22:06 +00:00
int2001
af053cabc1 Move deletion of QSOs / Stationprofiles to station_model 2024-04-02 16:53:28 +00:00
int2001
60a6011b37 Resorted deletes and added comment for Filesystem-Magic 2024-04-02 16:07:13 +00:00
int2001
a7c67d73f9 Delete all fragments which belongs to a user upon deleting 2024-04-02 15:42:21 +00:00
int2001
7e1a7f2fd1 Fix no value also at user_model 2024-03-22 09:18:00 +00:00
phl0
06205da573 Make DOK switchable to QSO tab 2024-03-22 08:35:02 +01:00
phl0
0671c99b0d Make SIG/SIG_INFO switchable 2024-03-22 08:26:26 +01:00
phl0
db816ff3f4 Make POTA switchable 2024-03-22 08:15:45 +01:00
phl0
907f0798c6 Make WWFF switchable 2024-03-22 08:06:54 +01:00
phl0
7b31239245 Make SOTA switchable 2024-03-22 07:57:31 +01:00
phl0
3326883ff6 Add swtich function to user creation as well 2024-03-22 07:17:55 +01:00