Merge branch 'develop' into feature/option-scripts
# Conflicts: # app/Http/Routes/AdminRoutes.php # app/Http/Routes/DaemonRoutes.php # app/Models/ServiceOption.php
This commit is contained in:
commit
8d24e5f168
683 changed files with 8854 additions and 12362 deletions
|
@ -33,30 +33,38 @@ use Pterodactyl\Http\Controllers\Controller;
|
|||
class BaseController extends Controller
|
||||
{
|
||||
/**
|
||||
* Controller Constructor.
|
||||
* Return the admin index view.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
public function getIndex(Request $request)
|
||||
{
|
||||
return view('admin.index');
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the admin settings view.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function getSettings(Request $request)
|
||||
{
|
||||
return view('admin.settings');
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle settings post request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function postSettings(Request $request)
|
||||
{
|
||||
$validator = Validator::make($request->all(), [
|
||||
'company' => 'required|between:1,256',
|
||||
'default_language' => 'required|alpha_dash|min:2|max:5',
|
||||
'email_from' => 'required|email',
|
||||
'email_sender_name' => 'required|between:1,256',
|
||||
]);
|
||||
|
||||
if ($validator->fails()) {
|
||||
|
@ -65,8 +73,6 @@ class BaseController extends Controller
|
|||
|
||||
Settings::set('company', $request->input('company'));
|
||||
Settings::set('default_language', $request->input('default_language'));
|
||||
Settings::set('email_from', $request->input('email_from'));
|
||||
Settings::set('email_sender_name', $request->input('email_sender_name'));
|
||||
|
||||
Alert::success('Settings have been successfully updated.')->flash();
|
||||
|
||||
|
|
|
@ -40,7 +40,7 @@ class DatabaseController extends Controller
|
|||
/**
|
||||
* Display database host index.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function index(Request $request)
|
||||
|
@ -54,8 +54,8 @@ class DatabaseController extends Controller
|
|||
/**
|
||||
* Display database host to user.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function view(Request $request, $id)
|
||||
|
@ -69,8 +69,8 @@ class DatabaseController extends Controller
|
|||
/**
|
||||
* Handle post request to create database host.
|
||||
*
|
||||
* @param Request $request
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function create(Request $request)
|
||||
{
|
||||
|
@ -99,9 +99,9 @@ class DatabaseController extends Controller
|
|||
/**
|
||||
* Handle post request to update a database host.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
|
|
|
@ -38,7 +38,7 @@ class LocationController extends Controller
|
|||
/**
|
||||
* Return the location overview page.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function index(Request $request)
|
||||
|
@ -51,8 +51,8 @@ class LocationController extends Controller
|
|||
/**
|
||||
* Return the location view page.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function view(Request $request, $id)
|
||||
|
@ -63,8 +63,8 @@ class LocationController extends Controller
|
|||
/**
|
||||
* Handle request to create new location.
|
||||
*
|
||||
* @param Request $request
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function create(Request $request)
|
||||
{
|
||||
|
@ -88,9 +88,9 @@ class LocationController extends Controller
|
|||
/**
|
||||
* Handle request to update or delete location.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
|
|
|
@ -40,7 +40,7 @@ class NodesController extends Controller
|
|||
/**
|
||||
* Displays the index page listing all nodes on the panel.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function index(Request $request)
|
||||
|
@ -57,10 +57,10 @@ class NodesController extends Controller
|
|||
/**
|
||||
* Displays create new node page.
|
||||
*
|
||||
* @param Request $request
|
||||
* @return \Illuminate\View\View|\Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View|\Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function new(Request $request)
|
||||
public function create(Request $request)
|
||||
{
|
||||
$locations = Models\Location::all();
|
||||
if (! $locations->count()) {
|
||||
|
@ -75,10 +75,10 @@ class NodesController extends Controller
|
|||
/**
|
||||
* Post controller to create a new node on the system.
|
||||
*
|
||||
* @param Request $request
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function create(Request $request)
|
||||
public function store(Request $request)
|
||||
{
|
||||
try {
|
||||
$repo = new NodeRepository;
|
||||
|
@ -110,9 +110,8 @@ class NodesController extends Controller
|
|||
/**
|
||||
* Shows the index overview page for a specific node.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id The ID of the node to display information for.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function viewIndex(Request $request, $id)
|
||||
|
@ -138,9 +137,8 @@ class NodesController extends Controller
|
|||
/**
|
||||
* Shows the settings page for a specific node.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id The ID of the node to display information for.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function viewSettings(Request $request, $id)
|
||||
|
@ -154,9 +152,8 @@ class NodesController extends Controller
|
|||
/**
|
||||
* Shows the configuration page for a specific node.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id The ID of the node to display information for.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function viewConfiguration(Request $request, $id)
|
||||
|
@ -169,9 +166,8 @@ class NodesController extends Controller
|
|||
/**
|
||||
* Shows the allocation page for a specific node.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id The ID of the node to display information for.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function viewAllocation(Request $request, $id)
|
||||
|
@ -189,9 +185,8 @@ class NodesController extends Controller
|
|||
/**
|
||||
* Shows the server listing page for a specific node.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id The ID of the node to display information for.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function viewServers(Request $request, $id)
|
||||
|
@ -209,8 +204,8 @@ class NodesController extends Controller
|
|||
/**
|
||||
* Updates settings for a node.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $node
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function updateSettings(Request $request, $id)
|
||||
|
@ -244,9 +239,9 @@ class NodesController extends Controller
|
|||
/**
|
||||
* Removes a single allocation from a node.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $node
|
||||
* @param int $allocation [description]
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $node
|
||||
* @param int $allocation
|
||||
* @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse
|
||||
*/
|
||||
public function allocationRemoveSingle(Request $request, $node, $allocation)
|
||||
|
@ -264,8 +259,8 @@ class NodesController extends Controller
|
|||
/**
|
||||
* Remove all allocations for a specific IP at once on a node.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $node
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $node
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function allocationRemoveBlock(Request $request, $node)
|
||||
|
@ -283,10 +278,9 @@ class NodesController extends Controller
|
|||
/**
|
||||
* Sets an alias for a specific allocation on a node.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $node
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $node
|
||||
* @return \Illuminate\Http\Response
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function allocationSetAlias(Request $request, $node)
|
||||
{
|
||||
|
@ -308,8 +302,8 @@ class NodesController extends Controller
|
|||
/**
|
||||
* Creates new allocations on a node.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $node
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $node
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function createAllocation(Request $request, $node)
|
||||
|
@ -334,8 +328,8 @@ class NodesController extends Controller
|
|||
/**
|
||||
* Deletes a node from the system.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function delete(Request $request, $id)
|
||||
|
@ -360,8 +354,8 @@ class NodesController extends Controller
|
|||
/**
|
||||
* Returns the configuration token to auto-deploy a node.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
*/
|
||||
public function setToken(Request $request, $id)
|
||||
|
|
|
@ -41,10 +41,10 @@ class OptionController extends Controller
|
|||
/**
|
||||
* Handles request to view page for adding new option.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function new(Request $request)
|
||||
public function create(Request $request)
|
||||
{
|
||||
$services = Service::with('options')->get();
|
||||
Javascript::put(['services' => $services->keyBy('id')]);
|
||||
|
@ -55,10 +55,10 @@ class OptionController extends Controller
|
|||
/**
|
||||
* Handles POST request to create a new option.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
*/
|
||||
public function create(Request $request)
|
||||
public function store(Request $request)
|
||||
{
|
||||
$repo = new OptionRepository;
|
||||
|
||||
|
@ -86,9 +86,9 @@ class OptionController extends Controller
|
|||
/**
|
||||
* Handles POST request to create a new option variable.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id The ID of the service option to assign this variable to.
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function createVariable(Request $request, $id)
|
||||
{
|
||||
|
@ -116,8 +116,8 @@ class OptionController extends Controller
|
|||
/**
|
||||
* Display option overview page.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function viewConfiguration(Request $request, $id)
|
||||
|
@ -128,8 +128,8 @@ class OptionController extends Controller
|
|||
/**
|
||||
* Display variable overview page for a service option.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function viewVariables(Request $request, $id)
|
||||
|
@ -152,8 +152,9 @@ class OptionController extends Controller
|
|||
/**
|
||||
* Handles POST when editing a configration for a service option.
|
||||
*
|
||||
* @param Request $request
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function editConfiguration(Request $request, $id)
|
||||
{
|
||||
|
@ -188,10 +189,10 @@ class OptionController extends Controller
|
|||
/**
|
||||
* Handles POST when editing a configration for a service option.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $option
|
||||
* @param int $variable
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $option
|
||||
* @param int $variable
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function editVariable(Request $request, $option, $variable)
|
||||
{
|
||||
|
|
|
@ -40,7 +40,7 @@ class PackController extends Controller
|
|||
/**
|
||||
* Display listing of all packs on the system.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function index(Request $request)
|
||||
|
@ -57,10 +57,10 @@ class PackController extends Controller
|
|||
/**
|
||||
* Display new pack creation form.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function new(Request $request)
|
||||
public function create(Request $request)
|
||||
{
|
||||
return view('admin.packs.new', [
|
||||
'services' => Service::with('options')->get(),
|
||||
|
@ -70,7 +70,7 @@ class PackController extends Controller
|
|||
/**
|
||||
* Display new pack creation modal for use with template upload.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function newTemplate(Request $request)
|
||||
|
@ -83,10 +83,10 @@ class PackController extends Controller
|
|||
/**
|
||||
* Handle create pack request and route user to location.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function create(Request $request)
|
||||
public function store(Request $request)
|
||||
{
|
||||
$repo = new PackRepository;
|
||||
|
||||
|
@ -117,8 +117,8 @@ class PackController extends Controller
|
|||
/**
|
||||
* Display pack view template to user.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function view(Request $request, $id)
|
||||
|
@ -132,9 +132,9 @@ class PackController extends Controller
|
|||
/**
|
||||
* Handle updating or deleting pack information.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
|
@ -168,10 +168,10 @@ class PackController extends Controller
|
|||
/**
|
||||
* Creates an archive of the pack and downloads it to the browser.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param bool $files
|
||||
* @return \Illuminate\Response\BinaryFileResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @param bool $files
|
||||
* @return \Symfony\Component\HttpFoundation\BinaryFileResponse
|
||||
*/
|
||||
public function export(Request $request, $id, $files = false)
|
||||
{
|
||||
|
|
|
@ -41,14 +41,12 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Display the index page with all servers currently on the system.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function index(Request $request)
|
||||
{
|
||||
$servers = Models\Server::withTrashed()->with(
|
||||
'node', 'user', 'allocation'
|
||||
);
|
||||
$servers = Models\Server::with('node', 'user', 'allocation');
|
||||
|
||||
if (! is_null($request->input('query'))) {
|
||||
$servers->search($request->input('query'));
|
||||
|
@ -62,10 +60,10 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Display create new server page.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function new(Request $request)
|
||||
public function create(Request $request)
|
||||
{
|
||||
$services = Models\Service::with('options.packs', 'options.variables')->get();
|
||||
Javascript::put([
|
||||
|
@ -85,10 +83,10 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Create server controller method.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
*/
|
||||
public function create(Request $request)
|
||||
public function store(Request $request)
|
||||
{
|
||||
try {
|
||||
$repo = new ServerRepository;
|
||||
|
@ -99,6 +97,9 @@ class ServersController extends Controller
|
|||
return redirect()->route('admin.servers.new')->withErrors(json_decode($ex->getMessage()))->withInput();
|
||||
} catch (DisplayException $ex) {
|
||||
Alert::danger($ex->getMessage())->flash();
|
||||
} catch (TransferException $ex) {
|
||||
Log::warning($ex);
|
||||
Alert::danger('A TransferException was encountered while trying to contact the daemon, please ensure it is online and accessible. This error has been logged.')->flash();
|
||||
} catch (\Exception $ex) {
|
||||
Log::error($ex);
|
||||
Alert::danger('An unhandled exception occured while attemping to add this server. Please try again.')->flash();
|
||||
|
@ -110,10 +111,10 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Returns a tree of all avaliable nodes in a given location.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return array
|
||||
*/
|
||||
public function newServerNodes(Request $request)
|
||||
public function nodes(Request $request)
|
||||
{
|
||||
$nodes = Models\Node::with('allocations')->where('location_id', $request->input('location'))->get();
|
||||
|
||||
|
@ -140,20 +141,20 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Display the index when viewing a specific server.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function viewIndex(Request $request, $id)
|
||||
{
|
||||
return view('admin.servers.view.index', ['server' => Models\Server::withTrashed()->findOrFail($id)]);
|
||||
return view('admin.servers.view.index', ['server' => Models\Server::findOrFail($id)]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Display the details page when viewing a specific server.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function viewDetails(Request $request, $id)
|
||||
|
@ -166,8 +167,8 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Display the build details page when viewing a specific server.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function viewBuild(Request $request, $id)
|
||||
|
@ -184,8 +185,8 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Display startup configuration page for a server.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function viewStartup(Request $request, $id)
|
||||
|
@ -203,8 +204,8 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Display the database management page for a specific server.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function viewDatabase(Request $request, $id)
|
||||
|
@ -220,8 +221,8 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Display the management page when viewing a specific server.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function viewManage(Request $request, $id)
|
||||
|
@ -232,28 +233,28 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Display the deletion page for a server.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function viewDelete(Request $request, $id)
|
||||
{
|
||||
return view('admin.servers.view.delete', ['server' => Models\Server::withTrashed()->findOrFail($id)]);
|
||||
return view('admin.servers.view.delete', ['server' => Models\Server::findOrFail($id)]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the details for a server.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function setDetails(Request $request, $id)
|
||||
{
|
||||
$repo = new ServerRepository;
|
||||
try {
|
||||
$repo->updateDetails($id, $request->intersect([
|
||||
'owner_id', 'name', 'reset_token',
|
||||
'owner_id', 'name', 'description', 'reset_token',
|
||||
]));
|
||||
|
||||
Alert::success('Server details were successfully updated.')->flash();
|
||||
|
@ -272,9 +273,9 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Set the new docker container for a server.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function setContainer(Request $request, $id)
|
||||
{
|
||||
|
@ -286,8 +287,9 @@ class ServersController extends Controller
|
|||
Alert::success('Successfully updated this server\'s docker image.')->flash();
|
||||
} catch (DisplayValidationException $ex) {
|
||||
return redirect()->route('admin.servers.view.details', $id)->withErrors(json_decode($ex->getMessage()))->withInput();
|
||||
} catch (DisplayException $ex) {
|
||||
Alert::danger($ex->getMessage())->flash();
|
||||
} catch (TransferException $ex) {
|
||||
Log::warning($ex);
|
||||
Alert::danger('A TransferException occured while attempting to update the container image. Is the daemon online? This error has been logged.');
|
||||
} catch (\Exception $ex) {
|
||||
Log::error($ex);
|
||||
Alert::danger('An unhandled exception occured while attemping to update this server\'s docker image. This error has been logged.')->flash();
|
||||
|
@ -299,9 +301,9 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Toggles the install status for a server.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function toggleInstall(Request $request, $id)
|
||||
{
|
||||
|
@ -323,9 +325,9 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Setup a server to have a container rebuild.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function rebuildContainer(Request $request, $id)
|
||||
{
|
||||
|
@ -349,9 +351,9 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Manage the suspension status for a server.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function manageSuspension(Request $request, $id)
|
||||
{
|
||||
|
@ -365,11 +367,12 @@ class ServersController extends Controller
|
|||
}
|
||||
|
||||
try {
|
||||
$repo->$action($id);
|
||||
$repo->toggleAccess($id, ($action === 'unsuspend'));
|
||||
|
||||
Alert::success('Server has been ' . $action . 'ed.');
|
||||
} catch (DisplayException $ex) {
|
||||
Alert::danger($ex->getMessage())->flash();
|
||||
} catch (TransferException $ex) {
|
||||
Log::warning($ex);
|
||||
Alert::danger('A TransferException was encountered while trying to contact the daemon, please ensure it is online and accessible. This error has been logged.')->flash();
|
||||
} catch (\Exception $ex) {
|
||||
Log::error($ex);
|
||||
Alert::danger('An unhandled exception occured while attemping to ' . $action . ' this server. This error has been logged.')->flash();
|
||||
|
@ -381,9 +384,9 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Update the build configuration for a server.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function updateBuild(Request $request, $id)
|
||||
{
|
||||
|
@ -400,6 +403,9 @@ class ServersController extends Controller
|
|||
return redirect()->route('admin.servers.view.build', $id)->withErrors(json_decode($ex->getMessage()))->withInput();
|
||||
} catch (DisplayException $ex) {
|
||||
Alert::danger($ex->getMessage())->flash();
|
||||
} catch (TransferException $ex) {
|
||||
Log::warning($ex);
|
||||
Alert::danger('A TransferException was encountered while trying to contact the daemon, please ensure it is online and accessible. This error has been logged.')->flash();
|
||||
} catch (\Exception $ex) {
|
||||
Log::error($ex);
|
||||
Alert::danger('An unhandled exception occured while attemping to add this server. This error has been logged.')->flash();
|
||||
|
@ -411,58 +417,16 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Start the server deletion process.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function delete(Request $request, $id)
|
||||
{
|
||||
$repo = new ServerRepository;
|
||||
|
||||
try {
|
||||
$repo->queueDeletion($id, ($request->input('is_force') > 0));
|
||||
Alert::success('Server has been marked for deletion on the system.')->flash();
|
||||
} catch (DisplayException $ex) {
|
||||
Alert::danger($ex->getMessage())->flash();
|
||||
} catch (\Exception $ex) {
|
||||
Log::error($ex);
|
||||
Alert::danger('An unhandled exception occured while attemping to delete this server. This error has been logged.')->flash();
|
||||
}
|
||||
|
||||
return redirect()->route('admin.servers.view.delete', $id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Cancels a pending server deletion request.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
*/
|
||||
public function cancelDeletion(Request $request, $id)
|
||||
{
|
||||
$repo = new ServerRepository;
|
||||
|
||||
$repo->cancelDeletion($id);
|
||||
Alert::success('Server deletion has been cancelled. This server will remain suspended until you unsuspend it.')->flash();
|
||||
|
||||
return redirect()->route('admin.servers.view.delete', $id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Skips the queue and continues the server deletion process.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param string $method
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
*/
|
||||
public function continueDeletion(Request $request, $id, $method = 'safe')
|
||||
{
|
||||
$repo = new ServerRepository;
|
||||
|
||||
try {
|
||||
$repo->delete($id, (isset($method) && $method === 'force'));
|
||||
$repo->delete($id, $request->has('force_delete'));
|
||||
Alert::success('Server was successfully deleted from the system.')->flash();
|
||||
|
||||
return redirect()->route('admin.servers');
|
||||
|
@ -482,9 +446,9 @@ class ServersController extends Controller
|
|||
/**
|
||||
* Update the startup command as well as variables.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function saveStartup(Request $request, $id)
|
||||
{
|
||||
|
@ -511,9 +475,10 @@ class ServersController extends Controller
|
|||
|
||||
/**
|
||||
* Creates a new database assigned to a specific server.
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function newDatabase(Request $request, $id)
|
||||
{
|
||||
|
@ -537,9 +502,10 @@ class ServersController extends Controller
|
|||
|
||||
/**
|
||||
* Resets the database password for a specific database on this server.
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function resetDatabasePassword(Request $request, $id)
|
||||
{
|
||||
|
@ -559,9 +525,11 @@ class ServersController extends Controller
|
|||
|
||||
/**
|
||||
* Deletes a database from a server.
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @param int $database
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function deleteDatabase(Request $request, $id, $database)
|
||||
{
|
||||
|
|
|
@ -38,7 +38,7 @@ class ServiceController extends Controller
|
|||
/**
|
||||
* Display service overview page.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function index(Request $request)
|
||||
|
@ -51,10 +51,10 @@ class ServiceController extends Controller
|
|||
/**
|
||||
* Display create service page.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function new(Request $request)
|
||||
public function create(Request $request)
|
||||
{
|
||||
return view('admin.services.new');
|
||||
}
|
||||
|
@ -62,8 +62,8 @@ class ServiceController extends Controller
|
|||
/**
|
||||
* Return base view for a service.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function view(Request $request, $id)
|
||||
|
@ -76,8 +76,8 @@ class ServiceController extends Controller
|
|||
/**
|
||||
* Return function editing view for a service.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function viewFunctions(Request $request, $id)
|
||||
|
@ -88,10 +88,10 @@ class ServiceController extends Controller
|
|||
/**
|
||||
* Handle post action for new service.
|
||||
*
|
||||
* @param Request $request
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function create(Request $request)
|
||||
public function store(Request $request)
|
||||
{
|
||||
$repo = new ServiceRepository;
|
||||
|
||||
|
@ -117,9 +117,9 @@ class ServiceController extends Controller
|
|||
/**
|
||||
* Edits configuration for a specific service.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Response\RedirectResponse
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function edit(Request $request, $id)
|
||||
{
|
||||
|
|
|
@ -37,17 +37,14 @@ use Pterodactyl\Exceptions\DisplayValidationException;
|
|||
class UserController extends Controller
|
||||
{
|
||||
/**
|
||||
* Controller Constructor.
|
||||
* Display user index page.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function __construct()
|
||||
public function index(Request $request)
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
// @TODO: implement nicolaslopezj/searchable to clean up this disaster.
|
||||
public function getIndex(Request $request)
|
||||
{
|
||||
$users = User::withCount('servers');
|
||||
$users = User::withCount('servers', 'subuserOf');
|
||||
|
||||
if (! is_null($request->input('query'))) {
|
||||
$users->search($request->input('query'));
|
||||
|
@ -58,19 +55,39 @@ class UserController extends Controller
|
|||
]);
|
||||
}
|
||||
|
||||
public function getNew(Request $request)
|
||||
/**
|
||||
* Display new user page.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function create(Request $request)
|
||||
{
|
||||
return view('admin.users.new');
|
||||
}
|
||||
|
||||
public function getView(Request $request, $id)
|
||||
/**
|
||||
* Display user view page.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\View\View
|
||||
*/
|
||||
public function view(Request $request, $id)
|
||||
{
|
||||
return view('admin.users.view', [
|
||||
'user' => User::with('servers.node')->findOrFail($id),
|
||||
]);
|
||||
}
|
||||
|
||||
public function deleteUser(Request $request, $id)
|
||||
/**
|
||||
* Delete a user.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function delete(Request $request, $id)
|
||||
{
|
||||
try {
|
||||
$repo = new UserRepository;
|
||||
|
@ -88,7 +105,13 @@ class UserController extends Controller
|
|||
return redirect()->route('admin.users.view', $id);
|
||||
}
|
||||
|
||||
public function postNew(Request $request)
|
||||
/**
|
||||
* Create a user.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function store(Request $request)
|
||||
{
|
||||
try {
|
||||
$user = new UserRepository;
|
||||
|
@ -109,26 +132,39 @@ class UserController extends Controller
|
|||
}
|
||||
}
|
||||
|
||||
public function updateUser(Request $request, $user)
|
||||
/**
|
||||
* Update a user.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
try {
|
||||
$repo = new UserRepository;
|
||||
$repo->update($user, $request->only([
|
||||
$user = $repo->update($id, $request->intersect([
|
||||
'email', 'password', 'name_first',
|
||||
'name_last', 'username', 'root_admin',
|
||||
]));
|
||||
Alert::success('User account was successfully updated.')->flash();
|
||||
} catch (DisplayValidationException $ex) {
|
||||
return redirect()->route('admin.users.view', $user)->withErrors(json_decode($ex->getMessage()));
|
||||
} catch (\Exception $e) {
|
||||
Log::error($e);
|
||||
return redirect()->route('admin.users.view', $id)->withErrors(json_decode($ex->getMessage()));
|
||||
} catch (\Exception $ex) {
|
||||
Log::error($ex);
|
||||
Alert::danger('An error occured while attempting to update this user.')->flash();
|
||||
}
|
||||
|
||||
return redirect()->route('admin.users.view', $user);
|
||||
return redirect()->route('admin.users.view', $id);
|
||||
}
|
||||
|
||||
public function getJson(Request $request)
|
||||
/**
|
||||
* Get a JSON response of users on the system.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Pterodactyl\Models\User
|
||||
*/
|
||||
public function json(Request $request)
|
||||
{
|
||||
return User::select('id', 'email', 'username', 'name_first', 'name_last')
|
||||
->search($request->input('q'))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue