Commit Graph

638 Commits

Author SHA1 Message Date
amcmanu3
3c8614f378 Fix traceback when editing schedule 2022-08-05 16:01:26 -04:00
amcmanu3
75c8cdef53 Add names to schedules 2022-08-05 13:52:50 -04:00
Zedifus
390d995f53 Add flashing frontend notification
Co-authored-by: andrew.charles.mcmanus@gmail.com <andrew.charles.mcmanus@gmail.com>
2022-08-05 02:56:26 +01:00
Andrew
4f4798d44a Add serverjars cache refresh 2022-08-03 15:38:44 -04:00
Andrew
d1bdb6198b Fix server creation with serverjars API
By accident this adds some modded support.

TODO: Cleanup javascript in wizard.
Fix naming on selects in wizard
2022-08-02 21:08:53 -04:00
Andrew
9616ffb0a1 Fix bug where SU status wouldn't stick on creation
Clean up SU user edit logic
2022-07-19 11:21:22 -04:00
amcmanu3
383194cf66 Fix servers being out of order on creation page. 2022-07-18 17:12:43 -04:00
Zedifus
374454f11c Merge branch 'dev' into bug/fix-issue-#106 2022-07-18 21:17:41 +01:00
Zedifus
b7b4c7ac11 Merge branch 'dev' into bug/fix-issue-#106 2022-07-18 21:17:16 +01:00
Zedifus
523e51a0ae Merge branch 'dev' into Fix-Pylint-no-self-use 2022-07-18 21:09:51 +01:00
Silversthorn
98fa8e8940 Giving json to auth_data 2022-07-18 20:57:04 +02:00
Silversthorn
bc16e0df2b Revert "Revert changes on base_handler, fixing things in the api methods"
This reverts commit f863357633.
2022-07-18 20:53:49 +02:00
Silversthorn
f863357633 Revert changes on base_handler, fixing things in the api methods 2022-07-17 12:17:45 +02:00
Silversthorn
b6d6b9c0a4 Remove unused elements and move get_players to py file instead of html file 2022-07-17 10:57:25 +02:00
Silversthorn
8e58d5f8ac Trying Fixing issue #106 2022-07-16 10:49:48 +02:00
Silversthorn
ee2c2f8bb1 Better use of functions and objects 2022-07-16 10:06:49 +02:00
Silversthorn
9f30ca3931 Fix pylint no-self-use 2022-07-16 09:52:30 +02:00
Andrew
11260a34d6 Toggle Visible servers on status page 2022-07-14 18:26:42 -04:00
luukas
875767e16c
Merge branch 'dev' into feature/ajax-schedule-enabled 2022-07-13 15:48:09 +03:00
amcmanu3
a498ef8986 Check if username exists 2022-07-05 19:49:51 -04:00
amcmanu3
69f915616b Fix unhandled serverjars api error on server creation 2022-07-05 16:15:49 -04:00
luukas
147f178c87
Add a basic API for modifying schedules.
THIS IS VERY UNTESTED AND WILL BE EXPANDED TO FULL CRUD FOR SCHEDULES
2022-06-23 01:57:29 +03:00
amcmanu3
205bbf356f Fix traceback on server schedule creation page 2022-06-21 18:40:16 -04:00
amcmanu3
d8d80bbb42 Remove bad check for backup path 2022-06-21 17:41:52 -04:00
amcmanu3
b725054dcd Appease the linter 2022-06-21 17:36:50 -04:00
amcmanu3
97900cd283 Fix issue on path transversal backups linux 2022-06-21 17:35:34 -04:00
amcmanu3
fdfec80a39 Fix bug with sec logic 2022-06-21 17:14:35 -04:00
amcmanu3
950cbce27c Fix java logic issue 2022-06-21 17:00:51 -04:00
Zedifus
ffba1fb438 Merge branch 'dev' into enhancement/backup-failure-alert 2022-06-21 21:34:51 +01:00
amcmanu3
d3b1095867 Disable backups directory from changing bad paths 2022-06-21 16:14:29 -04:00
amcmanu3
6c360d1ff1 Make backup failed alert 2022-06-21 15:59:08 -04:00
Zedifus
28e313ee1d Revert back to 'Do not override' as default 2022-06-21 19:53:23 +01:00
Zedifus
7379545186 Strip empty entry in update-alternatives output
Catch ValueError on missing end quote in java execution command
2022-06-21 19:28:53 +01:00
Zedifus
176f5a4004 Add java selection POST check
Protect against tampered post requests to front end

Co-authored-by: andrew.charles.mcmanus@gmail.com <andrew.charles.mcmanus@gmail.com>
2022-06-21 18:39:20 +01:00
amcmanu3
c4fb6482cc Fix sec bug with server creation roles
Retain current java version in dropdown.
2022-06-21 01:18:19 -04:00
Zedifus
bad7a8d625 Merge branch 'dev' into feature/java-selection 2022-06-21 04:29:37 +01:00
Zedifus
69d1aa6c87 Appease linter 2022-06-21 03:31:40 +01:00
Zedifus
8e646df58c Add Java detect for win, and hook up to front end 2022-06-20 23:44:33 +01:00
amcmanu3
32b3551108 Add java selection code to panel handler 2022-06-20 17:56:26 -04:00
amcmanu3
7670b91cc6 Add backup shutdown feature
Add backup notif for failed backup
2022-06-20 17:16:56 -04:00
Andrew
7d286e60e0 Backup/Config.json rework for API key hardening
See merge request crafty-controller/crafty-4!369
2022-06-20 19:26:21 +00:00
Zedifus
b9a9007b4f Merge branch 'dev' into tweak/front-end 2022-06-18 23:12:24 +01:00
Andrew
9569e760c9 Fix api key permission logic issue 2022-06-18 17:40:50 -04:00
xithical
464428ea7e Remove erroneous print statements 2022-06-18 16:29:36 -05:00
xithical
8b6d70ba9a Fix bug where non-superusers could not edit their own API keys 2022-06-18 16:27:06 -05:00
Andrew
31097da971 Fix type issue comparing 2022-06-18 17:06:44 -04:00
Andrew
a8cd982b96 Fix warning message 2022-06-18 17:03:44 -04:00
Andrew
37765dbebc Fix general user can view any api-key page 2022-06-18 17:02:10 -04:00
Andrew
72f97e4ff0 Fix issue where any user could add/remove api keys 2022-06-18 16:55:39 -04:00
Andrew
fd0da1ef20 Fix any user can recieve all api keys 2022-06-18 16:20:57 -04:00
Andrew
e9bf2af83b Add wiki iframe as requested. 2022-06-18 15:57:37 -04:00
Andrew
e435292a52 Fix blank server_detail page for general users 2022-06-17 00:58:18 -04:00
Iain Powrie
43906d531e Merge branch 'bug/support_logs' into 'dev'
Bug/support logs

See merge request crafty-controller/crafty-4!354
2022-06-16 16:56:56 +00:00
amcmanu3
e3d289e6fd Fix support logs download issues 2022-06-16 12:11:21 -04:00
amcmanu3
35518e960f Fix username capital issues once and for all 2022-06-16 09:52:21 -04:00
luukas
581b6734d3
Remove unused server_uuid variables to fix Pylint 2022-06-16 15:31:11 +03:00
luukas
e009ff9819
Use relative paths for the jarfile and logs 2022-06-16 02:10:26 +03:00
amcmanu3
17ef71046c Merge branch 'master' into dev 2022-06-14 15:49:32 -04:00
amcmanu3
50438c485b Fix support log delete order.
Fix username uppercase.
2022-06-14 15:42:13 -04:00
luukas
e73dd682c8
Fix no-else-* QA warnings 2022-06-14 15:40:57 +03:00
Zedifus
f1340f4f45 Appease black 2022-06-13 22:35:33 +01:00
Iain Powrie
75d3baccbd Remove deprecated pylint rules
https://github.com/PyCQA/pylint/pull/3571
https://github.com/PyCQA/pylint/pull/3577
2022-06-13 21:30:24 +00:00
amcmanu3
b3f167ab62 Add fallback for tz not being found 2022-06-13 14:29:25 -04:00
Andrew
25a1c67c26 Fix black formatting 2022-06-12 17:17:58 -04:00
Andrew
474597d16c Add survery to admin first log 2022-06-12 17:03:42 -04:00
Silversthorn
a9cdd33c77 Fixing Pylint Errors 2022-06-12 18:30:39 +02:00
Silversthorn
007218111f Should work now :) 2022-06-12 17:13:39 +02:00
amcmanu3
ddcd3dc5c3 Appease the linter 2022-06-11 17:46:36 -04:00
amcmanu3
e99cacfc53 Make call to controller and not stale object 2022-06-11 17:34:31 -04:00
luukas
f343db1a30
Fix inconsistency on the jsonschema API endpoint 2022-06-10 00:10:54 +03:00
Silversthorn
51b1097a96 Fixing Stack when redirected from Unauthorized page 2022-06-08 21:42:25 +02:00
Andrew
0df30d2f05 Fix typo in error message 2022-06-04 14:24:12 -04:00
amcmanu3
aa44650a05 Fix windows file pathing 2022-06-03 15:53:29 -04:00
Andrew
5e48b250fa Fix api v1 bug with list servers 2022-06-02 09:40:43 -04:00
Andrew
8ff2d8437d Fix permissions on server clone 2022-06-02 08:51:12 -04:00
Andrew
6b85620fec Fix schedule tasks not being killed on restore 2022-06-02 08:23:42 -04:00
Andrew
b793016c03 Redefine how servers are served to panel_handler 2022-06-02 07:34:17 -04:00
Andrew
273e2f465d Only show authorized servers on role creation 2022-06-01 19:26:57 -04:00
Andrew
ec730a1694 Merge branch 'bug/pretzel-support-log-temp-cleanup' into 'dev'
Cleanup temp dirs on support log creation

See merge request crafty-controller/crafty-4!286
2022-06-01 22:33:52 +00:00
Andrew
8e0ccd4f94 Fix indexing for updates made on branch 2022-06-01 18:25:27 -04:00
Andrew
5d3badef2c Cleanup temp dirs on support log creation 2022-06-01 17:54:58 -04:00
Silversthorn
9e4c8e99b1 Merge branch 'dev' into dev-StatsDBImprovement 2022-06-01 23:52:49 +02:00
luukas
45a1b835fb
Fix server error checking in API stdin endpoint 2022-06-01 14:17:33 +03:00
luukas
e0b0e52bd5
Add stdin route for the API 2022-05-31 00:11:17 +03:00
Silversthorn
f597a26e5b Trying to fix stuff 2022-05-30 22:05:36 +02:00
Silversthorn
b0ea943992 Fixing lasts pylint warning 2022-05-30 19:32:11 +02:00
Silversthorn
8f5c688b72 Fixing Pylint issues 2022-05-30 19:28:39 +02:00
Silversthorn
37bda32164 Fixing moved functions calls 2022-05-30 07:36:25 +02:00
Silversthorn
3b4253de9b Fixing get_authorized_server 2022-05-26 23:19:59 +02:00
Silversthorn
99b28efd33 Merge branch 'dev' into dev-StatsDBImprovement 2022-05-26 15:39:52 +02:00
Silversthorn
8423cc24c1 I'm breaking/fixing stuff 2022-05-26 14:50:20 +02:00
luukas
47fc398f26
Fix CORS preflight 2022-05-26 00:31:58 +03:00
luukas
8ce7a96071
Use a better ANSI escape regex in the API logs 2022-05-25 18:41:41 +03:00
luukas
2e51fa9629
Remove newline characters from API file logs 2022-05-25 18:41:16 +03:00
luukas
4b707aa9d1
Don't use get_latest_server_stats
Use get_server_stats_by_id instead of get_latest_server_stats

The reasoning behind this is that all usages of get_latest_server_stats
had `DatabaseShortcuts.return_rows(latest)[0]`, which
get_server_stats_by_id already did
2022-05-25 14:43:05 +03:00
luukas
166272e12c
Replace .count() != 0 with .exists() 2022-05-25 14:24:34 +03:00
luukas
2ac9118152 Merge remote's bugfix/api-v2-bugfixes to local 2022-05-25 00:58:32 +03:00
luukas
cbc73b7e92
Fix routing for the user permissions handler 2022-05-25 00:58:10 +03:00
luukas
57ef5e27dd
Add route for viewing user Crafty permissions
The route includes the permission mask, counters and limits
2022-05-25 00:55:49 +03:00
luukas
6dadce2c9a
Enable changing more of yourself with superuser
Enable modifying your own superuser status, permissions and roles if you
have superuser status
2022-05-25 00:43:49 +03:00
luukas
b0d342e949
Check if something is in a dict with a simpler way
* Replace `data.get("key", None) is not None` with `"key" in data`
2022-05-25 00:39:16 +03:00
luukas
2aa2d14f5e
Improve the invalidate tokens API handler
* Remove the TODO
* Replace the Console.info with logger.debug
2022-05-25 00:35:11 +03:00
luukas
9a9d101015
Add pasword hashing to API user modification 2022-05-25 00:32:31 +03:00
luukas
54ff888002
Fix user modification via the API 2022-05-25 00:29:31 +03:00
Zedifus
d0596af4c9 Add exemption orjson no-member falsepositive 2022-05-23 22:54:06 +01:00
luukas
4c981f50c2
Add more permission validation in user creation 2022-05-23 22:45:27 +03:00
luukas
0d62223982 Merge branch 'dev' into bugfix/api-v2-bugfixes 2022-05-23 20:20:49 +03:00
luukas
d97bcc608f
Fix info message in tornado server starter
Yes I know it's a 1 character replace
2022-05-21 00:00:21 +03:00
luukas
02f5318f76
Merge branch 'dev' into merge/pretzel-lukas-cleanup-nosquash 2022-05-20 22:04:41 +03:00
luukas
9ddcd13f2f
Fix W0611 & R1734 lint issues 2022-05-20 14:06:46 +03:00
luukas
73175d0f82 Remove the root example from the new server schema
* It messed up https://json-schema-faker.js.org
* It wasn't updated for agree_to_eula
2022-05-19 16:32:18 +03:00
luukas
bd4a35b418 Make role add and edit use API v2 internal APIs 2022-05-19 16:13:25 +03:00
luukas
f763fa9d0c Fix API v2 server modification 2022-05-19 16:01:03 +03:00
amcmanu3
67e20302c9 Add get_perms_server back 2022-05-18 19:19:58 -04:00
Andrew
b7780682d5 Merge branch 'dev' into 'merge/api-v2'
# Conflicts:
#   app/classes/controllers/crafty_perms_controller.py
2022-05-18 21:56:39 +00:00
luukas
6407900609 Merge branch 'dev' into experimental/lukas-cleanup 2022-05-19 00:52:59 +03:00
luukas
0ecc0a62ca Fix a comment regarding the Logs permission 2022-05-19 00:04:14 +03:00
amcmanu3
bc6309c91b Appease the linter 2022-05-18 16:56:54 -04:00
Andrew
ca73a5f60b Merge branch 'dev' into 'experimental/feature/permission-matrix'
# Conflicts:
#   app/classes/web/panel_handler.py
2022-05-18 20:47:43 +00:00
luukas
2b34e2c824 Remove role_id from role modify response 2022-05-18 23:41:28 +03:00
luukas
d64756a30c Make modify role not fetch the role again 2022-05-18 23:13:22 +03:00
luukas
ae7984c784 Change modify role's server id type to integer 2022-05-18 23:11:40 +03:00
luukas
4c397ff454 Only allow number IDs to the user handlers 2022-05-18 22:54:44 +03:00
luukas
2bc26ef3fd Check invalid IDs on roles
* Only allow number IDs to the role handlers
* Catch DoesNotExist errors
2022-05-18 22:34:33 +03:00
luukas
8b0da5da4c Remove unnecessary prints or use logger.debug 2022-05-18 22:06:33 +03:00
amcmanu3
a833a29fb7 Allow super users to add roles/users 2022-05-18 14:35:51 -04:00
amcmanu3
12390306fd Add permissions checks for quantity for users/role
Remove the ability to add quantities for general users.
2022-05-18 14:33:22 -04:00
amcmanu3
e3248e8657 Change cron validation to allow day abbreviations 2022-05-18 13:53:55 -04:00
luukas
4c64497a2f Add a JSON schema route 2022-05-18 15:58:54 +03:00
luukas
5bff6c12b4 Fix cq degradation: R1721 2022-05-18 13:05:58 +03:00
luukas
559a345f25 Merge branch 'dev' into merge/api-v2 2022-05-18 01:49:19 +03:00
luukas
14665042c6 Add and improve audit logging in the API 2022-05-18 01:34:31 +03:00
luukas
f9e5b9bc5f Fix the duplicated add_server_creation in the API 2022-05-18 01:23:32 +03:00
luukas
8737c15fcf Add a permission matrix to the role add and edit 2022-05-18 01:09:58 +03:00
luukas
42af86b6f7 Merge branch 'dev' into experimental/lukas-cleanup 2022-05-17 21:21:47 +03:00
luukas
5dfd1aae12 Make more places use the check_server_id function. 2022-05-17 20:52:32 +03:00
luukas
0115421243 Make queries narrower 2022-05-16 01:02:17 +03:00
luukas
27d310e2de Declutter set()s 2022-05-16 00:55:22 +03:00
Andrew
984f4cc4d6 Change Files Aesthetic 2022-05-15 12:38:48 -05:00
Andrew
30618c7456 Term spacing between player name and message 2022-05-14 20:53:18 -05:00
luukas
930c6936d9 Add more advanced role APIs 2022-05-10 02:08:49 +03:00
Andrew
184e50a825 Fix bug where excluded dir not persistant 2022-05-09 13:34:45 -04:00
luukas
bf59e2de6c Add and fix API v2 and db
* Add basic role routes
* Add API v2 404 handler
* Add API v2 home handler pointing to the wiki
* Add tons more todos
* Add get_*_columns and get_*_column functions for many db models
* Modify and add tons of model and controller functions
2022-05-08 00:07:55 +03:00
luukas
721c9cfe12 Add the server creation endpoint 2022-05-05 14:02:23 +03:00
luukas
53459d83dc Merge branch 'feature/api-v2' into merge/api-v2 2022-05-05 03:32:09 +03:00
Andrew
3c666e5702 Fix stack thrown on page refresh after clean db 2022-04-17 13:33:45 -04:00
Andrew
9fcd510be2 Make unzip_server snake case 2022-04-14 19:45:13 -04:00
Andrew
b380f09b06 Rename get_lang_page 2022-04-14 19:34:21 -04:00
luukas
20d32c04ce Fix login and token stuff 2022-04-14 18:48:46 +03:00
luukas
1aa0d65cf7 Merge branch feature/external-frontend to feature/api-v2 without the frontend 2022-04-14 15:33:53 +03:00