Commit graph

85 commits

Author SHA1 Message Date
Dane Everitt
3b3002b77a
API Model updates. 2017-02-10 17:29:10 -05:00
Dane Everitt
ba175e6b55
Cleanup location model and controller for Admin. 2017-02-10 17:09:56 -05:00
Dane Everitt
99812b0407
More subuser Model updates. 2017-02-09 19:38:54 -05:00
Dane Everitt
c8f6c93d26
Modify subusers model setup 2017-02-09 18:44:07 -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
0d61417814
Addresses security flaw allowing unauthenticated access to server overview. 2017-02-05 19:59:16 -05:00
Dane Everitt
02458c909d
Improves server model and cleans up model code calls. 2017-02-05 19:19:46 -05:00
Dane Everitt
b1389262e2
Use belongsTo versus hasOne when more logical. 2017-02-05 18:00:39 -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
96d3aa767f
Model updates for Database Management in ACP 2017-02-03 15:19:14 -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
644ee85f59
Fix for StyleCI 2017-02-02 18:25:46 -05:00
Dane Everitt
d4bcf0be59
Initial implementation of improved sever model and logic 2017-02-02 18:21:36 -05:00
Dane Everitt
7f51e5df62
API tweaks to return more relevant information on server listing 2017-02-02 16:24:08 -05:00
Dane Everitt
32c21baab0
Return packs associated with a service when viewing it on the API. 2017-02-02 16:01:18 -05:00
Dane Everitt
4be9e30eee
Include that 30 second limit on other 2FA checks 2017-02-01 23:05:19 -05: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
d21e6b8c90 Merge pull request #267 from hammerdawn/ThemeFixes
Theme Changes
2017-01-22 19:59:37 -05:00
Emmet Young
921c7b1725 Configuration JSON should be including the FQDN instead of localhost for the certificate path. 2017-01-23 11:14:55 +11: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
355697dbb5 Apply fixes from StyleCI (#260) 2017-01-21 15:56:32 -05:00
Jakob Schrettenbrunner
c0df57c087 add isRootAdmin() method to User model to get rid of User->root_admin === 1 2017-01-18 21:13:05 +01: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
a661f71974 fix styleci issues 2017-01-07 18:39:41 +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
Jakob Schrettenbrunner
ef1fa4c4e6 add method to get config as json to node model 2017-01-07 18:06:09 +01: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
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
Jakob
e65dc5708d Validate password on reset according to rules (#158)
* move password rules to Models\User::PASSWORD_RULES

* validate new password according to rules on password reset

* add password requirements info to auth.passwords.reset view
2016-10-30 16:02:39 -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
dfeed013ba
Server API obey's the subuser permissions as well 2016-10-20 17:04:58 -04:00
Dane Everitt
9fd8a087b8
Revert some changes that cause issues with other URLs 2016-10-20 16:48:37 -04:00
Dane Everitt
125856d92f
Support for server info and minor changes to API setup 2016-10-20 16:42:54 -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
af68dbed8f
Add support for base API logging of all requests
ref #31
2016-10-07 16:06:09 -04:00
Dane Everitt
fd8417b5de Fix a display bug with IP aliasing 2016-09-17 14:51:27 -04:00
Dane Everitt
7529e961de Add back API (#80)
Re-implements the API after it was removed in the Laravel 5.3 upgrade.
2016-09-05 16:21:36 -04:00
Dane Everitt
b02df8e610 Implement base notifications support (#77)
* initial implementation of notifications
* typehint UUID returns. Fixes that notifications bug
2016-09-05 12:00:56 -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
8e657a0bf0 Remove old 'active' column and replace some references with 'suspended' in place 2016-09-01 21:21:01 -04:00
Dane Everitt
e8c175f385 Add IP Aliasing (#72)
* complete support for IP Alias's throughout panel

Includes a database change and probably better allocation handling
anyways

closes #37
2016-08-31 16:03:37 -04:00