Commit graph

317 commits

Author SHA1 Message Date
Dane Everitt
af360d49dd
Merge branch 'develop' of https://github.com/Pterodactyl/Panel into develop 2020-12-06 12:01:43 -08:00
Dane Everitt
a8d9eccf9c
Support pagination of server backups, closes #2787 2020-12-06 12:01:42 -08:00
Matthew Penner
8611ebb2d6 Add /api/client/servers/{server}/files/chmod endpoint 2020-12-04 09:24:06 -07:00
Dane Everitt
f99ac0ecde
Fix some failing test cases 2020-11-06 22:33:39 -08:00
Dane Everitt
625fd92130
Fix URKL encoding hellscape; closes #2664 closes #2663 2020-11-06 20:47:03 -08:00
Dane Everitt
009f9c297d
Revoke JWT JTIs when modifying a subuser's permissions 2020-11-03 21:01:15 -08:00
Dane Everitt
964a1436ce
Code cleanup for signed URL generation endpoint 2020-11-01 14:46:01 -08:00
Matthew Penner
6af848ccea Tweaks to BackupRemoteUploadController.php 2020-11-01 15:27:43 -07:00
Matthew Penner
63ac81586d Tweaks to BackupRemoteUploadController.php 2020-11-01 15:27:43 -07:00
Matthew Penner
85af073438 Switch to s3 multipart uploads for backups 2020-11-01 15:27:43 -07:00
Dane Everitt
23d2352a9b
Don't ever return per_page as a string here... 2020-11-01 14:27:14 -08:00
Dane Everitt
d493685518
Add test coverage for allocation assignment endpoint 2020-10-31 21:57:27 -07:00
Dane Everitt
b2be067f38
Support deleting an allocation for a server 2020-10-31 21:22:44 -07:00
Dane Everitt
c6bd7ff661
Improve logic handle auto-allocation of ports for a server 2020-10-31 14:58:15 -07:00
Dane Everitt
665a4dd8a4
Merge branch 'develop' into develop 2020-10-31 13:47:12 -07:00
Dane Everitt
ff64220741
Avoid N+1 location query for servers 2020-10-31 11:28:31 -07:00
Dane Everitt
c00e5b36a5
Return all servers for a node as a paginated response
Avoids crashing the PHP process and avoids a bad runaway N+1 query issue that previously existed.
2020-10-31 11:14:28 -07:00
Dane Everitt
65d04d0c05
Correctly handle schedule task deletion and avoid errors; closes #2534 2020-10-22 20:54:58 -07:00
Dane Everitt
f30dab053b
Support much better server querying from frontend
Search all servers if making a query as an admin, allow searching by a more complex set of data, fix unfocus on search field when loading indicator was rendered
2020-10-15 21:21:38 -07:00
Dane Everitt
c1ee0ac4f8
Add support for executing a scheduled task right now 2020-10-14 20:38:59 -07:00
Caleb
ea778e9345
Merge branch 'develop' into develop 2020-10-13 15:35:38 -04:00
Dane Everitt
8697185900
Fix up database creation and handling code for servers; ref #2447 2020-10-11 11:59:46 -07:00
Dane Everitt
d8228f2da8
Allow passing empty values through for variables, covers with test, closes #2433 2020-10-10 16:45:24 -07:00
Dane Everitt
2560163655
Modify how deletion service works (actually fixes #2085); cover changes with test 2020-10-08 21:08:55 -07:00
Dane Everitt
83efb2d7b6
More fixes for broken unit tests 2020-10-05 21:54:29 -07:00
Dane Everitt
2d01c7b988
Reset is_processing state of a schedule when toggling active/inactive; closes #2425 2020-10-03 19:47:52 -07:00
Dane Everitt
4ff5de7e1b
decode before encoding URLs, closes #2440 2020-10-03 12:51:41 -07:00
Caleb
4770af453b Removed loggin and reverted changes to webpack 2020-09-29 14:42:02 -04:00
Caleb
fb33824e10 Added admin controls.
Removed the note in the server settings that stated that the allocations feature is currently not implemented.

Properly check to make sure that there are allocations available in range before trying to create it.
2020-09-29 12:00:59 -04:00
Caleb
d80660f047 Added admin configuration
This is not working just yet but the fields have been added to the admin control area.
2020-09-28 16:14:14 -04:00
Caleb
8f8bd0be83 Added Automatic Allocations
Known issues:
- Port range to auto create is hard coded
- React interface is still a WIP.
2020-09-28 11:50:34 -04:00
Dane Everitt
3340ee7fd8
Fix bad encoding when handling files; closes #2399 2020-09-24 20:27:02 -07:00
Dane Everitt
2182a15494
Don't return variables to users that they should not be able to see; closes #2388 2020-09-22 21:12:00 -07:00
Dane Everitt
79f616f791
Fix authentication lockout when doing multiple SFTP uploads; closes #2221 2020-09-13 13:54:41 -07:00
Dane Everitt
d8c338df3e
Update all remaining code pathways to use new search tooling 2020-09-13 12:21:44 -07:00
Dane Everitt
f31dd4706c
Fix location controller searches 2020-09-13 11:59:52 -07:00
Dane Everitt
a66623d8e1
Fix user search via the API; ref #2100 2020-09-13 11:55:39 -07:00
Dane Everitt
981edb0d64
Require specific permission for reading the actual contents of a file; ref #2288 2020-08-31 19:36:30 -07:00
Dane Everitt
1967e3f7fd
Better backup storage 2020-08-27 19:59:01 -07:00
Dane Everitt
4b919cabd2
Correctly validation API calls to mark a backup as completed
Also block modifying a backup that is already marked as completed via the endpoint
2020-08-27 19:35:22 -07:00
Dane Everitt
179885b546
Add endpoint to return startup variables; send back modified startup when a variable is edited 2020-08-25 19:22:17 -07:00
Dane Everitt
1e58e108ba
Update last location using wrong column name 2020-08-23 20:23:42 -07:00
Dane Everitt
5173f1f7e8
Don't allow editing read only values; closes #2252 2020-08-23 14:56:05 -07:00
Dane Everitt
54f9c5f187
Merge branch 'develop' into feature/file-uploads 2020-08-22 18:33:09 -07:00
Dane Everitt
91cdbd6c2e
Support modifying startup variables for servers 2020-08-22 18:13:59 -07:00
Dane Everitt
e3178ba6f0
backend: support is_successful state for backups rather than deleting it when failing
This allows the UI to correctly show failed backups to the user and require them to manually delete those backups, rather than them mysteriously disappearing.

We can also hook into this later to send a notification to the user when the backup fails.
2020-08-20 21:07:53 -07:00
Dane Everitt
61e9771333
Code cleanup for subuser API endpoints; closes #2247 2020-08-19 20:21:12 -07:00
Dane Everitt
f0ac0725b6
[Security] Don't return all servers on the system when not a root admin and admin level servers are requested
Cleaned up the API endpoint by simplifying the logic and adds test case to cover this bug.

If you ever need to list _all_ of the servers on the system you should be using the application API endpoint for the servers most likely.
2020-07-26 10:43:46 -07:00
Dane Everitt
d644758986
Always return the status code from the daemon if possible 2020-07-18 10:23:28 -07:00
Dane Everitt
1a6669aa5c
Add endpoint support for decompressing files 2020-07-14 21:16:49 -07:00
Dane Everitt
78c76d6df4
Ensure errors from daemon are wrapped correctly 2020-07-14 21:16:38 -07:00
Matthew Penner
1d2acbd5b4 Get basic file upload functionality working 2020-07-12 16:42:32 -06:00
Dane Everitt
2653321fc2
Support renaming multiple files at once 2020-07-11 16:00:30 -07:00
Dane Everitt
93cab68cc3
Handle mass actions for file deletion 2020-07-11 15:37:59 -07:00
Dane Everitt
82bc9e617b
Add support for compressing items in the file manager 2020-07-11 13:38:49 -07:00
Dane Everitt
fdec3cea80
Fix nested directories being created incorrectly 2020-07-10 22:10:41 -07:00
Dane Everitt
2278927fb6
Update allocations to support ids; protect endpoints; support notes 2020-07-09 20:36:08 -07:00
Dane Everitt
fc9054312d
Support modifying the primary allocation for a server 2020-07-09 19:56:46 -07:00
Dane Everitt
bfb28f949d
[Breaking] Return server allocations automatically as a relation object 2020-07-09 19:17:24 -07:00
Dane Everitt
d3c749ac56
Code cleanup & fix frontend searching servers; closes #2100 2020-07-06 21:25:00 -07:00
Dane Everitt
f0e18ba6f7
Code cleanup 2020-07-06 20:05:42 -07:00
Dane Everitt
a998b463e3
Generate recovery tokens when enabling 2FA on an account 2020-07-02 21:55:25 -07:00
Dane Everitt
28c5729e48
Add test coverage for creating tasks 2020-06-28 14:41:22 -07:00
Dane Everitt
b9a451b528
Add test coverage for schedules 2020-06-28 13:50:07 -07:00
Dane Everitt
63bc4080d5
Add test coverage for reinstall & server renaming 2020-06-28 10:40:41 -07:00
Dane Everitt
4cb4dfecc8
Add test coverage for generating JWTs to connect to websocket 2020-06-28 10:16:15 -07:00
Dane Everitt
4cb95d8063
Add test coverage for 2fa 2020-06-27 11:06:35 -07:00
Dane Everitt
a81f6882f7
Add test coverage for API key generation and deletion 2020-06-25 22:36:58 -07:00
Dane Everitt
7a5f7b99a7
Add integration test covering account endpoint 2020-06-25 22:12:09 -07:00
Dane Everitt
8fb21a5048
Fix error while updating user 2020-06-25 21:42:21 -07:00
Dane Everitt
b78aa180ea
Prevent creating a new database via the application API if server is at its limit; closes #2129 2020-06-23 20:07:37 -07:00
Dane Everitt
693b9eab0c
Fix handling of backup tasks; closes #2067 2020-06-18 21:00:04 -07:00
Dane Everitt
225ef2917a
Support downloading and deleting S3 backups 2020-05-09 19:43:58 -07:00
Dane Everitt
2cf1c7f712
Fix handling of SFTP authorization; closes #1972 2020-04-25 11:48:49 -07:00
Dane Everitt
973591d86e
Add basic support for backups via the scheduled tasks system 2020-04-19 19:43:41 -07:00
Dane Everitt
a1c3730861
Update frontend to only allow selection of valid permissions for subusers 2020-04-19 11:58:26 -07:00
Dane Everitt
00b0d30c60
Fix handling for backups; correctly send along ignored files & directories 2020-04-18 23:26:59 -07:00
Dane Everitt
81f7734df2
Update endpoints for managing backups 2020-04-17 10:21:51 -07:00
Dane Everitt
e969344f3b
Fix display of navbar links to admins, closes #1920 2020-04-17 10:21:15 -07:00
Dane Everitt
fda88940f7
Fix up node autodeployment 2020-04-12 17:20:09 -07:00
Matthew Penner
ea8f7bb5b6
Merge branch 'develop' into enhancement/new-server-admin 2020-04-11 23:04:48 -06:00
Dane Everitt
60f6e86b8b
Remove all of the old references to unused interfaces outside the test code 2020-04-11 15:35:32 -07:00
Matthew Penner
432e28b6bb Fix all StyleCI errors and probably break everything in the process 2020-04-11 14:07:40 -06:00
Matthew Penner
658a959e5d Fix trailing comma in DaemonAuthenticate.php, change ServerDetailsController.php to use node authentication 2020-04-10 17:54:50 -06:00
Matthew Penner
94d46affb8
Merge branch 'develop' into enhancement/wings-improved-server-loading 2020-04-10 16:23:46 -06:00
Dane Everitt
7557dddf49
Store node daemon tokens in an encrypted manner 2020-04-10 15:15:38 -07:00
Matthew Penner
87e95f4195 Fix StyleCI 2020-04-10 13:08:43 -06:00
Matthew Penner
42fb9fdbd9 Add the ability for a node to fetch a list of all servers it has been assigned 2020-04-10 13:04:11 -06:00
Dane Everitt
06707fd33a
Better throttling of backup generation 2020-04-09 22:35:38 -07:00
Dane Everitt
c1a7e4ebe1
Merge branch 'develop' of https://github.com/Pterodactyl/Panel into develop 2020-04-09 22:08:16 -07:00
Dane Everitt
9ba6aaebde
Move actions into context menu, add support for deleting a backup 2020-04-09 22:08:09 -07:00
Lance Pioch
78e03cb9b2
Update AccountController.php 2020-04-08 02:59:38 -04:00
Lance Pioch
f9e6df5d71
Change to new password instead 2020-04-07 19:25:11 -04:00
Dane Everitt
b1e7e0b8b0
Simplify handling of permissions for websocket, only send permissions the user actually has 2020-04-06 21:03:00 -07:00
Dane Everitt
a924eb56cc
Fix file and backup downloading to use URL returned by server 2020-04-06 20:28:14 -07:00
Matthew Penner
2f506d564b
Merge branch 'develop' into feature/server-transfers-actually 2020-04-04 20:56:37 -06:00
Dane Everitt
be05d2df81
Add support for generating a signed URL for downloading a file from the daemon 2020-04-04 19:54:59 -07:00
Matthew Penner
b395440e4e Check that the selected daemon is online for a transfer, delete the server from the old node when a transfer is successful 2020-04-04 18:28:09 -06:00
Matthew Penner
7b518325c4
Merge branch 'develop' into feature/server-transfers-actually 2020-04-04 17:09:39 -06:00
Dane Everitt
15b436d26e
Add endpoints required to store the results of a backup 2020-04-04 16:07:09 -07:00
Matthew Penner
fd4de9168a
Merge branch 'develop' into feature/server-transfers-actually 2020-04-04 16:28:02 -06:00
Matthew Penner
5c7c1f60cf Fix StyleCI issues #2 2020-04-04 16:25:41 -06:00
Matthew Penner
142bf16aae Fix StyleCI issues 2020-04-04 16:24:58 -06:00
Matthew Penner
454ce6ce45 Add successful column to server_transfers table, get server transfers working properly :) 2020-04-04 16:16:18 -06:00
Matthew Penner
6ba6c34252 Add ServerTransfer relation in Models/Server.php, notify the new daemon about the incoming server transfer 2020-04-04 14:10:18 -06:00
Dane Everitt
d27f0c6f2a
Basic backend support to at least store a backup model in the DB 2020-04-04 12:26:39 -07:00
Dane Everitt
9991989f89
Very basic implemention of frontend logic required to display backups and create a new one 2020-04-04 10:59:25 -07:00
Matthew Penner
5007ce0b1c Get to the point where we can start notifying the other daemon, remove TransferJob.php, add DaemonTransferRepository.php 2020-04-04 00:50:12 -06:00
Dane Everitt
85e3945cd7
Add support for client-side server reinstallation 2020-04-03 14:43:24 -07:00
Dane Everitt
cb945b1f13
Fix permissions handling; do not allow a subuser to assign permissions they do not have 2020-03-27 16:57:49 -07:00
Dane Everitt
39f79a8f3c
Finish cleaning up subuser view 2020-03-27 16:42:27 -07:00
Dane Everitt
1270e51248
Add support for deleting a subuser from a server 2020-03-27 15:32:33 -07:00
Dane Everitt
a6f46d36ba
Implement basic code for creating/updating a subuser 2020-03-27 14:23:13 -07:00
Dane Everitt
51c5cf4dbb
Get basic modal view for editing/creating a new subuser working 2020-03-25 21:58:37 -07:00
Dane Everitt
8d52e2e1a7
Finalize API key management for accounts 2020-03-22 19:10:49 -07:00
Dane Everitt
933a4733e8
Add base support for creating a new API key for an account 2020-03-22 18:15:38 -07:00
Dane Everitt
32f25170f1
Pass at removing extraneous permissions table and using native MySQL JSON 2020-03-22 16:56:00 -07:00
Dane Everitt
23d594f655
Update all of the permissions checking to be constant based 2020-03-22 15:31:25 -07:00
Dane Everitt
1e0d630e1f
Finish building out schedule management functionality 2020-03-22 13:56:15 -07:00
Dane Everitt
ef38a51d6d
Add base support for editing an existing task 2020-03-18 22:28:32 -07:00
Dane Everitt
78ed343a34
Support deleting a task from a schedule 2020-03-18 21:08:32 -07:00
Dane Everitt
5345a2a3e1
Add initial task listing for schedules 2020-03-17 23:33:53 -07:00
Dane Everitt
32e9fb0346
Add basic listing of server schedules 2020-02-08 15:23:08 -08:00
Dane Everitt
11c430cf69
Correctly mark server as installed 2020-01-19 14:08:28 -08:00
Dane Everitt
dbc7c597d0
Route and handle install state updates 2020-01-19 13:50:38 -08:00
Dane Everitt
3b11ba9fca
Basic support for installation process 2020-01-18 15:26:15 -08:00
Dane Everitt
158958d82d
Password change needs to require user login to reset some cookies
closes #1793
2019-12-28 12:07:42 -08:00
Dane Everitt
5f13531c69
Fix up subuser API response for clients 2019-12-28 12:03:19 -08:00
Dane Everitt
9a0ed6b291
Add ability to disable two factor authentication 2019-12-22 20:41:25 -08:00
Dane Everitt
eb39826f46
Add base logic to configure two factor on account 2019-12-22 17:03:44 -08:00
Dane Everitt
34ffcdae7a
Remove unnecessary API calls to daemon 2019-12-22 13:45:40 -08:00
Dane Everitt
59bfc212c9
Include all server information in details endpoints for daemon to use 2019-12-22 13:28:51 -08:00
Dane Everitt
81bd67cc76
Add ability for user to change server's name 2019-12-09 22:03:10 -08:00
Dane Everitt
24f340c9a1
Fix up SFTP endpoint 2019-12-07 16:14:04 -08:00
Dane Everitt
ed50259484
[#3896cn] Clean up code handling server suspension 2019-11-30 15:37:13 -08:00
Dane Everitt
8f0044575f
Update server creation data logic 2019-11-16 13:33:01 -08:00
Dane Everitt
d69f816d9d
Add handler to fetch all of the system permissions and load them into the state 2019-11-03 17:37:06 -08:00
Dane Everitt
867dbf3bd2
Update all the client API endpoints to use new permissions codes 2019-11-03 17:13:47 -08:00
Dane Everitt
543884876f
Add basic subuser listing for servers 2019-11-03 12:20:11 -08:00
Dane Everitt
0b9c6bd21d
Proxy file downloads through the panel rather than having to get creative with download tokens 2019-10-26 14:36:37 -07:00
Dane Everitt
ac52810ef6
Don't try to parse JSON being returned from the API 2019-09-29 15:32:22 -07:00
Dane Everitt
326d346f92
Handle errors sent back over the sockt 2019-09-28 13:09:47 -07:00
Dane Everitt
030b8ed4fd
Change to support websocket JWT connections 2019-09-24 21:22:11 -07:00
Dane Everitt
18c4b951e6
First pass at converting websocket to send a token along with every call 2019-09-24 20:20:29 -07:00
Dane Everitt
67ff67a1bd
Add endpoints to return a server's egg configuration 2019-09-22 15:30:53 -07:00
Dane Everitt
086018751d
Add underlying code to handle authenticating websocket credentials 2019-09-08 17:48:37 -07:00
Dane Everitt
b99ea53ca1
Update client API endpoints to not use deprecated function 2019-09-05 21:41:20 -07:00
Dane Everitt
7543ef085d
Format files 2019-09-05 21:32:57 -07:00
Dane Everitt
26e4ff1f62
Update to use new repository and standard laravel notation for controllers 2019-09-05 21:31:12 -07:00
Dane Everitt
62cd03d684
Fix command sending error handling and bad assertion order 2019-09-05 21:16:36 -07:00