Commit graph

714 commits

Author SHA1 Message Date
Dane Everitt
3add44d342
Fix database management for servers 2017-07-22 14:07:51 -05:00
Dane Everitt
63e39fbe58
Fix database management things to actually work correctly. 2017-07-22 13:55:30 -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
bc3366b10d
Repository interface improvements 2017-07-15 11:52:34 -05:00
Dane Everitt
1f4f6024cc
Refactor (again) 2017-07-09 12:29:18 -05:00
Dane Everitt
8953f83f87
Add migrations to handle cascade deletions for servers and users 2017-07-08 15:51:13 -05:00
Dane Everitt
2588c25b0b
Service refactor to improve organization 2017-07-08 15:04:59 -05:00
Dane Everitt
761d34f178
don't try to apply columns in the relations field... 2017-07-08 14:17:07 -05:00
Dane Everitt
bd78e3544d
Merge branch 'develop' into feature/PTDL-472 2017-07-08 14:08:02 -05:00
Dane Everitt
0deb022093
Update last of existing services to use repositories, includes unit tests
Also update PHPDocs on all the repository interfaces and classes to be correct.
2017-07-08 14:07:51 -05:00
Joost Kwakkel
a1376db4fd Redirect user to node allocation view after creation, closes #535 2017-07-08 18:14:54 +02:00
Dane Everitt
50588a1f54
Update location and databasehost services to use repositories
Includes unit tests for both services
2017-07-02 21:29:58 -05:00
Dane Everitt
5c3dc60d1e
Addition of repository to ease testing and maintainability 2017-07-01 15:29:49 -05:00
Dane Everitt
2f4ec64f2a
Merge branch 'develop' into feature/PTDL-472 2017-07-01 12:33:30 -05:00
Dane Everitt
9515128b8a
Respond 401 not 404 when bad request token 2017-06-28 20:05:50 -05:00
Dane Everitt
d908672644 Apply fixes from StyleCI (#519) 2017-06-25 15:37:45 -05:00
Dane Everitt
b7b046c044
Merge branch 'develop' into feature/PTDL-472 2017-06-25 15:36:39 -05:00
Dane Everitt
4ee9d38ad1
Add ApiKey service, cleanup old API key methods
https://zube.io/pterodactyl/panel/c/525
2017-06-25 15:31:50 -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
cba54637fc
Fixes bug with newly created variables not being assigned to existing servers properly, closes #478 2017-06-18 21:38:00 -05:00
Dane Everitt
dcab84b1da
Fix bug with server default ports not being updated properly 2017-06-18 21:03:39 -05:00
Dane Everitt
1c5f892049
backfill fixes from 65957e7e to address #470 in active release 2017-06-18 20:39:04 -05:00
Dane Everitt
32b639e3eb
Return a 404 if attempting to delete a user that does not exist; closes #503 2017-06-18 20:27:24 -05:00
Dane Everitt
ce2b2447d0 Apply fixes from StyleCI (#501) 2017-06-17 20:52:32 -05:00
Dane Everitt
0111ca7768
Push more changes to DBHost service.
Currently updating via the frontend is broken if you don't provide an actual node to attach it to.
2017-06-17 19:48:31 -05:00
Dane Everitt
cede747442
Cleanup user and location controllers. 2017-06-17 17:36:39 -05:00
Dane Everitt
760525a673
Push more tests for location services, setup travis CI integration 2017-06-15 23:03:22 -05:00
Dane Everitt
fe4977f0fa
Update admin location routes and controller to use service
Needs tests written, uses new validation on model.
2017-06-14 23:53:24 -05:00
Dane Everitt
26e476a794
Push updates, removes repositories, begins moving functionality to services.
First integration tests included.
2017-06-13 23:25:37 -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
65957e7ea5 Begin implementation of new request validation, closes #470 2017-06-03 18:41:35 -05:00
Dane Everitt
265b697066 Apply fixes from StyleCI (#471) 2017-06-03 17:07:50 -05:00
Dane Everitt
8b762cbaf5
Also update service listing to accommodate no variables. 2017-05-24 20:42:31 -05:00
Dane Everitt
9116547e98
allow emptying server description, closes #442 2017-05-23 23:00:31 -05:00
Dane Everitt
f0fca2a681
Fix missing log class on API calls with errors. 2017-05-23 22:56:54 -05:00
Dane Everitt
8144535b82
Prevent invalid service tag names, ref #443 2017-05-23 21:59:47 -05:00
Dane Everitt
cce27dfff1
Fix API response to show correct error. 2017-05-22 19:25:26 -05:00
Dane Everitt
72c0330486
Fixes 2FA not honoring 'Remember Me' checkbox, closes #439 2017-05-22 19:09:42 -05:00
Dane Everitt
999411da29
Fix inability to assign services with no variables, closes #447 2017-05-22 18:43:52 -05:00
Dane Everitt
5bdd75eb94
Fix IP checking in API middleware, closes #425 2017-05-06 23:02:12 -04:00
Dane Everitt
4306eaa00e
For english language, will be fixed in 0.6.1 when translations are more complete and better implemented. 2017-05-06 22:06:57 -04:00
Dane Everitt
de0b9beacb
Minor visual tweaking and filemanager backend improvements. 2017-05-05 23:13:42 -04:00
Dane Everitt
9343ac7b7d
add more default variables, closes #427 2017-05-05 17:15:13 -04:00
Dane Everitt
a52d9eb0fb
fix error display when server is installing, closes #424 2017-05-05 16:27:38 -04:00
Dane Everitt
4f127b95f0 close #421 2017-05-02 22:41:10 -04:00
Dane Everitt
5651d9ae2b
Fix authentication code for daemon requests. 2017-05-02 20:11:56 -04:00
Dane Everitt
9ccefbec44 Apply fixes from StyleCI (#417) 2017-05-01 23:00:34 -04: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
c59cfce72c Apply fixes from StyleCI (#416) 2017-05-01 20:58:36 -04:00
Dane Everitt
4eaf858684
Fix inability to set user as non-admin, closes #414 2017-05-01 17:05:30 -04:00
Dane Everitt
43df6533b0
Ensure reserved environment names aren't changed, fix undefined variable, ref #412 2017-05-01 17:01:46 -04:00
Dane Everitt
5545075302
Fix docker image field being required for inheritance, closes #413 2017-05-01 16:51:50 -04:00
Dane Everitt
c9c0e845b1
Go nuclear on Safari's autocomplete. 2017-05-01 16:41:39 -04:00
Dane Everitt
b539f26dab
Stop browser autofill on user view pages. 2017-05-01 16:17:31 -04:00
Dane Everitt
6dc1c15739
Fix display of associated servers when viewing an administrative user in the Admin CP. 2017-05-01 15:28:43 -04:00
Dane Everitt
ae6b0f5c5e
Use the cache tags correctly. 2017-05-01 14:52:14 -04:00
Dane Everitt
d919b2ed40
Pass the token correctly. 2017-05-01 14:26:59 -04:00
Dane Everitt
605c91a9af
Use cache helpers rather than database to handle configuration tokens and downloads. 2017-05-01 14:21:18 -04:00
Dane Everitt
2330c25a8c
Move old /remote routes into /daemon sphere. 2017-05-01 13:59:33 -04:00
Dane Everitt
7eb7377dd5
I really need to stop trying to override PHP reserved keywords... 2017-04-28 10:19:04 -04:00
Dane Everitt
1c37a8fe1a
Fixes account creation and password reset abilities. 2017-04-28 00:07:38 -04:00
Dane Everitt
aa6060846d
Actually show errors on password reset page. 2017-04-27 23:44:26 -04:00
Dane Everitt
7e0cbe8db1
Pass behind_proxy properly. 2017-04-27 22:55:42 -04:00
Dane Everitt
3ee7b7cff1
Add ability to mark a node as being over a proxy 2017-04-27 22:52:37 -04:00
Dane Everitt
801aae968c
Show git version if panel is installed with git 2017-04-27 22:28:01 -04:00
Dane Everitt
e4c341795d
Try to automatically quote strings.
Incredibly basic checking, only checks if there is a space and no quote
character.

Also includes comments on edited lines to avoid users changing things
that get overwritten again later.
2017-04-27 16:26:22 -04:00
Dane Everitt
30b4934013
Include default installation scripts, as well as ability to symlink a script 2017-04-27 16:16:59 -04:00
Dane Everitt
77b1a258d9 Weekly fix of my StyleCI violations... 2017-04-24 16:56:38 -04:00
Fillerino
5cc28a0716 Fixing timing attack vuln. on HMAC comparison (#409) 2017-04-24 16:49:03 -04:00
Dane Everitt
147f473eeb
Add back disk limiting! 2017-04-21 22:44:56 -04:00
Dane Everitt
a5a1ea3165
Add ability to change service implementation for a server. 2017-04-21 17:52:44 -04:00
Dane Everitt
e0958414d7
Fix server deletion 2017-04-21 17:21:00 -04:00
Dane Everitt
8dc24471ae
Add reinstall abilities and cleanup process for new servers 2017-04-20 18:52:43 -04:00
Dane Everitt
3fe5d162f5
Add skip scripting option 2017-04-20 17:57:40 -04:00
Dane Everitt
c8f1335a09
Fixup merge 2017-04-20 17:26:20 -04:00
Dane Everitt
8d24e5f168
Merge branch 'develop' into feature/option-scripts
# Conflicts:
#	app/Http/Routes/AdminRoutes.php
#	app/Http/Routes/DaemonRoutes.php
#	app/Models/ServiceOption.php
2017-04-20 17:08:08 -04:00
Dane Everitt
33262cf34c
Set correct console frequency 2017-04-17 21:54:26 -04:00
Dane Everitt
e4ef8caf2d
Fix model not found error when editing an existing subuser. 2017-04-17 21:47:11 -04:00
Dane Everitt
619d3fe480
Fix autodeploy time checking. 2017-04-17 21:37:45 -04:00
Dane Everitt
3acc7b338b
Allow deleting default allocation and setting new default at the same time. 2017-04-17 21:07:37 -04:00
Dane Everitt
de923bbb83
Fix server deletion logic, and clean up suspend/unsuspend operations 2017-04-17 20:16:05 -04:00
kasper Franz
f5810f068a change server to server_id since that is the new name 2017-04-16 13:37:40 +02:00
Dane Everitt
f58858206e
Add console popout option.
Popout: https://s3.kelp.in/IrTyE.png
Menu: https://s3.kelp.in/JYwlC.png
Menu Hover: https://s3.kelp.in/cPtSf.png
2017-04-15 18:23:29 -04:00
Dane Everitt
1a87943f07
Fix missing CommandRepository statement 2017-04-15 13:54:34 -04:00
Dane Everitt
7f1a97184b
Un-butcher task system. 2017-04-15 13:52:43 -04:00
Dane Everitt
0fe9a4566e
Improve server and user model code to accept a specific user 2017-04-15 12:48:47 -04:00
Dane Everitt
2770e6d1b4
Remove old file, fix autoloading issues 2017-04-15 12:13:29 -04:00
Dane Everitt
d20cb144be
Fix misnamed class 2017-04-14 20:46:50 -04:00
Dane Everitt
97cc30e502
Assorted fixes 2017-04-14 20:10:09 -04:00
Dane Everitt
7cead2635a
Spelling. 2017-04-14 17:55:25 -04:00
Dane Everitt
6a1c1c1215
Needle is not haystack. 2017-04-14 17:54:11 -04:00
Dane Everitt
5a95a3a044
Fix environment script to not explode when default option isn't in array. 2017-04-14 17:52:36 -04:00
Dane Everitt
2564276657
Seems the 'r' key is loosing its sensitivity... 👀 2017-04-14 17:11:54 -04:00
Dane Everitt
52fb4f58d5
Ship with support for login notifications 2017-04-14 17:10:01 -04:00
Dane Everitt
f1024ad1a8
Improved login controller func. for 2FA, throws Failed event correctly now 2017-04-14 14:33:15 -04:00
Dane Everitt
26557b6a3f
Fix extraneous MySQL calls being made for each server record listed on page. 2017-04-14 01:25:56 -04:00
Dane Everitt
6fda3b72e4
Display total servers user can access in the Admin CP
closes #356
2017-04-13 23:49:47 -04:00
Dane Everitt
23e6e0510b
Move config::set calls into single helper function 2017-04-13 23:19:01 -04:00
Dane Everitt
9320c26b86
fix misnamed variable, close #377 2017-04-13 22:30:32 -04:00
Emmet Young
16b8480325 Repair php artisan pterodactyl:env 2017-04-11 02:49:37 +10:00
Dane Everitt
2c1b332fee
Minor API handling fixes. 2017-04-09 19:22:49 -04:00
Dane Everitt
db168e34bd Merge pull request #371 from Pterodactyl/feature/fractal-api
Implement new API and Route Updates
2017-04-09 19:17:06 -04:00
Dane Everitt
93d79994f8 Apply fixes from StyleCI (#372) 2017-04-09 19:16:39 -04:00
Dane Everitt
1e43f2049b
Fix up routes and controller names 2017-04-09 19:13:22 -04:00
Dane Everitt
722fd614a1
Add new dynamic view for creating API keys 2017-04-09 18:59:54 -04:00
Dane Everitt
87c09a921b
More defined naming scheme for config 2017-04-09 16:05:18 -04:00
Dane Everitt
de8bbcd098
Configuration for API pagination and includes on listing 2017-04-09 16:04:08 -04:00
Dane Everitt
69dfd380ad
Finalize API routes 2017-04-09 15:53:53 -04:00
Dane Everitt
f0c3f6f9b6
Fix location permission name 2017-04-09 15:39:44 -04:00
Dane Everitt
a2a4ab05c8
Corrected permissions to go with the more logical thought process 2017-04-09 15:35:49 -04:00
Dane Everitt
820d2bf172
Node and user API routes implemented.
More attempts at the logic for API permissions, most likely will need
continued tweaking in the future, but base is there.
2017-04-09 15:31:10 -04:00
Dane Everitt
f24b238e30
Base node route implementation 2017-04-09 13:52:31 -04:00
Dane Everitt
75b8753533
Simplify server and api key policy. 2017-04-09 13:34:47 -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
463f465dea
Block viewing node allocations and location unless user has permission
Blocks viewing the allocation list and location for a node unless a
user has permission to view the node in the first place.
2017-04-08 12:07:17 -04:00
Dane Everitt
4479d3bf19
Improved logic for handling permissions on API routes.
Still only partially implemented, however this method will allow the
inclusion of data that is granted with servers (such as viewing more
about the node, node location, allocations, etc) while still limiting
someone from doing `?include=node.servers` and listing all servers when
they don’t have list-servers as a permission.
2017-04-08 12:05:29 -04:00
Dane Everitt
db4df2bfa1
Push basis of new API key policy
Will need to revisit this another day when I’m fresh to figure out the
best method to do this.
2017-04-07 21:25:17 -04:00
Dane Everitt
51204b8d9d
Add all of the potential transformers that might be needed for now. 2017-04-07 20:28:58 -04:00
Dane Everitt
faa437b77b Use the current_password not password field when verifying passwords. 2017-04-04 12:14:24 -04:00
Dane Everitt
65630bdcce
Move API to use JSON:API standards and fractal serializer
Makes the data slightly more complex, but forces a standard and can
always be changed down the road simply by changing the default
serializer.
2017-04-02 16:51:56 -04:00
Dane Everitt
c071efd008
Finish API routes for users. 2017-04-02 15:52:53 -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
ddb82ac3ca
Add initial user server transformer for API. 2017-04-02 00:49:53 -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
e5f3678c62
Fix login routes 2017-04-01 21:18:56 -04:00
Dane Everitt
5927e0e12a
Merge remote-tracking branch 'origin/develop' into develop
# Conflicts:
#	app/Http/Controllers/Base/LanguageController.php
#	app/Http/Kernel.php
#	app/Http/Middleware/TrimStrings.php
#	app/Providers/RouteServiceProvider.php
2017-04-01 21:03:10 -04:00
Dane Everitt
d80c59aad3
Cleanup routing mechanisms 2017-04-01 21:01:10 -04:00
Dane Everitt
9c303456fb Update codebase to L5.4 (#367) 2017-04-01 17:59:43 -04:00
Dane Everitt
0a95d97d7f
Better support for redis as a backend 2017-04-01 16:31:18 -04:00
Dane Everitt
cbeecfe5e4
Implement front-end server searching 🍬 2017-04-01 13:14:49 -04:00
Dane Everitt
27d472195f
Misc. bug fixes 2017-04-01 12:29:56 -04:00
Dane Everitt
844ebfaf64
Add support for starting server on creation. 2017-04-01 12:29:49 -04:00
Dane Everitt
edaa270a33
Add server descriptions, closes #338 🐖
🐷 https://s3.kelp.in/D0n2Z.png
2017-03-31 23:07:19 -04:00
Dane Everitt
536865b22a
Remove deletion queue for servers. Just immediately delete. 2017-03-31 22:12:31 -04:00
Dane Everitt
2dec659dd1
Fix syntax error. 2017-03-31 21:47:53 -04:00
Dane Everitt
c7d4c3aa76
Send default response 2017-03-31 21:16:00 -04:00
Dane Everitt
ff57e2ff85
Cleanup recaptcha middleware 2017-03-31 21:12:49 -04:00
Dane Everitt
451dd7ebc8 Apply fixes from StyleCI (#364) 2017-03-31 20:48:35 -04:00
Jakob Schrettenbrunner
e613e44749 fix #363 2017-04-01 01:58:05 +02:00
Jakob Schrettenbrunner
0ee80b1fec fix captcha middleware using wrong function when disabled 2017-04-01 01:54:42 +02:00
Jakob Schrettenbrunner
ec0b55bcfe fix missing path for Permission model in SubuserRepository 2017-03-31 12:50:58 +02:00
Jakob Schrettenbrunner
207e0131fc Merge branch 'develop' of github.com:Pterodactyl/Panel into improve-password-reset 2017-03-31 12:20:41 +02:00
Jakob Schrettenbrunner
142cbb0641 Add invisible ReCAPTCHA to login and password reset 2017-03-31 12:19:44 +02:00
Dane Everitt
1f0e95790a
🔒 Don't disclose if account exists when resetting passwords, closes #358 2017-03-30 17:44:20 -04:00
Dane Everitt
9106971565
closes #362 2017-03-30 16:30:22 -04:00
Dane Everitt
95c739a3f3
Update subusers view 2017-03-30 15:31:02 -04:00
Dane Everitt
f0057353ad Apply fixes from StyleCI 2017-03-19 23:52:11 +00:00
Dane Everitt
0312c974f5
Update doc blocks for all app/ 2017-03-19 19:36:50 -04:00
Dane Everitt
5e27772fef
Very rough go at getting API back into operational state.
Not spending a lot of time on this as its a pre-release and I have
plans to overhaul the API to actually work and be easy to maintain.
2017-03-19 13:20:33 -04:00