Go to file
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
.github Update ISSUE_TEMPLATE.md 2016-11-28 17:32:40 -05:00
app Refactor to use more laravel logic and improve compatibility with older PHP versions (#206) 2016-12-12 14:30:57 -05:00
bootstrap Apply fixes from StyleCI 2016-12-07 22:46:38 +00:00
config Apply fixes from StyleCI 2016-12-07 22:46:38 +00:00
database Apply fixes from StyleCI 2016-12-07 22:46:38 +00:00
public update jquery.terminal to v0.11.23 2016-12-10 13:51:07 +01:00
resources Refactor to use more laravel logic and improve compatibility with older PHP versions (#206) 2016-12-12 14:30:57 -05:00
storage Internal Themes 2016-02-04 18:19:31 -06:00
tests Apply fixes from StyleCI 2016-12-07 22:46:38 +00:00
.env.example Rebase 2016-10-27 20:14:24 -04:00
.gitignore Support folders within folders for JS path 2016-10-06 17:27:30 -04:00
.phraseapp.yml Add support for phraseapp integration 2016-10-03 15:05:27 -04:00
artisan Initial Commit of Files 2015-12-06 13:58:49 -05:00
CHANGELOG.md Update CHANGELOG.md 2016-12-07 19:30:55 -05:00
composer.json Use hard-coded versions, add sqs and redis deps for availability out of the box. 2016-10-27 16:35:39 -04:00
CONTRIBUTING.md Create CONTRIBUTING.md 2016-01-20 16:39:03 -05:00
CONTRIBUTORS.md Update CONTRIBUTORS.md 2016-01-21 17:47:58 -05:00
LICENSE.md Relicense project under MIT 2016-01-20 15:56:40 -05:00
README.md Revamped resource graphing, uses chart.js 2016-10-30 00:06:55 -04:00
server.php Apply fixes from StyleCI 2016-12-07 22:46:38 +00:00

Pterodactyl Panel

Pterodactyl is the free game server management panel designed by users, for users. Featuring support for Vanilla Minecraft, Spigot, Source Dedicated Servers, BungeeCord, and many more. Pterodactyl is built on the Laravel PHP Framework (v5.3).

Support & Documentation

Support for using Pterodactyl can be found on our wiki or on our Discord chat.

License

Copyright (c) 2015 - 2016 Dane Everitt <dane@daneeveritt.com>

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Credits

A huge thanks to PhraseApp who provide us the software to help translate this project.

Ace Editor - license - homepage

Animate.css - license - homepage

Async.js - license - homepage

BinaryJS - license - homepage

Bootstrap - license - homepage

BootStrap Notify - license - homepage

Chart.js - license - homepage

FontAwesome - license - homepage

FontAwesome Animations - license - homepage

FuelUX - license - homepage

jQuery - license - homepage

jQuery Terminal - license - homepage

Lodash - license - homepage

Socket.io - license - homepage

SweetAlert - license - homepage

Typeahead — licensehomepage

Additional License Information

Some Javascript and CSS used within the panel is licensed under a MIT or Apache 2.0. Please check their respective header files for more information.

Some images used within Pterodactyl are Copyright (c) their respective owners.

/public/images/403.jpg is licensed under a CC BY 2.0 by BigTallGuy

/public/images/404.jpg is licensed under a CC BY-SA 2.0 by nicsuzor