Commit Graph

1185 Commits

Author SHA1 Message Date
Zedifus
256c6567fd Remove temporary directory on backup completion
When running backups, the temporary directory wasn't being properly removed.
Added logic to remove the temporary directory upon backup completion,
cleaned up the try/except a bit.
2022-06-01 18:28:24 +01:00
luukas
45a1b835fb
Fix server error checking in API stdin endpoint 2022-06-01 14:17:33 +03:00
DarthLeo1000YT
d486fdd4c8 add jquery back to the main base.html template. 2022-05-30 20:57:19 -04:00
luukas
e0b0e52bd5
Add stdin route for the API 2022-05-31 00:11:17 +03:00
Silversthorn
ec2d967419 Fixing Commands to server 2022-05-30 22:49:42 +02:00
Silversthorn
150e8e5794 Renaming Server in shared to ServerInstance 2022-05-30 22:40:34 +02:00
Silversthorn
f89f94c44a Merge branch 'dev' into dev-StatsDBImprovement 2022-05-30 22:16:42 +02: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
luukas
290c398198
Add command queue stdin commands back 2022-05-30 18:23:37 +03:00
Andrew
26b3b8a869 Merge branch 'cleanup/remove-unused-dependencies' into 'dev'
Remove unused dependencies

See merge request crafty-controller/crafty-4!279
2022-05-30 13:18:42 +00:00
Silversthorn
37bda32164 Fixing moved functions calls 2022-05-30 07:36:25 +02:00
Silversthorn
2f2c9d8203 Merge branch 'dev' into dev-StatsDBImprovement 2022-05-29 10:30:18 +02:00
Zedifus
ca793807cb Add kofi widget
Not sure how to remove the background behind the widget :(
2022-05-29 07:09:39 +01:00
luukas
7885b2c8f7
Fix null writer 2022-05-28 21:11:09 +03:00
luukas
b0e356f999
Fix host stats error messages 2022-05-28 19:43:37 +03:00
luukas
0df5fedf2b
Add try-excepts for host stats 2022-05-28 19:32:54 +03:00
luukas
d1beb2f125
Redirect stderr to null during psutil's import.
On some systems /proc might be unavailable and psutil would freak out
printing several exceptions to stderr but strangely not raising the
exceptions for upper scope to handle
2022-05-28 19:00:25 +03:00
luukas
f2890fa31d
Remove unused dependencies 2022-05-28 18:31:11 +03:00
Zedifus
ccd09e9753 Fix missing escaped chars in submitted translation 2022-05-28 15:17:41 +01:00
Iain Powrie
cfe5f01d78 Update he_IL.json 3.5
Fix For RTL & Typo Mistakes and orientation & definition of a few words

Thanks thefourcraft
2022-05-28 14:10:55 +00:00
Silversthorn
3b4253de9b Fixing get_authorized_server 2022-05-26 23:19:59 +02:00
Silversthorn
6fae395185 Fixing issues for latest stats 2022-05-26 15:43:24 +02:00
Silversthorn
99b28efd33 Merge branch 'dev' into dev-StatsDBImprovement 2022-05-26 15:39:52 +02:00
Silversthorn
be1930c7c7 fixing server shutdown gracefull exit 2022-05-26 15:28:54 +02:00
Silversthorn
2b484d5a07 fixing download jar 2022-05-26 15:20:21 +02:00
Silversthorn
056856cf98 Fixing Helpers issue 2022-05-26 15:02:47 +02:00
Silversthorn
8423cc24c1 I'm breaking/fixing stuff 2022-05-26 14:50:20 +02:00
Andrew
39915ef53c Fix critical bad stats push 2022-05-26 06:49:51 -04:00
luukas
47fc398f26
Fix CORS preflight 2022-05-26 00:31:58 +03:00
Andrew
b0b9936df7 Merge branch 'bugfix/stats-db-select' into 'dev'
Get rid of the stats database proxy

See merge request crafty-controller/crafty-4!276
2022-05-25 18:29:23 +00:00
Andrew
b293164e12 Add crash detection to realtime stats 2022-05-25 14:26:13 -04: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
3956d9c699
Remove stdin sending from command_watcher
Reasons:
* It's unused in our program
* It can be a start to security vulnerabilities.
  I've seen many routes add commands to `Commands` without validation.
2022-05-25 17:44:09 +03:00
Silversthorn
5a1353373a trying something new 2022-05-25 15:54:35 +02:00
luukas
ca450f21ed
Document set_passwd and threads prompt commands
Help messages:
set_passwd: Set a user's password. Example: set_passwd admin
threads: Get all of the Python threads used by Crafty
2022-05-25 16:25:49 +03:00
luukas
8e13b4e11d
Simplify helpers setting methods 2022-05-25 16:21:34 +03:00
luukas
0eac0721ea
Remove unused DatabaseShortcuts imports 2022-05-25 16:17:01 +03:00
luukas
4e84eee5a5
Rename server stats variables to server_stats 2022-05-25 16:15:51 +03:00
luukas
83018c6860
Calculate the min stats date with timedelta
This is more correct than just using days.
I've also tested this working in a completely separate Peewee project.
2022-05-25 16:14:42 +03:00
luukas
a937a94ac8
Use a better variable name for stat disappear date
* Rename occurences of `last_week` with `minimum_to_exist`
2022-05-25 14:49:17 +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
fae4aeb492
Fix CQ C0412 2022-05-25 14:16:14 +03:00
luukas
cf2ff2f2d5
Try to get rid of database_stats_proxy 2022-05-25 14:00:22 +03:00
Andrew
7ca7232829 Add question to warning message 2022-05-24 19:11:14 -04:00
Iain Powrie
54c81d6dd4 Merge branch 'bugfix/api-v2-bugfixes' into 'dev'
API v2 bug fixes

See merge request crafty-controller/crafty-4!267
2022-05-24 22:42:41 +00: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
Iain Powrie
db13b11f18 Merge branch 'tweak/pretzel-wss-error' into 'dev'
Add link to documentation to WSS error

See merge request crafty-controller/crafty-4!272
2022-05-24 18:14:06 +00:00
Zedifus
f69cf39c1d Add Hebrew lang file
Up to date to 3.5, altered credits trans keys amended,
Patreon will need amended to Patreon / Ko-fi like en lang,
this will be done on final beta translation update.

Thanks thefourcraft
2022-05-24 18:58:37 +01:00
Andrew
5104c34513 Add link to documentation to WSS error 2022-05-23 21:23:29 -04:00
Zedifus
d0596af4c9 Add exemption orjson no-member falsepositive 2022-05-23 22:54:06 +01:00
Zedifus
2a4295d9b3 Add subscription source parsing & format html 2022-05-23 22:21:32 +01:00
Zedifus
11335b58f3 Update Translations for kofi credit support
More sane key naming as multiple sources, title & desc update too.
2022-05-23 22:20:19 +01:00
luukas
afdffcd836
Optimize get_user_permissions_mask 2022-05-23 23:03:50 +03: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
Iain Powrie
da483b9291 Merge branch 'bug/pretzel-database-exit' into 'dev'
Fix error where database atomic is not needed

See merge request crafty-controller/crafty-4!269
2022-05-23 10:05:46 +00:00
Iain Powrie
f01f04ef97 Merge branch 'merge/cleanup-nosquash' into 'dev'
New merge request for cleanup

See merge request crafty-controller/crafty-4!268
2022-05-23 10:01:40 +00:00
Andrew
f099639cc6 Fix error where database atomic is not needed 2022-05-21 14:26:58 -04:00
luukas
8f8b2aa22f
Simplify MainPrompt.emptyline. 2022-05-21 02:04:03 +03:00
luukas
b49bca3279
Use a tab character in the threads prompt command
https://i.imgur.com/jy0Rlgm.png
2022-05-21 01:57:40 +03:00
luukas
b724fc500d
Improve the startup process 2022-05-21 01:53:17 +03:00
luukas
eff7aefb6e
Use local date and time formatting for Console 2022-05-21 01:41:48 +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
f82241f728
Fix circular import and linting for stats.py 2022-05-20 23:33:42 +03:00
luukas
ed9d994083
Fix linting in models/crafty_permissions.py 2022-05-20 23:23:18 +03:00
luukas
c1ebb16dff
Add typings to minecraft/stats.py 2022-05-20 22:05:37 +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
dba3fafa87
Use shorthand for Controller.check_system_user
This reduced the code from 4 lines to 1 line.

The code
    if <condition>:
        return True
    else:
        return False
can be shortened to
    return <condition>
2022-05-20 13:31:30 +03:00
luukas
1b059b24df
Update get_*_column functions
Use getattr instead of model_to_dict in single columns. We might want to
change the functions later on so peewee's ForeignKeyField primary key
shorthand like model.server_id instead of model.server.server_id
will work.

This will very likely increase performance of the get_*_column functions
due to not having to call the model_to_dict function from Peewee's
helper library.
2022-05-20 13:15:50 +03:00
luukas
48948423c9
Fix various things in create_api_server 2022-05-20 01:33:02 +03:00
Iain Powrie
379f680312 Merge branch 'bug/pretzel-stats-db-name' into 'dev'
Change naming of servers stats to generic name

See merge request crafty-controller/crafty-4!264
2022-05-19 21:13:07 +00:00
amcmanu3
ca170b86e0 Change naming of servers stats to generic name 2022-05-19 12:14:30 -04:00
luukas
7a7c7501e6 Use relative path for latest.log 2022-05-19 17:27:36 +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
Iain Powrie
1e96e7a6c9 Merge branch 'merge/api-v2' into 'dev'
New API v2 PR

See merge request crafty-controller/crafty-4!254
2022-05-18 23:27:19 +00:00
amcmanu3
67e20302c9 Add get_perms_server back 2022-05-18 19:19:58 -04:00
Iain Powrie
11b7817a11 Merge branch 'dev-BetterDisplayMobile' into 'dev'
Better display on mobile

See merge request crafty-controller/crafty-4!229
2022-05-18 23:13:05 +00:00
Zedifus
4a83aaac0e Fix W0404 & C0412 Lint issues 2022-05-18 23:14:00 +01:00
luukas
87085cec3c Fix an IndexError in get_lang_page 2022-05-19 01:10:06 +03: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
Andrew
505364d7d5 Merge branch 'feature/pretzel-password-reset' into 'dev'
Add password reset to Crafty Console

See merge request crafty-controller/crafty-4!261
2022-05-18 21:40:04 +00:00
amcmanu3
d235d0b70b Add error for no user 2022-05-18 17:37:07 -04:00
amcmanu3
49965bf31f Add explaination to password fail. 2022-05-18 17:22:39 -04: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