Commit graph

137 commits

Author SHA1 Message Date
Dane Everitt
3411df784a
Use the HttpExceptionInterface rather than a render function here 2019-03-03 13:57:18 -08:00
Dane Everitt
cf31d4276c
Fix a bug causing DataIntegrityExceptions to not be caught correctly and cause a second exception... whoops. 2019-03-03 13:42:32 -08:00
Dane Everitt
114afb8646
Fix error transaction handling when creating a server.
There is a bug in the design of the application that affects users who encounter an exception under certain code pathways who are using the database to maintain their sessions.

What is happening is that a transaction is started, and I made the mistake of just assuming it would auto-rollback once the exception was caught by the handler. This is technically true, since once the request terminates the transaction is discarded by the SQL server. However, this also means that the session data set on that request would not be persisted as it runs in a middleware termination function, after the transaction is started.

Theoretically this would also affect any other terminable middleware as well, but the session is the only one I can think of right now

Co-Authored-By: Oreo Oreoniv <zkoz210@users.noreply.github.com>
Co-Authored-By: Stepan Fedotov <trixterthetux@users.noreply.github.com>
2019-03-02 18:28:28 -08:00
Dane Everitt
a7fae86e58
Treat unauthenticated exceptions the same as everything else 2018-07-14 22:42:38 -07:00
Dane Everitt
bde4d4187f
Merge branch 'develop' into feature/api-integration-testing 2018-03-21 22:25:16 -05:00
Dane Everitt
b96c2d16ee
Added validation to variable validation rules to validate that the validation rules are valid
closes #988
2018-03-17 15:09:09 -05:00
Dane Everitt
40c74ae1e7
Add validation to prevent invalid ports, closes #1034 2018-03-10 13:10:40 -06:00
Dane Everitt
e5c59c4984
Change exception handling for display exception 2018-03-10 13:02:41 -06:00
Dane Everitt
bbbab4bf81
Handle error codes from custom rules better 2018-03-04 22:21:23 -06:00
Dane Everitt
07893effa3
Add initial go at user created databases for servers, still needs cleaning 2018-03-01 21:27:37 -06:00
Dane Everitt
e28973bcae
Move everything around as needed to get things setup for the client API 2018-02-25 15:30:56 -06:00
Dane Everitt
1eb76c4457
Log more information for PDOExceptions while also keeping passwords out. 2018-02-18 14:31:40 -06:00
Dane Everitt
f42bc8a031
Cleanup exception reporting, stop logging PDO exception stacks.
PDOException stacks include the MySQL password for the connection attempt and many people do not realize this when providing logs.
2018-02-04 13:31:39 -06:00
Dane Everitt
c599112021
Finalize server management API 2018-01-30 20:36:59 -06:00
Dane Everitt
5ed164e13e
Implement server creation though the API.
Also implements auto-deployment to specific locations and ports.
2018-01-28 17:14:14 -06:00
Dane Everitt
97ee95b4da
Fix some error handling 2018-01-27 13:26:43 -06:00
Dane Everitt
de07b3cc7f
Add server database management support to API. 2018-01-25 22:34:53 -06:00
Dane Everitt
aca0819bcd
Add server build management to API 2018-01-21 16:02:03 -06:00
Dane Everitt
cf21fd5a4b
More API updates, better support for node config edits 2018-01-10 23:19:03 -06:00
Dane Everitt
15289b76a7
Finish first round of User/Node API additions
Will still need some tweaking and improvements to allow everything to be used.
2018-01-01 15:11:44 -06:00
Dane Everitt
46d7ba7585
Merge branch 'develop' into feature/api-v1 2017-12-31 10:32:28 -06:00
Dane Everitt
6b2d7b6488
If folder does not exist, reload the file manager index 2017-12-31 10:30:19 -06:00
Dane Everitt
54b6fb5ebd
More work on the API utilizing Laravel 5.5 exception rendering
Also corrects API format to maintain JSONAPI spec
2017-12-17 14:57:05 -06:00
Dane Everitt
4a65dff940
Implement admin user management API routes 2017-12-16 11:31:18 -06:00
Dane Everitt
975597b4d0
Implement changes to administrative user revocation, closes #733 2017-12-03 14:00:47 -06:00
Dane Everitt
20c1c74116 Fix issues with validation in admin CP for server variables, closes #780 2017-11-25 13:15:46 -06:00
Dane Everitt
57db949a9c
Tests a'hoy 2017-10-23 21:10:32 -05:00
Dane Everitt
d50ea18598
Add support for changing the server default allocation as a normal user 2017-10-20 21:32:57 -05:00
Dane Everitt
e01d7497f5
Add ability to update an Egg by re-uploading a file. 2017-10-08 23:50:52 -05:00
Dane Everitt
6b8464ea3a
Nest & Egg management working through the ACP now. 2017-10-07 16:16:51 -05:00
Dane Everitt
df87ea0867
This breaks literally the entire panel. 2017-10-06 23:57:53 -05:00
Dane Everitt
675e780946
Fix test failures 2017-10-06 00:16:22 -05:00
Dane Everitt
6269a08db7
Finalize service option import/export 2017-10-03 23:31:04 -05:00
Dane Everitt
1216f950e2
Prevent deletion of options that have children attached to them.
closes #562
2017-09-30 12:54:09 -05:00
Dane Everitt
fb7ef2d775
test post please ignore 2017-09-26 22:54:34 -05:00
Dane Everitt
fb8a26f141
Merge branch 'develop' into feature/api-daemon-changes 2017-09-25 21:46:44 -05:00
Dane Everitt
e56f4cdd33
Update license headers on files. 2017-09-25 21:43:01 -05:00
Dane Everitt
7d1c233c49
Final adjustments to Daemon <-> Panel communication change 2017-09-24 21:12:30 -05:00
Dane Everitt
0f0c319ec0
Allow exceptions to throw their own error codes from within.
Temp work-around for tons of logic until upgrade to 5.5 is done.
2017-09-24 12:32:29 -05:00
Dane Everitt
906a699ee2
Begin implementation of new daemon authentication scheme 2017-09-23 20:45:25 -05:00
Dane Everitt
a498bbc7d5
Move location service to match other services 2017-09-15 00:16:03 -05:00
Dane Everitt
2ac90b50f2
Begin refactoring Tasks to be apart of the Scheduler system 2017-09-12 23:45:19 -05:00
Dane Everitt
54554465f2
Add more front-end controllers, language file cleanup 2017-09-03 16:32:52 -05:00
Dane Everitt
4532811fcd
Improved middleware, console page now using new setup 2017-09-02 21:35:33 -05:00
Dane Everitt
e045ef443a
Should wrap up the base landing page stuff for accounts, next step is server rendering 2017-08-30 21:11:14 -05:00
Dane Everitt
f451e4dc47
Begin unit tests for repositories 2017-08-26 19:58:24 -05:00
Dane Everitt
72735c24f7
Complete move from old repository to new repository structure! 2017-08-26 18:08:11 -05:00
Dane Everitt
74ea1aa0aa
Push subuser creation service 2017-08-23 21:34:11 -05:00
Dane Everitt
3ee5803416
Massive PHPCS linting 2017-08-21 22:10:48 -05:00
Dane Everitt
cdfbc60030
Push pack services and fix for failing tests 2017-08-20 19:23:50 -05:00
Dane Everitt
280633b28a
More service classes for pack management 2017-08-19 20:40:00 -05:00
Dane Everitt
9d3dca87f2
Begin moving packs to new service mechanisms, refactor exceptions for services 2017-08-18 22:19:06 -05:00
Dane Everitt
90bbe57148
Move services onto new services system, includes tests 2017-08-15 22:21:47 -05:00
Dane Everitt
b8d7d99096
More repository/service/refactor changes 2017-08-12 15:29:01 -05:00
Dane Everitt
a4b61846ac Apply fixes from StyleCI (#577) 2017-08-05 17:26:30 -05:00
Dane Everitt
acbc52506c
Finish unit tests for all server services 2017-07-22 20:15:01 -05:00
Dane Everitt
580e5ac569
Begin working on administrative server view changes
Also includes tests for the DatabaseCreation service.
2017-07-21 21:17:42 -05:00
Dane Everitt
0c513f24d5
Move server creation over to new service/repository setup.
Moves tons of functions around, but the basic implementation is working again.

Some features are still missing, and the service never actually commits the server to the database right now.

This push is mostly just to get the code into Github and backed up.
2017-07-19 20:49:41 -05:00
Dane Everitt
5c3dc60d1e
Addition of repository to ease testing and maintainability 2017-07-01 15:29:49 -05:00
Dane Everitt
2235481765
More service structure testing and configuration
Tests aren't working as well as I had hoped, so a lot are commented out while I wait to hear back on this bug causing them to fail.
2017-06-24 19:49:09 -05:00
Dane Everitt
5c2b9deb09
Push initial implementations of new repository structure
This breaks almost the entire panel, do not pull this branch in this state.

Mostly just moved old repository files to a new folder without updating anything else in order to start doing new things. Structure is not finalized.
2017-06-10 22:28:44 -05:00
Dane Everitt
cce27dfff1
Fix API response to show correct error. 2017-05-22 19:25:26 -05:00
Dane Everitt
b3e5565f85
Cleanup auto-deployment functions substantially
Also cleans up ServerRepository to use named models more clearly.
2017-05-01 22:59:58 -04:00
Dane Everitt
93d79994f8 Apply fixes from StyleCI (#372) 2017-04-09 19:16:39 -04:00
Dane Everitt
c492446513
Implement initial server and location API routes.
Also fixes a few exception handler issues causing incorrect HTTP status
codes on authorization errors.
2017-04-09 13:15:15 -04:00
Dane Everitt
97773300ed
Better middleware for routes, cleaned up API, removed old API calls
New API routes for Server allow specifying which fractal objects to
load into the request, thus making it possible to fine-tune what data
is returned.
2017-04-02 13:19:39 -04:00
Dane Everitt
87530cdc01
Initial moves to new API scheme.
Implements a better middleware for handling API authentication, as well
as cleaner route handling.
2017-04-02 00:11:52 -04:00
Dane Everitt
9c303456fb Update codebase to L5.4 (#367) 2017-04-01 17:59:43 -04:00
Dane Everitt
0312c974f5
Update doc blocks for all app/ 2017-03-19 19:36:50 -04:00
Dane Everitt
bf7b58470a
Update copyright headers 2017-01-24 17:57:08 -05:00
Dane Everitt
1c85b1fbc4
Fix exception handler misnamed variable 2017-01-15 13:53:08 -05:00
Dane Everitt
f292080483
Should close #244
What a peculiar bug. Also modifies code to try and return the correct
status code, as well as return JSON based errors on any request that
Laravel thinks should have a JSON based response.
2017-01-12 13:44:23 -05:00
Dane Everitt
c1fb0a665f Apply fixes from StyleCI 2016-12-07 22:46:38 +00:00
Dane Everitt
33ca221b99 Fix typo in exception handler 2016-09-07 18:25:11 -04:00
Dane Everitt
228d6b1b21 Clean up exception handling code, closes #81
Makes sure things get logged properly.
2016-09-07 16:12:06 -04:00
Dane Everitt
afb5011fbe Update to Laravel 5.3
[BREAKING] — REMOVES REMOTE API

A new API will need to be implemented properly using the new Laravel
Passport OAuth2 system. DingoAPI was becoming too unstable and
development wasn’t really moving along enough to continue to rely on it.
2016-09-03 17:09:00 -04:00
Dane Everitt
4d31004cf4 Suppress overly verbose error output to users 2016-08-16 19:20:58 -04:00
Dane Everitt
76049c5860 Improved exception handler for AJAX requests 2016-02-08 18:03:05 -05:00
Dane Everitt
40c68a5391 Add title to copyright 2016-01-20 16:05:16 -05:00
Dane Everitt
026df6a36f Relicense project under MIT
Permission obtained from @DDynamic. Contributions from other users were
removed since we did not obtain permission from them for the re-license.

From this point forward all contributors must have a signed Contributor
License Agreement on file.
2016-01-20 15:56:40 -05:00
Dane Everitt
b0bcb879d0 Add license details to add app files. 2016-01-19 19:10:39 -05:00
Dane Everitt
98b3355158 very basic initial push of API 2016-01-12 01:05:44 -05:00
Dane Everitt
a3eb4b7dc4 Update to Laravel 5.2 2016-01-11 22:04:11 -05:00
Dane Everitt
59fb0eae4f Improved file downloading 2016-01-01 19:27:44 -05:00
Dane Everitt
264431a271 Whats this? We can add new servers now?! 2015-12-15 15:08:41 -05:00
Dane Everitt
b6ac96550b Fairly basic implementation of adding a server. Does not actually do anything yet.
Pushing this for commit sake.
2015-12-11 23:29:00 -05:00
Dane Everitt
1489f7a694 Initial Commit of Files
PufferPanel v0.9 (Laravel) is now Pterodactyl 1.0
2015-12-06 13:58:49 -05:00