Commit Graph

249 Commits

Author SHA1 Message Date
Zedifus
99ae7e01a1 Tidy import naming
This will allow for previous variable naming
2022-07-21 00:39:29 +01:00
Zedifus
ebe5d6815c Add helper for remote version check 2022-07-20 23:53:31 +01:00
Zedifus
48cd5916ed Revert internal comment
Must've changed this accidentally
2022-06-24 03:56:31 +01:00
Zedifus
cf25249a9d Fix path issue with update-alternatives
Sometimes it can be in /sbin,
if it is we return `None` which broke upstream frontend.
Returning an empty list to resolve this.
2022-06-24 02:28:05 +01:00
Zedifus
610b94dd59 Merge branch 'dev' into tweak/file-enhancements 2022-06-21 20:41:09 +01:00
Zedifus
bad7a8d625 Merge branch 'dev' into feature/java-selection 2022-06-21 04:29:37 +01:00
Zedifus
8e646df58c Add Java detect for win, and hook up to front end 2022-06-20 23:44:33 +01: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
e820ba058a Add prototype helper (linux only) 2022-06-20 18:05:39 +01:00
luukas
b4770bc9a0
Use indent=4 instead of indent=True
`indent=True` is equivalent to `indent=1`
You can test this by executing `'foo' * True`, `'foo' * 1` and
`'foo' * 4` in a Python REPL.
2022-06-18 01:30:50 +03:00
luukas
5bfd564ef4
Use with-blocks when opening files 2022-06-18 01:27:55 +03:00
amcmanu3
8611c7e5e4 Fix win reg import on not windows.
Replace WindowsError with OSError
2022-06-15 00:42:29 -04:00
Zedifus
00466719ea Exempt R1717 consideration 2022-06-15 04:52:19 +01:00
Zedifus
0f82ba3084 Line exempt E0602
It's not an undefined var it's the Base class for I/O related errors.
False positive.
2022-06-15 04:44:19 +01:00
Zedifus
9ed5cc3c5a Fix pylint R1724 2022-06-15 04:15:46 +01:00
Zedifus
1cfc926b16 Fix line length CQ 2022-06-15 04:11:40 +01:00
amcmanu3
cda2120579 Fix window java issue causing no stats 2022-06-14 22:33:02 -04:00
luukas
e73dd682c8
Fix no-else-* QA warnings 2022-06-14 15:40:57 +03:00
luukas
73a6d1cd78
Fix the error message while deleting session.log 2022-06-14 00:30:28 +03:00
luukas
0d664cfae5
Remove a useless session.log warning
This fixes an error being sent when session.log doesn't exist.
This usually occurs when the logs directory is deleted.
2022-06-14 00:16:49 +03:00
amcmanu3
ace79cad2f Remove useless print statements 2022-06-03 15:53:20 -04:00
Zedifus
eaecb2f09b Replace standard pseudo-random generators
Resolves: `Bandit ID B311`
[Standard pseudo-random generators are not suitable for security/cryptographic purposes.]
2022-06-03 14:05:26 +01:00
Andrew
9864cecff1 Merge branch 'experimental/lukas-codebase-improvements' into 'dev'
Lukas's codebase improvements

See merge request crafty-controller/crafty-4!277
2022-06-01 20:22:47 +00:00
Andrew
28ffbe4627 Remove unnecessary pass 2022-06-01 15:20:16 -04:00
Andrew
fdc88451b9 Add exception for permissions in helpers check 2022-06-01 15:11:37 -04: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
8e13b4e11d
Simplify helpers setting methods 2022-05-25 16:21:34 +03:00
luukas
87085cec3c Fix an IndexError in get_lang_page 2022-05-19 01:10:06 +03:00
luukas
559a345f25 Merge branch 'dev' into merge/api-v2 2022-05-18 01:49:19 +03:00
Andrew
984f4cc4d6 Change Files Aesthetic 2022-05-15 12:38:48 -05: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
fc1304d729 Fix file size bug when destination does not exist 2022-04-17 13:00:05 -04:00
Andrew
704ffc2742 Fix file unzip 2022-04-14 20:03:19 -04:00
Zedifus
92c8fc04f3 Refactor to standardize class/variable naming 2022-04-14 03:10:25 +01:00
computergeek125
d417950eae fix fstrings, refactored console to static 2022-04-11 20:34:46 -05:00
Zedifus
19f2429a4c Fix formatting to comply with Black 2022-04-11 11:08:36 +01:00
computergeek125
42ca4bb973 Refactored the yes to not pass objects in import
Merge Conflicts ᴙ Us
2022-04-11 00:23:55 -05:00
Andrew
b1ed9ba2bd Add API routes from 3.x
Enhance security for permissions on API requests
Fix bug where server permissions and crafty permissions were flipped upon making a new token
Fix bug where new secret key would be created every time Crafty was started.
Fix bug where DB locks will occur with concurrent writes to the DB.
2022-04-10 19:39:31 +00:00
Zedifus
2a512d7273 Fix files to conform with new Black pylintrc
Mostly just breaking up strings and comments into new lines
Some strings dont require 'f' but keeping in for readability
with the rest of the concatinated string
2022-03-23 06:06:13 +00:00
Zedifus
e06fe8a52a Black codebase
Apply black formatting to codebase
2022-03-23 02:50:12 +00:00
Zedifus
a6e99347af Format the cert gen helper
Use black to format this function and appease lint.

We should really use black on the full project
2022-03-15 18:47:49 +00:00
Silversthorn
83c692beb5 pylint happy !! 2022-03-15 19:17:20 +01:00
Silversthorn
2f89c3a93d It was a comma !!! 2022-03-15 18:12:56 +00:00
Silversthorn
7e6d34de0f 2nd Try 2022-03-15 07:43:36 +00:00
Silversthorn
466d71db36 Try to be cool with pylint (resolving Major issue ?) 2022-03-15 07:32:08 +00:00
Silversthorn
62244637bb Adding Subject Alt Names in certificate 2022-03-14 20:30:24 +01:00
Andrew
d4a1efba78 Appease the linter 2022-03-13 09:26:38 -04:00
Andrew
6e4435c86f Add Full support for backup status 2022-03-13 06:36:44 -04:00
Andrew
33cad6afa8 Add percentage to backups page
Helper designed to be used for support logs as well.
2022-03-11 00:19:05 -05:00
Andrew
319e06cd10 Add backend percentage to backups 2022-03-09 23:45:49 -05:00
Zedifus
affcc14245 Fix circular imports
I'm a silly
2022-03-08 05:44:26 +00:00
Zedifus
b306d1f313 Tidy imports & dep auto-installer 2022-03-08 04:40:44 +00:00
Silversthorn
506129729e Update Translation
- Adding Translation for Credits Page
 - Adding detection support for webpage
2022-03-05 12:01:36 +01:00
Andrew
55852de3d9 Fix cursor showing as text highlight not hand 2022-03-04 17:58:18 -05:00
Andrew
61ac97c02e Add unexecuted clear. Add option to compress backups 2022-03-02 12:55:49 -05:00
Andrew
826d4d081f Improve session.lock checking. 2022-03-02 09:48:03 -05:00
Andrew
5d6ada23a4 Fix visual file loading order. Fix zip imports where directories were not being copied 2022-03-01 16:54:06 -05:00
xithical
c4f706d415 Rework of files handling and added exclusions selection for backups. 2022-03-01 01:02:30 +00:00
xithical
26014d0e86 Revert "Merge branch 'xithical-fixes' into 'dev'"
This reverts merge request !173
2022-02-28 04:40:33 +00:00
Andrew
008b7f4ade Run file tree serving thorugh ajax handler alone 2022-02-27 19:29:30 -05:00
Andrew
4bcb91d1d5 Add mostly functional front-end for backup exclusions 2022-02-27 16:37:48 -05:00
Andrew
e7d78cadd4 Initial frontend for backup omissions 2022-02-27 16:15:40 -05:00
Iain Powrie
e0ce1d118c Create pylintrc, code review pipeline & correct codebase errors
Fix uploads,
Only send server stats to user page when they have access to servers
2022-01-26 01:45:30 +00:00
Andrew
feaecf9016 Fix critical bug in fatal text formatting causing terminal to not work 2022-01-21 21:39:02 -05:00
Andrew
0812d9ca02 Add fatal to logging 2022-01-21 21:36:19 -05:00
luukas
93857f90db JWT login and multi API keys! 2022-01-15 02:23:50 +02:00
Andrew
39ccb83008 Fix bug where backkups could not be restore. Directly caused by the changes made in server zip import 2022-01-10 00:10:03 -05:00
Andrew
4d636cce1b add working zip import selection functionality 2022-01-09 22:49:03 -05:00
Andrew
deeff1717b adding tempdir back 2022-01-09 22:27:43 -05:00
Andrew
b815cf38a8 Zip import semi broken.
Need to figure out why temp dir is not being passed correctly
Need to make sure tempdir gets deleted.
2022-01-09 22:21:28 -05:00
Andrew
369ac7ad15 initial changes for zip imports selection 2022-01-09 18:04:54 -05:00
Andrew
a1c67009c4 Remove crafty_managed.txt from showing up in files listing in crafty. managed.txt will still show up in dir. 2022-01-09 02:07:18 -05:00
Andrew
74b416b93f Fix rename value showing up as null 2022-01-09 00:09:18 -05:00
Andrew
7dd24b6b15 Improved File Loading, Fixed Port checking 2022-01-08 23:03:45 +00:00
Andrew
5d6cbf6a4f add port checking stuff 2021-12-21 17:39:24 -05:00
Andrew
c9908a3e0f Add sorting to filelist 2021-12-21 17:36:49 -05:00
Andrew
460472fe9d Fix weird caching thing causing slow folder opening on files 2021-12-21 17:33:59 -05:00
Andrew
3e2d2c89ee hotfix for failed scandir 2021-12-21 16:11:48 -05:00
Andrew
3ed304c378 Add fix for port checker. We'll see if this works this time. 2021-12-21 15:58:48 -05:00
Andrew
2afecf8fab Add improved file functions.
Add sort in filenames
2021-12-21 15:04:32 -05:00
Andrew
bc164fef67 Add timeout to telnet. 2021-12-10 04:52:37 +00:00
Quentin
12153b1207 Merge branch 'fix/exit-code-tweak' into 'dev'
removed old exit handling logic

See merge request crafty-controller/crafty-commander!109
2021-12-06 05:50:48 +00:00
Quentin B
b2dc1521d6 removed old exit handling logic 2021-12-05 23:01:44 -05:00
Andrew
73fbf19088 Add fix for windows Administrator lockout 2021-11-29 22:21:19 +00:00
Andrew
79284a9094 Add potential fix for windows admin lockout 2021-11-29 16:56:17 -05:00
Andrew
a19ba7dbb6 Backup Restore/Root Disable 2021-11-29 21:22:46 +00:00
Andrew
78834c1ed0 Fix bug where general user can change working directory and potentially destroy a system.
Initial commit for path traversal for server config only.
2021-11-27 21:52:49 -05:00
Andrew
97ddc1b964 Merge branch 'pretzel-patches' into 'dev'
# Conflicts:
#   app/classes/shared/server.py
2021-11-23 22:12:06 +00:00
Andrew
0e942311fb Add error message on login that does not direct to new page.
Remove failed to create dir error on startup when crafty cannot create dir since it exists after first startup.

Error logging is still enabled for every error except FileExists for this case.
2021-11-23 13:22:15 -05:00
Silversthorn
f20d41242d Adding Helpers for Path
Correcting a MVC update missing function
2021-11-21 11:52:29 +01:00
Andrew
aeb6b774f4 Fixes tryexceptpass for helpers and panel handler. 2021-11-17 17:23:14 -05:00
computergeek125
64ec33ff52 Resolved subprocess issues with windows
- Repaired introduced bug where backslashes in the far path weren't
   handled properly
- Resolved latent subprocess issue where stdout would fail to send
  websocket notifications when a a windows \r\n was emitted
2021-11-14 18:17:23 -06:00
Iain Powrie
1c9ffb2abc Merge branch 'dev' into 'subprocess'
# Conflicts:
#   app/classes/shared/helpers.py
#   app/classes/shared/server.py
#   app/classes/web/ajax_handler.py
2021-11-06 15:26:37 +00:00
Andrew
72a85d7e64 Adds user based languages
changes server creation so that it adds it to roles instead of creating one
Changes server creation so you cannot create a server without a role.
2021-09-29 19:32:21 -04:00
Silversthorn
e381ebe239 Merge branch 'dev' into dev-Silversthorn-MVC 2021-09-25 22:58:01 +02:00
computergeek125
4f320e69a5 Added string to array command parser 2021-09-25 14:29:03 -05:00
computergeek125
f10db73fa5 Set TCP timeout to a more reasonable value 2021-09-25 12:26:10 -05:00
computergeek125
6fe8debeba Set TCP timeout to a more reasonable value 2021-09-25 12:25:27 -05:00
Zedifus
d93038a70d Fix unhandled exception with port check function 2021-09-24 22:20:13 +01:00
Silversthorn
186dcdc616 Merge branch 'dev-Silversthorn' into dev-Silversthorn-MVC 2021-09-21 21:12:56 +02:00
Andrew
2528c123f2 Adds port/internet connection checks.
Checks when crafty starts for internet and a port forward for Crafty's https port.
Checks on server launch for internet connection and for port forwarding for executed server.
2021-09-13 13:10:34 -04:00
Silversthorn
70ca82a086 Rework architecture for better MVC 2021-09-09 00:01:10 +02:00
Andrew
86c1b374bf Fixed upload streams
Lukas added a lot of pretty things to the upload waiting screen.
Current bug: progress bar is not 100% working.
2021-08-22 16:31:49 -04:00
Andrew
e08df4d369 Completed file uploading. Need to fix listing when right clicking. Unzip is shown at all times. Added unzip function to helpers and is called through ajax for unzipping files to current directory. 2021-08-19 23:36:25 -04:00
Andrew
90d59faf5b This is broken right now. Trying to add unzip function 2021-08-19 16:50:18 -04:00
xithical
c20ffb522d Merge branch 'dev' into 'xithical'
# Conflicts:
#   app/classes/shared/server.py
2021-08-18 23:30:45 +00:00
Andrew
0ab8f11a60 Merge branch 'dev' into 'pretzel'
# Conflicts:
#   app/classes/shared/server.py
#   app/classes/web/panel_handler.py
#   main.py
2021-08-18 16:34:41 +00:00
luukas
f8aad8b33d Add database migrations! 2021-08-18 18:11:53 +03:00
Scott R
096a38ae54 Redoing shutil zip after merging new DB things
Merged from Pretzel for DB change things and needed to readd code for shutil for zipping
2021-08-13 23:28:41 -05:00
Andrew
118fc7936f Improved text highlighting for papermc servers. Need to still figure out what's going on with some random characters showing up. 2021-08-12 10:16:19 -04:00
luukas
4bac56e84a Use stdout for virtual terminal. WebSockets seem to be "laggy". 2021-08-10 23:17:56 +03:00
luukas
801d79fdca Fix Crafty version string 2021-07-30 22:50:33 +03:00
Andrew McManus
3d979ffed3 Merge branch 'pretzel_update' into 'pretzel'
Added update button and bug fixes

See merge request crafty-controller/crafty-commander!31
2021-07-30 14:59:16 +00:00
Andrew McManus
9cb46a86fb Added executable updater 2021-07-24 21:09:39 -04:00
luukas
9049e44803 Fix logging on import errors 2021-04-17 23:34:13 +03:00
computergeek125
d501260ef9 Updated error info per CRAFTY-CONTROLLER-T-57 2021-04-03 13:29:21 -05:00
computergeek125
680cb1885e Moved to semver 2021-03-22 00:05:45 -05:00
computergeek125
81c60d6dac One monster truck commit for rework and backups 2021-03-21 23:02:18 -05:00
computergeek125
c65b4a267e Staff, patreon, and translations all proceedurally generate now 2021-03-13 11:07:04 -06:00
luukas
1be41b8534 Player controls 2021-03-05 10:58:38 +02:00
Phillip Tarrant
96dbaf3583 Merge branch 'file_manager_polishing' into 'dev'
File manager polishing

See merge request crafty-controller/crafty-commander!22
2021-02-21 17:14:43 +00:00
Phillip Tarrant
abcb097cdb Merge branch 'remove-old-logs' into 'dev'
"remove old logs" feature

See merge request crafty-controller/crafty-commander!21
2021-02-21 17:14:03 +00:00
LukasDoesDev
1bf3b381ac Add icons to file tree 2021-01-23 00:50:56 +02:00
LukasDoesDev
6b2ef2c451 Remove unnecessary logs, update logs to have more information, add resizing to file editor 2021-01-20 23:10:25 +02:00
LukasDoesDev
bcaac8b9eb I think that the "remove old logs" feature is done 2021-01-20 17:20:42 +02:00
Phillip
9fb80a5062 added float_to_string for server memory configs 2021-01-19 09:17:29 -05:00
Phillip Tarrant
c154f316b7 Merge branch 'lukas-development' into 'dev'
File Manager

See merge request crafty-controller/crafty-commander!19
2021-01-19 12:28:58 +00:00
LukasDoesDev
e3a359bbc6 File Manager: DONE 2021-01-17 19:20:28 +02:00
LukasDoesDev
eb06f1b33b Now can edit files. Also fixed a bunch of bugs. 2021-01-15 21:59:58 +02:00
LukasDoesDev
75fb8fc920 (Maybe) fix potential code injection attack 2021-01-15 14:33:17 +02:00
LukasDoesDev
eba7bff050 Now can see a tree view of the directory the server is in. Will do file editing now. 2021-01-15 14:13:06 +02:00
LukasDoesDev
c08751c7f8 FILES: Got everything working except Tornado seems to escape my HTML output, works if you set the output to the DOM and run the script below it. 2021-01-15 00:55:14 +02:00
computergeek125
1239822761 Fixed logic inversion that resolves #10 2020-12-19 08:44:04 -05:00
MCgamin1738
58b63cb9a4 Add Permissions Check To Import From Zip 2020-12-12 19:35:41 +00:00
MCgamin1738
7acb044bd8 Fixing SEC_ERROR_REUSED_ISSUER_AND_SERIAL 2020-12-11 19:08:09 +00:00
Phillip Tarrant
1542f2559a adding creation of app/config/db directory to helper so if it's not there,it will be created
bug introduced by commit 102f63c7
2020-12-11 10:14:48 -05:00
MCgamin1738
102f63c771 Move session.lock, Database And config.json To Config Folder 2020-12-11 12:59:48 +00:00
Phillip Tarrant
7f090b928f changed notify icon - added code to grab remote json from craftycontrol.com for announcements and such - icon turns red if update available 2020-09-22 21:42:41 -04:00
Phillip Tarrant
adf8d3f51a many new things,
regexit sub function created
virtual console now has colors
fixed error with login function auditing None instead of 0
other things I can't remember atm
2020-09-01 21:30:39 -04:00
Phillip Tarrant
d6c894c3d9 Creation of Command model, moved controler to shared in prep for plugins 2020-08-31 13:46:25 -04:00
Phillip Tarrant
f0618b073b finished credits and contribute section - with setting to disable contribute link 2020-08-28 14:38:42 -04:00
Phillip Tarrant
d2d403e144 complete rewrite of stats pulling, fixed default.json, changed the config file and handling 2020-08-27 18:30:56 -04:00
Phillip Tarrant
6ec2f1c6ac part 1 of the server builder complete 2020-08-23 18:43:28 -04:00
Phillip Tarrant
de98e5727c Implimenting default.json search for user/pass creation 2020-08-18 21:50:24 -04:00
Phillip Tarrant
ad541347af scheduler, version change, database work, controller init servers, etc etc 2020-08-16 22:47:53 -04:00
Phillip Tarrant
25affba2e6 got login working 2020-08-13 10:38:36 -04:00
Phillip Tarrant
85a69954ea building out databases and config files 2020-08-12 21:33:36 -04:00
Phillip Tarrant
2f12f95ab2 first huge commit 2020-08-11 20:36:09 -04:00