diff --git a/app/Http/Controllers/Admin/APIController.php b/app/Http/Controllers/Admin/APIController.php deleted file mode 100644 index 0d1684484..000000000 --- a/app/Http/Controllers/Admin/APIController.php +++ /dev/null @@ -1,100 +0,0 @@ - - * - * 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. - */ -namespace Pterodactyl\Http\Controllers\Admin; - -use Alert; -use Log; - -use Pterodactyl\Models; -use Pterodactyl\Repositories\APIRepository; -use Pterodactyl\Http\Controllers\Controller; - -use Pterodactyl\Exceptions\DisplayValidationException; -use Pterodactyl\Exceptions\DisplayException; - -use Illuminate\Http\Request; - -class APIController extends Controller -{ - - public function __construct() - { - // - } - - public function getIndex(Request $request) - { - $keys = Models\APIKey::all(); - foreach($keys as &$key) { - $key->permissions = Models\APIPermission::where('key_id', $key->id)->get(); - } - - return view('admin.api.index', [ - 'keys' => $keys - ]); - } - - public function getNew(Request $request) - { - return view('admin.api.new'); - } - - public function postNew(Request $request) - { - try { - $api = new APIRepository; - $secret = $api->new($request->except(['_token'])); - // Alert::info('An API Keypair has successfully been generated. The API secret for this public key is shown below and will not be shown again.

Secret: ' . $secret . '')->flash(); - Alert::info("")->flash(); - return redirect()->route('admin.api'); - } catch (DisplayValidationException $ex) { - return redirect()->route('admin.api.new')->withErrors(json_decode($ex->getMessage()))->withInput(); - } catch (DisplayException $ex) { - Alert::danger($ex->getMessage())->flash(); - } catch (\Exception $ex) { - Log::error($ex); - Alert::danger('An unhandled exception occured while attempting to add this API key.')->flash(); - } - return redirect()->route('admin.api.new')->withInput(); - } - - public function deleteRevokeKey(Request $request, $key) - { - try { - $api = new APIRepository; - $api->revoke($key); - return response('', 204); - } catch (\Exception $ex) { - return response()->json([ - 'error' => 'An error occured while attempting to remove this key.' - ], 503); - } - } - -} diff --git a/app/Http/Routes/AdminRoutes.php b/app/Http/Routes/AdminRoutes.php index a1d1956e0..3f6e73bcb 100644 --- a/app/Http/Routes/AdminRoutes.php +++ b/app/Http/Routes/AdminRoutes.php @@ -303,32 +303,6 @@ class AdminRoutes { ]); }); - // API Routes - $router->group([ - 'prefix' => 'admin/api', - 'middleware' => [ - 'auth', - 'admin', - 'csrf' - ] - ], function () use ($router) { - $router->get('/', [ - 'as' => 'admin.api', - 'uses' => 'Admin\APIController@getIndex' - ]); - $router->get('/new', [ - 'as' => 'admin.api.new', - 'uses' => 'Admin\APIController@getNew' - ]); - $router->post('/new', [ - 'uses' => 'Admin\APIController@postNew' - ]); - $router->delete('/revoke/{key?}', [ - 'as' => 'admin.api.revoke', - 'uses' => 'Admin\APIController@deleteRevokeKey' - ]); - }); - // Database Routes $router->group([ 'prefix' => 'admin/databases', diff --git a/resources/views/admin/api/index.blade.php b/resources/views/admin/api/index.blade.php deleted file mode 100644 index 205b6e88f..000000000 --- a/resources/views/admin/api/index.blade.php +++ /dev/null @@ -1,113 +0,0 @@ -{{-- Copyright (c) 2015 - 2016 Dane Everitt --}} - -{{-- 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. --}} -@extends('layouts.admin') - -@section('title') - API Management -@endsection - -@section('content') -
- -

API Key Information


- - - - - - - - - - - - @foreach ($keys as $key) - - - - - - - - @endforeach - -
API Public KeyAllowed IPsPermissionsCreated
{{ $key->public }} - @if (is_null($key->allowed_ips)) - * - @else - @foreach(json_decode($key->allowed_ips) as $ip) - {{ $ip }}
- @endforeach - @endif -
- @foreach(json_decode($key->permissions) as &$perm) - {{ $perm->permission }}
- @endforeach -
{{ (new Carbon($key->created_at))->toDayDateTimeString() }}
- -
- -@endsection diff --git a/resources/views/admin/api/new.blade.php b/resources/views/admin/api/new.blade.php deleted file mode 100644 index 11f6b22b9..000000000 --- a/resources/views/admin/api/new.blade.php +++ /dev/null @@ -1,213 +0,0 @@ -{{-- Copyright (c) 2015 - 2016 Dane Everitt --}} - -{{-- 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. --}} -@extends('layouts.admin') - -@section('title') - API Management -@endsection - -@section('content') -
- -

Add New API Key


-
-
-
-
-
-
-
-
-
-

User Management


-
-
-
-
-
-
-
-
-
-
-
-
-

Server Management


-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-

Node Management


-
-
-
-
-
-
-
-
-
-
-
-
-

Service Management


-
-
-
-
-

Location Management


-
-
-
-
-
-
-
- -
- -

Enter a line delimitated list of IPs that are allowed to access the API using this key. CIDR notation is allowed. Leave blank to allow any IP.

-
-
-
-
-
- {!! csrf_field() !!} - -
-
-
-
-
- -@endsection diff --git a/resources/views/base/api/new.blade.php b/resources/views/base/api/new.blade.php index e8ff08a4f..0fb75caac 100644 --- a/resources/views/base/api/new.blade.php +++ b/resources/views/base/api/new.blade.php @@ -33,12 +33,14 @@ 1Permissions -
  • - 2Admin - -
  • + @if(Auth::user()->root_admin === 1) +
  • + 2Admin + +
  • + @endif
  • - 3Security + @if(Auth::user()->root_admin === 1)3 @else 2 @endifSecurity
  • @@ -87,161 +89,163 @@ -
    -
    -
    -
    -
    + @endif
    diff --git a/resources/views/layouts/admin.blade.php b/resources/views/layouts/admin.blade.php index 72fc70ff2..2ff4b0713 100644 --- a/resources/views/layouts/admin.blade.php +++ b/resources/views/layouts/admin.blade.php @@ -60,7 +60,6 @@ @@ -128,7 +127,6 @@ Management Admin Index General Settings - API Management Database Management