Commit Graph

528 Commits

Author SHA1 Message Date
Dane Everitt fa62a0982e
Refactor startup modification and environment variable services
Better setup, more flexibility, more tests.
2017-10-26 23:49:54 -05:00
Dane Everitt 508ff8cfb3
Finish front-end server modification changes.
Everything is back to the point that it was before this massive code overhaul began. FInal steps before merging this into develop will be some unit tests.
2017-10-25 22:33:28 -05:00
Dane Everitt 97dc0519d6
Add database management back to front-end and begin some refactoring
Here we go again boys...
2017-10-18 22:32:19 -05:00
Dane Everitt e2cb789b2b
Stop Dane from submitting invalid arrays and breaking the entire application... 2017-10-08 23:44:27 -05:00
Dane Everitt 864513c44b
Fix failing test suite 2017-10-08 20:57:59 -05:00
Dane Everitt 17642bffe7
More code updates 2017-10-07 17:21:41 -05:00
Dane Everitt df87ea0867
This breaks literally the entire panel. 2017-10-06 23:57:53 -05:00
Dane Everitt 38075c6b9f
Update panel to send correct service option configuration to the daemon. 2017-10-05 23:09:43 -05:00
Dane Everitt 29cfae86b1 Merge branch 'develop' into feature/service-export-import 2017-10-05 00:17:17 -05:00
Dane Everitt 6269a08db7
Finalize service option import/export 2017-10-03 23:31:04 -05:00
Dane Everitt d608c313c3
Complete the service option export configuration 2017-10-03 20:18:27 -05:00
TrixterTheTux 6482f79088 Grant execute privilege (#655)
closes #654
2017-10-03 12:53:28 -10:00
Dane Everitt ae671e6b19
Begin updating UI 2017-10-02 22:51:13 -05:00
Dane Everitt b1834307d5
Update demon routes to use /v1/ 2017-09-30 21:00:24 -05:00
Dane Everitt 15d38ce823
Add ability to switch between new and existing daemon 2017-09-30 19:23:44 -05:00
Dane Everitt 281337943f
Fix SQL call 2017-09-30 19:04:36 -05:00
Dane Everitt 238ce435d6
interface_exists does not work how I expected, switch to is_subclass_of 2017-09-30 12:06:16 -05:00
Dane Everitt 048784607d
Minor bug fixes 2017-09-30 11:45:24 -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 906a699ee2
Begin implementation of new daemon authentication scheme 2017-09-23 20:45:25 -05:00
Dane Everitt ccda2b63fa
Add more CLI commands for panel management 2017-09-19 22:10:14 -05:00
Dane Everitt c5f2dfd6f6
Begin adding schedule processing jobs. 2017-09-16 23:10:00 -05:00
Dane Everitt 542d1f8db7
Add new location and user management via CLI 2017-09-15 22:13:33 -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 bab28dbc85
Initial implementation of new task mgmt system 👮 2017-09-09 23:55:21 -05:00
Dane Everitt dc310ffdea
Finish subuser controller 2017-09-04 18:12:13 -05:00
Dane Everitt 54554465f2
Add more front-end controllers, language file cleanup 2017-09-03 16:32:52 -05:00
Dane Everitt 30660cfac2 Apply fixes from StyleCI (#609) 2017-08-30 21:14:20 -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 1e1eac1b9c Apply fixes from StyleCI (#607) 2017-08-27 14:55:25 -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 2cabb61b54
Add subuser deletion service 2017-08-26 13:31:18 -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 9d3dca87f2
Begin moving packs to new service mechanisms, refactor exceptions for services 2017-08-18 22:19:06 -05:00
Dane Everitt 1260a8384a
Initial implementation of controller unit tests. 2017-08-15 23:16:00 -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 2c77d5c44d
Begin implementation of services for services/service options 2017-08-08 23:24:55 -05:00
Dane Everitt 7277f728a9
Complete migration of node controllers/repositories to new service structure 2017-08-08 21:21:10 -05:00
Dane Everitt 669119c8f8
Handle allocation assignment using services
Function is significantly quicker and uses 1 SQL query per IP rather than 1 query per port.
2017-08-05 21:10:32 -05:00
Dane Everitt a4b61846ac Apply fixes from StyleCI (#577) 2017-08-05 17:26:30 -05:00
Dane Everitt c1a078bdcf
Add support for node management actions using new services 2017-08-05 17:20:07 -05:00
Dane Everitt 275c01bc37
Update user service to be more separated 2017-08-04 19:11:41 -05:00
Dane Everitt 8daec38622
Complete base implementation of services for administrative server creation 2017-07-24 21:34:10 -05:00
Dane Everitt f842aae3d3
Add build modification settings, fix exception handling to log to file 2017-07-23 19:57:43 -05:00
Dane Everitt 5144e0126b
Add support for more server functionality 2017-07-23 14:51:18 -05:00
Dane Everitt acbc52506c
Finish unit tests for all server services 2017-07-22 20:15:01 -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 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 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
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 b7b046c044
Merge branch 'develop' into feature/PTDL-472 2017-06-25 15:36:39 -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 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 265b697066 Apply fixes from StyleCI (#471) 2017-06-03 17:07:50 -05:00
Dane Everitt 9116547e98
allow emptying server description, closes #442 2017-05-23 23:00:31 -05:00
Dane Everitt 8144535b82
Prevent invalid service tag names, ref #443 2017-05-23 21:59:47 -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 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 4f127b95f0 close #421 2017-05-02 22:41:10 -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 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 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 3ee7b7cff1
Add ability to mark a node as being over a proxy 2017-04-27 22:52:37 -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
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 e4ef8caf2d
Fix model not found error when editing an existing subuser. 2017-04-17 21:47:11 -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 7f1a97184b
Un-butcher task system. 2017-04-15 13:52:43 -04:00
Dane Everitt 23e6e0510b
Move config::set calls into single helper function 2017-04-13 23:19:01 -04:00
Dane Everitt 2c1b332fee
Minor API handling fixes. 2017-04-09 19:22:49 -04:00
Dane Everitt 93d79994f8 Apply fixes from StyleCI (#372) 2017-04-09 19:16:39 -04:00
Dane Everitt 722fd614a1
Add new dynamic view for creating API keys 2017-04-09 18:59:54 -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 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 c071efd008
Finish API routes for users. 2017-04-02 15:52:53 -04:00
Dane Everitt 9c303456fb Update codebase to L5.4 (#367) 2017-04-01 17:59:43 -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
Jakob Schrettenbrunner ec0b55bcfe fix missing path for Permission model in SubuserRepository 2017-03-31 12:50:58 +02: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 4e916cbf08
Fix auto-deploy checkbox triggering error 2017-03-19 12:39:22 -04:00
Dane Everitt e8a80c6a20
Fix allocation parsing bug. 2017-03-19 11:13:18 -04:00
Dane Everitt 03e0de28d9
Initial implementation of option scripts on panel side. 2017-03-18 13:09:30 -04:00
Dane Everitt 5d990dcb06
Revert "Rename startup command to add deprecation support to containers."
This reverts commit fdd1d11038.
2017-03-17 19:35:48 -04:00
Dane Everitt fdd1d11038
Rename startup command to add deprecation support to containers. 2017-03-17 19:09:54 -04:00
Dane Everitt 202dd52e2b
Fixes bug causing MySQL user accounts to be corrupted when resetting a password via the panel.
closes #352
2017-03-17 17:17:36 -04:00
Dane Everitt 7e45f917c7
Fix subuser permissions in file manager 2017-03-17 16:19:45 -04:00
Dane Everitt 4ad09c5435
Fixes bug introduced during admin rewrite that broke server creation 2017-03-16 21:11:15 -04:00
Dane Everitt be60299089
Send correct container to daemon 2017-03-16 20:49:11 -04:00
Dane Everitt 198a021a97
Add database host management to panel. 2017-03-16 19:35:29 -04:00
Dane Everitt 5bbded2c03
Correctly json_encode validation errors. 2017-03-16 19:30:04 -04:00
Dane Everitt 05d2a6d370
Add back locations with new theme 2017-03-16 18:09:02 -04:00
Dane Everitt db072025d4
Reference the correct column in the DB 2017-03-15 21:39:50 -04:00
Dane Everitt 1c47b2ed55
Finish pack management in Admin CP 2017-03-15 20:52:37 -04:00
Dane Everitt 50558db7c3
Add initial pack creation and overview pages 2017-03-14 21:18:36 -04:00
Dane Everitt 2d90187c83
StyleCI fixes 2017-03-12 19:38:50 -04:00
Dane Everitt fcadee7e67
Fix front and backend views with new service variable setups 2017-03-12 19:34:06 -04:00
Dane Everitt 66e94dd7c0
combine validation 2017-03-12 18:31:56 -04:00
Dane Everitt 97cad1d55e
Update seeders to not error out and allow updating values quickly. 2017-03-12 18:02:15 -04:00
Dane Everitt e791d561ba
More StyleCI... 2017-03-12 16:35:25 -04:00
Dane Everitt 1897741381
StyleCI cleanup 2017-03-12 16:34:43 -04:00
Dane Everitt f5a4ec981d
Add ability to create new service variable. 2017-03-12 16:28:38 -04:00
Dane Everitt 419031e0cd
Add function file editing, and move all service file items into database 2017-03-12 15:59:17 -04:00
Dane Everitt d7682bb7c9
Complete new service, option, and variable management interface in Admin CP 2017-03-12 00:00:06 -05:00
Dane Everitt bccbb309b2
Fix broken descriptors 2017-03-11 15:02:04 -05:00
Dane Everitt 70db461075
Start push of service changes.
Changes the way service files are stored and allows for much easier
updates in the future that won’t affect custom services.

Also stores more configurations in the database to make life easier for
everyone.
2017-03-10 18:25:12 -05:00
Dane Everitt 5bf2e2686a Apply fixes from StyleCI (#335) 2017-03-05 20:28:29 -05:00
Dane Everitt 32dec97e46
Improved database mechanics in admin CP for server view 2017-03-05 16:37:40 -05:00
Dane Everitt 349b36d38a
Added startup management, cleaned up code.
Refactored entire startup repository code block to be more efficient
and cleaner. Also includes modifications to front-end to make it match
backend name and design.
2017-03-04 23:45:25 -05:00
Dane Everitt e688468920
Push updated server views 2017-03-04 19:03:49 -05:00
Dane Everitt b1564389d8 Apply fixes from StyleCI (#331) 2017-03-03 23:38:21 -05:00
Dane Everitt fd9f1a68eb
Implement node view, cleanup other files.
Still in progress, need to do a lot of controller cleanup first and add
node deletion as well.
2017-03-03 17:30:41 -05:00
Dane Everitt fb21bf9282
Begin implementation of server admin view
Currently completed tabs: About, Details, Build Configuration
2017-02-25 00:48:14 -05:00
Dane Everitt bbf9fd12ae Apply fixes from StyleCI (#325) 2017-02-24 18:23:03 -05:00
Dane Everitt cb6b44d4f0
Completed new server page with new theme. 2017-02-24 18:19:03 -05:00
Dane Everitt b11029a666 Apply fixes from StyleCI (#312)
* Bump for release

* Apply fixes from StyleCI
2017-02-18 22:57:50 -05:00
Dane Everitt 824041f6ca
Fix service creation/updates, closes #306 2017-02-17 20:40:50 -05:00
Dane Everitt 054e65b78f
Fix user deletion 2017-02-17 19:28:23 -05:00
Dane Everitt 95171a3e41
Better user creation email. 2017-02-17 18:48:57 -05:00
Dane Everitt 3240601d03
Fix bug when trying to add new subuser. 2017-02-17 18:26:47 -05:00
Dane Everitt ff9904227b
Fix server editing 2017-02-17 18:17:28 -05:00
Dane Everitt 008b18e19a
Fixes deployment issue with new servers due to DB changes. 2017-02-17 12:08:11 -05:00
Dane Everitt 73996d3154
Fix bug in node update 2017-02-16 15:57:02 -05:00
Dane Everitt 10164f5a51
Require admin to update startup argument. 2017-02-16 14:23:22 -05:00
Dane Everitt 8740be05b3
Fix adding variables 2017-02-16 14:07:10 -05:00
Dane Everitt 2e134b7a55
Set out some roach traps to catch all these 🐛 2017-02-16 13:56:28 -05:00
Dane Everitt 336234843d
Remove deprecated function calls 2017-02-16 13:31:25 -05:00
Dane Everitt 38feac9f0b
Fix server deletion mechanics 2017-02-16 13:26:39 -05:00
Dane Everitt 516e2dc5ee
Add back API key deletion 2017-02-16 12:57:48 -05:00
Dane Everitt 2fdde75f9c
Fix boolean flipping 2017-02-15 16:59:50 -05:00
Dane Everitt 788de1b23a
Fix grepping about. 2017-02-15 16:57:45 -05:00
Dane Everitt 19d352619e
More singularization and correct file names. 2017-02-12 16:03:17 -05:00
Dane Everitt 8ba479e51f
Singularize model names. 2017-02-12 16:02:23 -05:00
Dane Everitt 7c916ad38f Apply fixes from StyleCI (#294) 2017-02-12 15:10:39 -05:00
Dane Everitt 32a1dc17ed
API model updates, as well as general model updates and code fixes. 2017-02-10 20:26:38 -05:00
Dane Everitt 8dc1f41b73
More code cleanup. 2017-02-10 17:41:56 -05:00
Dane Everitt 3b3002b77a
API Model updates. 2017-02-10 17:29:10 -05:00
Dane Everitt 99812b0407
More subuser Model updates. 2017-02-09 19:38:54 -05:00
Dane Everitt 4f61637284
More model updates to more places than I anticipated.
This probably broke a lot of things.
2017-02-09 17:43:54 -05:00
Dane Everitt 323f1d943f
Completed model updates for Services 2017-02-05 17:58:17 -05:00
Dane Everitt 09d23deed6
New models for node and location admin pages. 2017-02-03 16:50:28 -05:00
Dane Everitt 3baa21a6eb
StyleCI fixes. 2017-02-02 19:43:55 -05:00
Dane Everitt 3114b7e52a
Complete implementation of new Server model. 2017-02-02 19:41:38 -05:00
Dane Everitt d4bcf0be59
Initial implementation of improved sever model and logic 2017-02-02 18:21:36 -05:00
Dane Everitt e5ed1c7f6a One day eslint will have a PHP counterpart that works in Atom... 🤔 2017-01-31 20:04:34 -05:00
Dane Everitt 1679d866a5
Improved gzip detection 2017-01-27 16:47:50 -05:00
Dane Everitt 9087feec4f
Remove build settings from packs. 2017-01-27 16:21:25 -05:00
Dane Everitt 95d0c646f9
Require packs to be a tarball 2017-01-25 18:25:34 -05:00
Dane Everitt 96e50506a1
Move notification email of server created into the event listener 2017-01-25 18:25:34 -05:00
Emmet Young 58de6125c2 Location should be validated on creation of a server, 2017-01-25 22:01:57 +11:00
Dane Everitt a137e6ed72
Add base implementation of extendable events classes
Modified server deletion to use internal event handlers from the
Eloquent models themselves. Also added a few preliminary event handlers
in the `Pterodactyl\Events\<USer|Server> namespace that users can hook
into in EventServiceProvider to perform their own actions as they
please (such as push notifications and such).
2017-01-24 19:15:03 -05:00
Dane Everitt bf7b58470a
Update copyright headers 2017-01-24 17:57:08 -05:00
Dane Everitt 5f1bfcf980
Much cleaner code for updating user details front-end 2017-01-22 16:16:43 -05:00
Emmet Young 9025f1f583 Repair user creation functionality
Repair functionality of the make user console command (pterodactyl:user)
Fix up the user repository, was using the old $password instead of the changed format $data['password']
Change User model to allow root_admin to be a fillable item.
2017-01-23 00:47:09 +11:00
Dane Everitt 8e9069cced
Subuser updates 2017-01-21 00:04:09 -05:00
Dane Everitt 0d792f05c5
Properly handle no passed packs. 2017-01-13 23:21:37 -05:00
Dane Everitt b71604566e
Improved code to generate SFTP usernames
Fixes edge case where specific server names could cause daemon errors
due to an invalid SFTP username being created by the panel.
2017-01-13 22:22:25 -05:00
Dane Everitt e91362eee6
Update user controller 2017-01-12 15:40:24 -05:00
Dane Everitt 6bd9663f59
Merge branch 'develop' into feature/service-changes 2017-01-12 13:15:37 -05:00
Jakob Schrettenbrunner 52a395ac9a fix forgotten rename of NodeConfigurationToken 2017-01-07 18:26:45 +01:00
Jakob Schrettenbrunner e1e159b7de add ability to generate a token to retrieve the config for a specific node 2017-01-07 18:10:11 +01:00
Dane Everitt fb182ffb4a Apply fixes from StyleCI 2016-12-30 22:00:06 +00:00
Dane Everitt 0afa568095
Address two bugs in subuser system.
1.) Prevents adding the owner of a server as a subuser which could
potentially break things.
2.) Prevents adding duplicate subusers for a server.
2016-12-30 16:28:43 -05:00
Dane Everitt 7848f63e05
Fix error thrown on `0` values for variables, closes #223 2016-12-30 16:00:51 -05:00
Dane Everitt 43786b1d2a
Block addition of more than 2000 ports at once, closes #219 2016-12-30 15:50:37 -05:00
Dane Everitt 9a494d8245
Adjust server name requirements, closes #205 2016-12-30 15:46:10 -05:00
Dane Everitt fd360f6475
Fix data pack assignment 2016-12-14 17:17:16 -05:00
Dane Everitt efda0dd009 Apply fixes from StyleCI 2016-12-14 21:56:25 +00:00
Dane Everitt fc38b09e1f
Merge branch 'develop' into feature/service-changes 2016-12-14 16:53:53 -05:00
spaceemotion a85ac87ae8 Refactor to use more laravel logic and improve compatibility with older PHP versions (#206)
* Fix @param namespaces for PHPDocs in ServerPolicy

* Reduce permission check duplication in ServerPolicy

This introduces a new checkPermission method to reduce code duplication when checking for permissions.

* Simplify logic to list accessible servers for the user

We can directly use the pluck function that laravel collections provide to simplify the logic.

* Fix pagination issue when databases/servers exceed 20

Laravels strips out the currently selected tab (or any GET query for that matter) by default when using pagination. the appends() methods helps with keeping that information.

* Refactor unnecessary array_merge calls

We can just append to the array instead of constantly merging a new copy.

* Fix accessing “API Access” on some versions of PHP

The “new” word is reserved and should not be used as a method name.

http://stackoverflow.com/questions/9575590/why-am-i-getting-an-unexpected-t-new-error-in-php

* Fix revoking API keys on older versions of php (5.6)

“string” was not a valid function argument type yet, so revoking keys results in an error on older installations.

* Fix issues with API due to methods named “list”

“list” is yet another reserved keyword in PHP and messes up older installations of PHP (5.6).
This renames all methods named “list” to “lists”. The API route names are left untouched (e.g. still called “api.admin.users.list”).

* Refactor and shorten some API logic

Used laravel collection methods where applicable to directly transform the values instead of converting back and forth.
This also removes some dead variables that were never used as well as getting rid of a n+1 problem in the Service API (loading service variables afterwards, not during the model creation).

* Return model save status in repositories where applicable

* Fix typo in ServicePolicy#powerStart

* Apply StyleCI corrections
2016-12-12 14:30:57 -05:00
Dane Everitt c1fb0a665f Apply fixes from StyleCI 2016-12-07 22:46:38 +00:00
Dane Everitt 259b220dfc
misc file cleanup 2016-12-02 18:45:08 -05:00
Dane Everitt 1eb1f96e71
Add support for updating the daemon's configuration file automatically. 2016-12-01 18:33:32 -05:00
Emmet Young a03add7e4f Allow API to set a custom ID for server creation. (#187)
* Allow API to set a custom ID for server creation.

Useful when dealing with billing systems such as WHMCS

* Correct API code changes based on feedback.
2016-11-30 11:01:22 -05:00
Dane Everitt 75de060a55
Fix pack selector 2016-11-27 14:57:23 -05:00
Dane Everitt c4a4b84bd3
Add service pack reference to server and send to daemon 2016-11-27 14:50:10 -05:00
Dane Everitt 9eb14614c2
Merge branch 'develop' into feature/service-changes 2016-11-27 14:01:13 -05:00
Dane Everitt f6275058d0
Support for hostnames in database connection field. 2016-11-26 20:27:36 -05:00
Dane Everitt 1ad715f1a3
Improve database management for servers, fixes #181 2016-11-26 17:34:14 -05:00
Dane Everitt 723b608e0c
Implement node deletion properly, fixes #173 2016-11-26 16:29:13 -05:00
Dane Everitt fc2ce11a39
Add template, add files when new service is added. 2016-11-18 18:22:26 -05:00
Dane Everitt 5600f3201c
Add support for deleting service packs. 2016-11-18 17:31:57 -05:00
Dane Everitt d4729427aa
Support for uploading templates for installing packs 2016-11-16 17:22:22 -05:00
Dane Everitt e09659a88f
support for pack editing 2016-11-16 16:09:28 -05:00
Dane Everitt a1bc6fa2d3
Push changes that support creations of service packs and basic listing 2016-11-15 20:20:32 -05:00
Dane Everitt cfd5e0e854
Implement base service file modification through panel 2016-11-09 17:58:14 -05:00
Dane Everitt cd3f5ed6fe
Correct password setting for MySQL user 2016-11-04 20:47:40 -04:00
Dane Everitt 6fd7c78f0c
Add server deletion to a queue.
This action allows servers to be deleted, but only be soft-deleted for
10 minutes. After that time period the server will be completely
removed from the database and daemon. This allows some safety if a
server is accidentally deleted.

Force deleting a server will still work. If the daemon is in-accessible
the server will fail to be deleted. When server is soft-deleted admins
can still view its information page in the admin CP, however the server
will be suspended and inaccessible on the front-end or though the
daemon.

Admins can manually delete the server ahead of the delete timer, or if
it failed to delete previously they can do an immediate retry.
2016-10-27 20:05:29 -04:00
Dane Everitt 55c9f0f2f2
Delete databases when we delete a server. 2016-10-23 19:21:57 -04:00
Dane Everitt 08b236ac1d
better port checking, don't send rebuild unless things are changed. 2016-10-23 19:07:29 -04:00
Dane Everitt 0b044b3cc6
fixes bug that would allow deleting the default allocation for a server. 2016-10-23 18:59:13 -04:00
Dane Everitt dda5d9aa01
Fix no error display if adding a server with an invalid email 2016-10-23 18:48:14 -04:00
Dane Everitt ad906e0680
FQDN support for allocations, and JS bug fix. 2016-10-21 17:33:26 -04:00
Dane Everitt 0f4648b13a
Fixes adding api keys a little more 2016-10-20 18:29:34 -04:00
Dane Everitt 53ec2c55ec
Add front-end support for adding and deleting API keys. 2016-10-20 18:20:58 -04:00
Dane Everitt 745c735b32
Add initial basic API changes
New route is `/api/me`
2016-10-14 20:22:23 -04:00
Dane Everitt c989dd0cc2
Send notification when server is created for user 2016-10-14 15:58:52 -04:00
Dane Everitt a115c71433
Change SFTP username to be name_uuidShort 2016-10-14 15:34:01 -04:00
Dane Everitt 06422b2055
fix up API route return 2016-10-07 14:26:50 -04:00
Dane Everitt fbfaec6b20
create server with user ID or email 2016-10-06 22:43:50 -04:00
Dane Everitt 9d10c2a757
Support custom user id though API, closes #115 2016-10-06 22:36:59 -04:00
Dane Everitt c347a6756c
Save set image to database 2016-10-06 22:32:54 -04:00
Dane Everitt a2fc511e7e
Add permissions for filemanager stuff to subusers 2016-10-06 20:29:21 -04:00
Dane Everitt 8330e26b39
Update routes to reflect daemon changes 2016-10-04 21:38:32 -04:00
Dane Everitt 81dc74a175
File adding support, editor enhancements, JS improved. 2016-10-03 20:22:28 -04:00
Dane Everitt dbd2900f0f
Merge branch 'develop' into feature/filemanager 2016-10-03 13:19:02 -04:00
Dominic Fitch-Jones b67813b260 Make sure that you can't delete your own account. (#110) 2016-10-02 21:27:25 -04:00
Dane Everitt fb4d122a2a
More updates to file manager
Not doing individual commits for this, tons of changes for tons of
different aspects across multiple files.
2016-10-01 23:09:55 -04:00
Dane Everitt 6098f31f9a
Better dropdown menu setup, more options
Still rough
2016-10-01 15:40:38 -04:00
Dane Everitt 30f58382bc
Add support for automatic node assignment 2016-09-27 21:01:46 -04:00
Dane Everitt d9f1a7faf7 allow setting variable options to "0", closes #87 2016-09-17 20:25:13 -04:00
Dane Everitt 812b869be8 add ability to change servers docker image 2016-09-17 20:14:36 -04:00
Dane Everitt bcd4b35890 Startup not required, fix display executable bug 2016-09-16 18:39:36 -04:00
Dane Everitt c9420cdd7e Don't require executable or startup for services 2016-09-16 17:59:26 -04:00
Dane Everitt abaf29483b Only send updated data to daemon; makes better use of on-the-fly container updates
Now we only send information that would trigger a container rebuild if
it actually changes from current settings.
2016-09-14 18:36:33 -04:00