From 569489f175dc648d39bfce6de3da962d48f05831 Mon Sep 17 00:00:00 2001 From: 1day2die Date: Mon, 15 Aug 2022 12:38:29 +0200 Subject: [PATCH 01/33] Update RouteServiceProvider.php --- app/Providers/RouteServiceProvider.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php index 0531b53e..ce98acfb 100644 --- a/app/Providers/RouteServiceProvider.php +++ b/app/Providers/RouteServiceProvider.php @@ -61,7 +61,7 @@ class RouteServiceProvider extends ServiceProvider return Limit::perMinute(60)->by(optional($request->user())->id ?: $request->ip()); }); RateLimiter::for('web', function (Request $request) { - return Limit::perMinute(15)->by(optional($request->user())->id ?: $request->ip()); + return Limit::perMinute(60)->by(optional($request->user())->id ?: $request->ip()); }); } } From ad6142a986b17cc51dc6cc22b83184e68a6eec66 Mon Sep 17 00:00:00 2001 From: 1day2die Date: Mon, 15 Aug 2022 12:39:54 +0200 Subject: [PATCH 02/33] Update RouteServiceProvider.php --- app/Providers/RouteServiceProvider.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php index ce98acfb..eef3de13 100644 --- a/app/Providers/RouteServiceProvider.php +++ b/app/Providers/RouteServiceProvider.php @@ -61,7 +61,7 @@ class RouteServiceProvider extends ServiceProvider return Limit::perMinute(60)->by(optional($request->user())->id ?: $request->ip()); }); RateLimiter::for('web', function (Request $request) { - return Limit::perMinute(60)->by(optional($request->user())->id ?: $request->ip()); + return Limit::perMinute(40)->by(optional($request->user())->id ?: $request->ip()); }); } } From e2f27959f5b0c668994cc9e7496ca10b2cd718dd Mon Sep 17 00:00:00 2001 From: Dennis Date: Mon, 15 Aug 2022 14:27:43 +0200 Subject: [PATCH 03/33] Update README.md --- README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 88840fe1..2c6d142c 100644 --- a/README.md +++ b/README.md @@ -19,8 +19,9 @@ ![controlpanel](https://user-images.githubusercontent.com/45005889/123518824-06b05000-d6a8-11eb-91b9-d1ed36bd2317.png) -[//]: ![](https://img.shields.io/endpoint?style=flat&url=https%3A%2F%2Fmarket.controlpanel.gg%2Fcallhome.php%3Fgetinstalls) -![](https://img.shields.io/github/stars/ControlPanel-gg/dashboard) ![](https://img.shields.io/github/forks/ControlPanel-gg/dashboard) ![](https://img.shields.io/github/tag/ControlPanel-gg/dashboard) [![Crowdin](https://badges.crowdin.net/controlpanelgg/localized.svg)](https://crowdin.com/project/controlpanelgg) ![](https://img.shields.io/github/issues/ControlPanel-gg/dashboard) ![](https://img.shields.io/github/license/ControlPanel-gg/dashboard) ![](https://img.shields.io/discord/787829714483019826) +![](https://img.shields.io/endpoint?style=flat&url=https%3A%2F%2Fmarket.controlpanel.gg%2Fcallhome.php%3Fgetinstalls) +![](https://img.shields.io/badge/Overall%20Installations-2000%2B-green) +![](https://img.shields.io/endpoint?label=v0.8%20Installations&url=https%3A%2F%2Fmarket.controlpanel.gg%2Fcallhome.php%3Fgetinstalls)![](https://img.shields.io/github/stars/ControlPanel-gg/dashboard) ![](https://img.shields.io/github/forks/ControlPanel-gg/dashboard) ![](https://img.shields.io/github/tag/ControlPanel-gg/dashboard) [![Crowdin](https://badges.crowdin.net/controlpanelgg/localized.svg)](https://crowdin.com/project/controlpanelgg) ![](https://img.shields.io/github/issues/ControlPanel-gg/dashboard) ![](https://img.shields.io/github/license/ControlPanel-gg/dashboard) ![](https://img.shields.io/discord/787829714483019826) ## About ControlPanel's Dashboard is a dashboard application designed to offer clients a management tool to manage their pterodactyl servers. This dashboard comes with a credit-based billing solution that credits users hourly for each server they have and suspends them if they run out of credits. From 60be2721c71137f278d84782dfb8bd43a8627b73 Mon Sep 17 00:00:00 2001 From: Dennis Date: Mon, 15 Aug 2022 14:28:21 +0200 Subject: [PATCH 04/33] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 2c6d142c..009b2a87 100644 --- a/README.md +++ b/README.md @@ -19,9 +19,9 @@ ![controlpanel](https://user-images.githubusercontent.com/45005889/123518824-06b05000-d6a8-11eb-91b9-d1ed36bd2317.png) -![](https://img.shields.io/endpoint?style=flat&url=https%3A%2F%2Fmarket.controlpanel.gg%2Fcallhome.php%3Fgetinstalls) +![](https://img.shields.io/endpoint?label=v0.8%20Installations&url=https%3A%2F%2Fmarket.controlpanel.gg%2Fcallhome.php%3Fgetinstalls) ![](https://img.shields.io/badge/Overall%20Installations-2000%2B-green) -![](https://img.shields.io/endpoint?label=v0.8%20Installations&url=https%3A%2F%2Fmarket.controlpanel.gg%2Fcallhome.php%3Fgetinstalls)![](https://img.shields.io/github/stars/ControlPanel-gg/dashboard) ![](https://img.shields.io/github/forks/ControlPanel-gg/dashboard) ![](https://img.shields.io/github/tag/ControlPanel-gg/dashboard) [![Crowdin](https://badges.crowdin.net/controlpanelgg/localized.svg)](https://crowdin.com/project/controlpanelgg) ![](https://img.shields.io/github/issues/ControlPanel-gg/dashboard) ![](https://img.shields.io/github/license/ControlPanel-gg/dashboard) ![](https://img.shields.io/discord/787829714483019826) +![](https://img.shields.io/github/stars/ControlPanel-gg/dashboard) ![](https://img.shields.io/github/forks/ControlPanel-gg/dashboard) ![](https://img.shields.io/github/tag/ControlPanel-gg/dashboard) [![Crowdin](https://badges.crowdin.net/controlpanelgg/localized.svg)](https://crowdin.com/project/controlpanelgg) ![](https://img.shields.io/github/issues/ControlPanel-gg/dashboard) ![](https://img.shields.io/github/license/ControlPanel-gg/dashboard) ![](https://img.shields.io/discord/787829714483019826) ## About ControlPanel's Dashboard is a dashboard application designed to offer clients a management tool to manage their pterodactyl servers. This dashboard comes with a credit-based billing solution that credits users hourly for each server they have and suspends them if they run out of credits. From 418de21704a945934a45489ec4a912f1fc1291ad Mon Sep 17 00:00:00 2001 From: Dennis Date: Mon, 15 Aug 2022 14:35:18 +0200 Subject: [PATCH 05/33] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 009b2a87..fa5c37f2 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ ![](https://img.shields.io/endpoint?label=v0.8%20Installations&url=https%3A%2F%2Fmarket.controlpanel.gg%2Fcallhome.php%3Fgetinstalls) -![](https://img.shields.io/badge/Overall%20Installations-2000%2B-green) +![](https://img.shields.io/badge/Overall%20Installations-2500%2B-green) ![](https://img.shields.io/github/stars/ControlPanel-gg/dashboard) ![](https://img.shields.io/github/forks/ControlPanel-gg/dashboard) ![](https://img.shields.io/github/tag/ControlPanel-gg/dashboard) [![Crowdin](https://badges.crowdin.net/controlpanelgg/localized.svg)](https://crowdin.com/project/controlpanelgg) ![](https://img.shields.io/github/issues/ControlPanel-gg/dashboard) ![](https://img.shields.io/github/license/ControlPanel-gg/dashboard) ![](https://img.shields.io/discord/787829714483019826) ## About From a9373cc18f7b8a7a5ffee59677cc746d8d9b8243 Mon Sep 17 00:00:00 2001 From: IceToast Date: Mon, 15 Aug 2022 14:49:02 +0200 Subject: [PATCH 06/33] =?UTF-8?q?fix:=20=F0=9F=90=9B=20Fix=20Type=20Error?= =?UTF-8?q?=20at=20serverUpdate=20return=20phpdoc?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Classes/Pterodactyl.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/Classes/Pterodactyl.php b/app/Classes/Pterodactyl.php index f217bd34..a7bc9bd5 100644 --- a/app/Classes/Pterodactyl.php +++ b/app/Classes/Pterodactyl.php @@ -312,7 +312,7 @@ class Pterodactyl * Update Server Resources * @param Server $server * @param Product $product - * @return boolean + * @return Response */ public static function updateServer(Server $server, Product $product) { @@ -335,7 +335,7 @@ class Pterodactyl * Power Action Specific Server * @param Server $server * @param string $action - * @return boolean + * @return Response */ public static function powerAction(Server $server, $action) { From 3f47fa5e9fb88f7c4d1410771e49c643d2963108 Mon Sep 17 00:00:00 2001 From: SahrulGnwn Date: Mon, 15 Aug 2022 20:36:14 +0700 Subject: [PATCH 07/33] Fix Bypass node limit when upgrade --- app/Http/Controllers/ServerController.php | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/app/Http/Controllers/ServerController.php b/app/Http/Controllers/ServerController.php index 28242206..f53f4756 100644 --- a/app/Http/Controllers/ServerController.php +++ b/app/Http/Controllers/ServerController.php @@ -266,6 +266,19 @@ class ServerController extends Controller $oldProduct = Product::where('id', $server->product->id)->first(); $newProduct = Product::where('id', $request->product_upgrade)->first(); $serverAttributes = Pterodactyl::getServerAttributes($server->pterodactyl_id); + $serverRelationships = $serverAttributes['relationships']; + + // Get node resource allocation info + $nodeId = $serverRelationships['node']['attributes']['id']; + $node = Node::where('id', $nodeId)->firstOrFail(); + $nodeName = $node->name; + + // Check if node has enough memory and disk space + $requireMemory = $newProduct->memory - $oldProduct->memory; + $requiredisk = $newProduct->disk - $oldProduct->disk; + $checkResponse = Pterodactyl::checkNodeResources($node, $requireMemory, $requiredisk); + if ($checkResponse == False) return redirect()->route('servers.index')->with('error', __("The node '" . $nodeName . "' doesn't have the required memory or disk left to upgrade the server.")); + $priceupgrade = $newProduct->getHourlyPrice(); if ($priceupgrade < $oldProduct->getHourlyPrice()) { @@ -283,7 +296,7 @@ class ServerController extends Controller $user->decrement('credits', $priceupgrade); //restart the server $response = Pterodactyl::powerAction($server, "restart"); - if ($response->failed()) return $this->serverCreationFailed($response, $server); + if ($response->failed()) return redirect()->route('servers.index')->with('error', $response->json()['errors'][0]['detail']); return redirect()->route('servers.show', ['server' => $server->id])->with('success', __('Server Successfully Upgraded')); } else From 8bce05a6f51262edb2a3073cdaa6622f373f67f2 Mon Sep 17 00:00:00 2001 From: Dennis Date: Mon, 15 Aug 2022 15:45:43 +0200 Subject: [PATCH 08/33] Update app.php --- config/app.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/app.php b/config/app.php index e8ab470b..0d7b8c9f 100644 --- a/config/app.php +++ b/config/app.php @@ -4,7 +4,7 @@ use App\Models\Settings; return [ - 'version' => '0.8', + 'version' => '0.8.1', /* |-------------------------------------------------------------------------- From a443ae854f7de441bfa4f14d904035f88553a143 Mon Sep 17 00:00:00 2001 From: 1day2die Date: Mon, 15 Aug 2022 16:14:18 +0200 Subject: [PATCH 09/33] Update ServerController.php --- app/Http/Controllers/ServerController.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/Http/Controllers/ServerController.php b/app/Http/Controllers/ServerController.php index f53f4756..8dabf0a0 100644 --- a/app/Http/Controllers/ServerController.php +++ b/app/Http/Controllers/ServerController.php @@ -268,7 +268,7 @@ class ServerController extends Controller $serverAttributes = Pterodactyl::getServerAttributes($server->pterodactyl_id); $serverRelationships = $serverAttributes['relationships']; - // Get node resource allocation info + // Get node resource allocation info $nodeId = $serverRelationships['node']['attributes']['id']; $node = Node::where('id', $nodeId)->firstOrFail(); $nodeName = $node->name; @@ -277,7 +277,7 @@ class ServerController extends Controller $requireMemory = $newProduct->memory - $oldProduct->memory; $requiredisk = $newProduct->disk - $oldProduct->disk; $checkResponse = Pterodactyl::checkNodeResources($node, $requireMemory, $requiredisk); - if ($checkResponse == False) return redirect()->route('servers.index')->with('error', __("The node '" . $nodeName . "' doesn't have the required memory or disk left to upgrade the server.")); + if ($checkResponse == False) return redirect()->route('servers.index')->with('error', __("The node '" . $nodeName . "' doesn't have the required memory or disk left to upgrade the server.". $requiredisk. "disk, ".$requireMemory)); $priceupgrade = $newProduct->getHourlyPrice(); From 5dff5e56fdcad22ad65c2407fb8e48af3b7a168f Mon Sep 17 00:00:00 2001 From: 1day2die Date: Mon, 15 Aug 2022 16:17:44 +0200 Subject: [PATCH 10/33] g --- app/Classes/Pterodactyl.php | 3 +++ app/Http/Controllers/ServerController.php | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/app/Classes/Pterodactyl.php b/app/Classes/Pterodactyl.php index a7bc9bd5..2433a4fe 100644 --- a/app/Classes/Pterodactyl.php +++ b/app/Classes/Pterodactyl.php @@ -11,6 +11,7 @@ use Exception; use Illuminate\Http\Client\PendingRequest; use Illuminate\Http\Client\Response; use Illuminate\Support\Facades\Http; +use Illuminate\Support\Facades\Log; class Pterodactyl { @@ -369,7 +370,9 @@ class Pterodactyl } $node = $response['attributes']; $freeMemory = $node['memory'] - $node['allocated_resources']['memory']; + Log::debug("Free Memory:".$freeMemory); $freeDisk = $node['disk'] - $node['allocated_resources']['disk']; + Log::debug("Free Memory:".$freeDisk); if ($freeMemory < $requireMemory) { return false; } diff --git a/app/Http/Controllers/ServerController.php b/app/Http/Controllers/ServerController.php index 8dabf0a0..03c06313 100644 --- a/app/Http/Controllers/ServerController.php +++ b/app/Http/Controllers/ServerController.php @@ -277,7 +277,7 @@ class ServerController extends Controller $requireMemory = $newProduct->memory - $oldProduct->memory; $requiredisk = $newProduct->disk - $oldProduct->disk; $checkResponse = Pterodactyl::checkNodeResources($node, $requireMemory, $requiredisk); - if ($checkResponse == False) return redirect()->route('servers.index')->with('error', __("The node '" . $nodeName . "' doesn't have the required memory or disk left to upgrade the server.". $requiredisk. "disk, ".$requireMemory)); + if ($checkResponse == False) return redirect()->route('servers.index')->with('error', __("The node '" . $nodeName . "' doesn't have the required memory or disk left to upgrade the server.")); $priceupgrade = $newProduct->getHourlyPrice(); From 09dba51fa6157cf9b4dbdece767b242fd2cad771 Mon Sep 17 00:00:00 2001 From: 1day2die Date: Mon, 15 Aug 2022 16:22:31 +0200 Subject: [PATCH 11/33] Revert "g" This reverts commit 5dff5e56fdcad22ad65c2407fb8e48af3b7a168f. --- app/Classes/Pterodactyl.php | 3 --- app/Http/Controllers/ServerController.php | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/app/Classes/Pterodactyl.php b/app/Classes/Pterodactyl.php index 2433a4fe..a7bc9bd5 100644 --- a/app/Classes/Pterodactyl.php +++ b/app/Classes/Pterodactyl.php @@ -11,7 +11,6 @@ use Exception; use Illuminate\Http\Client\PendingRequest; use Illuminate\Http\Client\Response; use Illuminate\Support\Facades\Http; -use Illuminate\Support\Facades\Log; class Pterodactyl { @@ -370,9 +369,7 @@ class Pterodactyl } $node = $response['attributes']; $freeMemory = $node['memory'] - $node['allocated_resources']['memory']; - Log::debug("Free Memory:".$freeMemory); $freeDisk = $node['disk'] - $node['allocated_resources']['disk']; - Log::debug("Free Memory:".$freeDisk); if ($freeMemory < $requireMemory) { return false; } diff --git a/app/Http/Controllers/ServerController.php b/app/Http/Controllers/ServerController.php index 03c06313..8dabf0a0 100644 --- a/app/Http/Controllers/ServerController.php +++ b/app/Http/Controllers/ServerController.php @@ -277,7 +277,7 @@ class ServerController extends Controller $requireMemory = $newProduct->memory - $oldProduct->memory; $requiredisk = $newProduct->disk - $oldProduct->disk; $checkResponse = Pterodactyl::checkNodeResources($node, $requireMemory, $requiredisk); - if ($checkResponse == False) return redirect()->route('servers.index')->with('error', __("The node '" . $nodeName . "' doesn't have the required memory or disk left to upgrade the server.")); + if ($checkResponse == False) return redirect()->route('servers.index')->with('error', __("The node '" . $nodeName . "' doesn't have the required memory or disk left to upgrade the server.". $requiredisk. "disk, ".$requireMemory)); $priceupgrade = $newProduct->getHourlyPrice(); From 11c29739c7ba4e967681277b4869837059a5aead Mon Sep 17 00:00:00 2001 From: 1day2die Date: Mon, 15 Aug 2022 16:22:38 +0200 Subject: [PATCH 12/33] Revert "Update ServerController.php" This reverts commit a443ae854f7de441bfa4f14d904035f88553a143. --- app/Http/Controllers/ServerController.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/Http/Controllers/ServerController.php b/app/Http/Controllers/ServerController.php index 8dabf0a0..f53f4756 100644 --- a/app/Http/Controllers/ServerController.php +++ b/app/Http/Controllers/ServerController.php @@ -268,7 +268,7 @@ class ServerController extends Controller $serverAttributes = Pterodactyl::getServerAttributes($server->pterodactyl_id); $serverRelationships = $serverAttributes['relationships']; - // Get node resource allocation info + // Get node resource allocation info $nodeId = $serverRelationships['node']['attributes']['id']; $node = Node::where('id', $nodeId)->firstOrFail(); $nodeName = $node->name; @@ -277,7 +277,7 @@ class ServerController extends Controller $requireMemory = $newProduct->memory - $oldProduct->memory; $requiredisk = $newProduct->disk - $oldProduct->disk; $checkResponse = Pterodactyl::checkNodeResources($node, $requireMemory, $requiredisk); - if ($checkResponse == False) return redirect()->route('servers.index')->with('error', __("The node '" . $nodeName . "' doesn't have the required memory or disk left to upgrade the server.". $requiredisk. "disk, ".$requireMemory)); + if ($checkResponse == False) return redirect()->route('servers.index')->with('error', __("The node '" . $nodeName . "' doesn't have the required memory or disk left to upgrade the server.")); $priceupgrade = $newProduct->getHourlyPrice(); From 39569917c70d9a766a320a111cde6aeb7a0db3b8 Mon Sep 17 00:00:00 2001 From: 1day2die Date: Mon, 15 Aug 2022 19:03:13 +0200 Subject: [PATCH 13/33] Update settings.blade.php --- resources/views/servers/settings.blade.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/resources/views/servers/settings.blade.php b/resources/views/servers/settings.blade.php index 7607de10..59edb45e 100644 --- a/resources/views/servers/settings.blade.php +++ b/resources/views/servers/settings.blade.php @@ -256,7 +256,7 @@ @foreach($products as $product) - @if(in_array($server->egg, $product->eggs) && $product->id != $server->product->id && !$server->product->disabled) + @if(in_array($server->egg, $product->eggs) && $product->id != $server->product->id && $server->product->disabled == false) @endif @endforeach From 138695a5ff8b6f78730d2ef0ffbb18bdea0920cd Mon Sep 17 00:00:00 2001 From: 1day2die Date: Mon, 15 Aug 2022 19:05:41 +0200 Subject: [PATCH 15/33] Update settings.blade.php --- resources/views/servers/settings.blade.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/views/servers/settings.blade.php b/resources/views/servers/settings.blade.php index d518f8bf..a7f20cdb 100644 --- a/resources/views/servers/settings.blade.php +++ b/resources/views/servers/settings.blade.php @@ -256,7 +256,7 @@ + + + + + +
@@ -191,6 +206,8 @@ class="form-control @error('allocation-limit') is-invalid @enderror" required>
+ +
{{-- Design --}} diff --git a/resources/views/servers/settings.blade.php b/resources/views/servers/settings.blade.php index ad09e778..942457f6 100644 --- a/resources/views/servers/settings.blade.php +++ b/resources/views/servers/settings.blade.php @@ -221,12 +221,7 @@ diff --git a/routes/web.php b/routes/web.php index 73634f52..433220f9 100644 --- a/routes/web.php +++ b/routes/web.php @@ -64,7 +64,9 @@ Route::middleware(['auth', 'checkSuspended'])->group(function () { Route::get('notifications/readAll',[NotificationController::class,'readAll'])->name('notifications.readAll'); Route::resource('notifications', NotificationController::class); Route::resource('servers', ServerController::class); - Route::post('servers/{server}/upgrade', [ServerController::class,'upgrade'])->name('servers.upgrade'); + if(config('SETTINGS::SYSTEM:ENABLE_UPGRADE')){ + Route::post('servers/{server}/upgrade', [ServerController::class,'upgrade'])->name('servers.upgrade'); + } Route::resource('profile', ProfileController::class); Route::resource('store', StoreController::class); From 07825b0b4b9d1feeb0d64f4f8703814177466863 Mon Sep 17 00:00:00 2001 From: IceToast Date: Tue, 16 Aug 2022 22:37:40 +0200 Subject: [PATCH 20/33] =?UTF-8?q?chore:=20=F0=9F=8C=B1=20Added=20enable=5F?= =?UTF-8?q?upgrade=20setting=20to=20seeder?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- database/seeders/Seeds/SettingsSeeder.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/database/seeders/Seeds/SettingsSeeder.php b/database/seeders/Seeds/SettingsSeeder.php index a79501a9..fe695a76 100644 --- a/database/seeders/Seeds/SettingsSeeder.php +++ b/database/seeders/Seeds/SettingsSeeder.php @@ -508,5 +508,12 @@ class SettingsSeeder extends Seeder 'type' => 'string', 'description' => 'The Client API Key of an Pterodactyl Admin Account' ]); + Settings::firstOrCreate([ + 'key' => 'SETTINGS::SYSTEM:ENABLE_UPGRADE', + ], [ + 'value' =>"", + 'type' => 'string', + 'description' => 'Enables the updgrade/downgrade feature for servers' + ]); } } From c94c386d856b021e3e33be182c5a3c414b021bd1 Mon Sep 17 00:00:00 2001 From: 1day2die Date: Tue, 16 Aug 2022 23:02:22 +0200 Subject: [PATCH 21/33] show branchname in footer --- app/Providers/AppServiceProvider.php | 25 +++++++++++++++++++++++-- resources/views/layouts/main.blade.php | 2 +- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index 5f9dd9ff..52a0eee5 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -107,12 +107,33 @@ class AppServiceProvider extends ServiceProvider Artisan::call('cache:clear'); } + + try { + Artisan::call('config:clear'); + Artisan::call('cache:clear'); + $stringfromfile = file(base_path().'/.git/HEAD'); + Log::debug(base_path().'/.git/HEAD'); + + $firstLine = $stringfromfile[0]; //get the string from the array + + $explodedstring = explode("/", $firstLine, 3); //seperate out by the "/" in the string + + $branchname = $explodedstring[2]; //get the one that is always the branch name + } catch (Exception $e) { + $branchname = "unknown"; + Log::error($e); + } + config(['BranchName' => $branchname]); + + // Set Discord-API Config config(['services.discord.client_id' => config('SETTINGS::DISCORD:CLIENT_ID')]); config(['services.discord.client_secret' => config('SETTINGS::DISCORD:CLIENT_SECRET')]); } catch (Exception $e) { - error_log("Settings Error: Could not load settings from database"); - Log::error("Settings Error: Could not load settings from database"); + error_log("Settings Error: Could not load settings from database. The Installation probably is not done yet."); + error_log($e); + Log::error("Settings Error: Could not load settings from database. The Installation probably is not done yet."); + Log::error($e); } } } diff --git a/resources/views/layouts/main.blade.php b/resources/views/layouts/main.blade.php index 55fa3ceb..446e039e 100644 --- a/resources/views/layouts/main.blade.php +++ b/resources/views/layouts/main.blade.php @@ -404,7 +404,7 @@ href="{{ url('/') }}">{{ env('APP_NAME', 'Laravel') }}. All rights reserved. Powered by ControlPanel. Version - {{ config('app')['version'] }} + {{ config('app')['version'] }} - {{config("BranchName")}} From 2c0ff94fcad1686e3bee47f18ccef31064d3f310 Mon Sep 17 00:00:00 2001 From: Dennis Date: Tue, 16 Aug 2022 23:04:28 +0200 Subject: [PATCH 22/33] Update app.php --- config/app.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/app.php b/config/app.php index 0d7b8c9f..90bdfdde 100644 --- a/config/app.php +++ b/config/app.php @@ -4,7 +4,7 @@ use App\Models\Settings; return [ - 'version' => '0.8.1', + 'version' => '0.8.2', /* |-------------------------------------------------------------------------- From db6967a7e7d462e2972eedf4411bc21c02c21f8f Mon Sep 17 00:00:00 2001 From: Dennis Date: Tue, 16 Aug 2022 23:07:25 +0200 Subject: [PATCH 23/33] Update AppServiceProvider.php --- app/Providers/AppServiceProvider.php | 3 --- 1 file changed, 3 deletions(-) diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index 52a0eee5..8d31a219 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -109,10 +109,7 @@ class AppServiceProvider extends ServiceProvider try { - Artisan::call('config:clear'); - Artisan::call('cache:clear'); $stringfromfile = file(base_path().'/.git/HEAD'); - Log::debug(base_path().'/.git/HEAD'); $firstLine = $stringfromfile[0]; //get the string from the array From c2c4d764b01d875d740ed97c9c47a7083c9e5b46 Mon Sep 17 00:00:00 2001 From: 1Day Date: Wed, 17 Aug 2022 10:33:44 +0200 Subject: [PATCH 24/33] fix all datatables --- resources/views/admin/api/index.blade.php | 2 +- resources/views/admin/nests/index.blade.php | 2 +- resources/views/admin/nodes/index.blade.php | 2 +- resources/views/admin/payments/index.blade.php | 2 +- resources/views/admin/products/index.blade.php | 2 +- resources/views/admin/servers/table.blade.php | 2 +- resources/views/admin/usefullinks/index.blade.php | 2 +- resources/views/admin/users/index.blade.php | 2 +- resources/views/admin/vouchers/index.blade.php | 2 +- resources/views/admin/vouchers/users.blade.php | 2 +- resources/views/moderator/ticket/blacklist.blade.php | 2 +- resources/views/moderator/ticket/index.blade.php | 6 +++--- resources/views/ticket/index.blade.php | 2 +- 13 files changed, 15 insertions(+), 15 deletions(-) diff --git a/resources/views/admin/api/index.blade.php b/resources/views/admin/api/index.blade.php index 6eaf5fba..377095b1 100644 --- a/resources/views/admin/api/index.blade.php +++ b/resources/views/admin/api/index.blade.php @@ -65,7 +65,7 @@ document.addEventListener("DOMContentLoaded", function () { $('#datatable').DataTable({ language: { - url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("app.datatable_locale")}}.json' + url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("SETTINGS::LOCALE:DATATABLES")}}.json' }, processing: true, serverSide: true, diff --git a/resources/views/admin/nests/index.blade.php b/resources/views/admin/nests/index.blade.php index 843bbe5f..152773e4 100644 --- a/resources/views/admin/nests/index.blade.php +++ b/resources/views/admin/nests/index.blade.php @@ -75,7 +75,7 @@ THIS FILE IS DEPRECATED document.addEventListener("DOMContentLoaded", function () { $('#datatable').DataTable({ language: { - url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("app.datatable_locale")}}.json' + url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("SETTINGS::LOCALE:DATATABLES")}}.json' }, processing: true, serverSide: true, diff --git a/resources/views/admin/nodes/index.blade.php b/resources/views/admin/nodes/index.blade.php index d6fe5034..bb57e0ce 100644 --- a/resources/views/admin/nodes/index.blade.php +++ b/resources/views/admin/nodes/index.blade.php @@ -75,7 +75,7 @@ THIS FILE IS DEPRECATED document.addEventListener("DOMContentLoaded", function () { $('#datatable').DataTable({ language: { - url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("app.datatable_locale")}}.json' + url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("SETTINGS::LOCALE:DATATABLES")}}.json' }, processing: true, serverSide: true, diff --git a/resources/views/admin/payments/index.blade.php b/resources/views/admin/payments/index.blade.php index c60debba..6f907c36 100644 --- a/resources/views/admin/payments/index.blade.php +++ b/resources/views/admin/payments/index.blade.php @@ -66,7 +66,7 @@ document.addEventListener("DOMContentLoaded", function() { $('#datatable').DataTable({ language: { - url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("app.datatable_locale")}}.json' + url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("SETTINGS::LOCALE:DATATABLES")}}.json' }, processing: true, serverSide: true, diff --git a/resources/views/admin/products/index.blade.php b/resources/views/admin/products/index.blade.php index b7c241b3..30d2b712 100644 --- a/resources/views/admin/products/index.blade.php +++ b/resources/views/admin/products/index.blade.php @@ -78,7 +78,7 @@ document.addEventListener("DOMContentLoaded", function () { $("#datatable").DataTable({ language: { - url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("app.datatable_locale")}}.json' + url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("SETTINGS::LOCALE:DATATABLES")}}.json' }, processing: true, serverSide: true, diff --git a/resources/views/admin/servers/table.blade.php b/resources/views/admin/servers/table.blade.php index 09426c76..b71671de 100644 --- a/resources/views/admin/servers/table.blade.php +++ b/resources/views/admin/servers/table.blade.php @@ -23,7 +23,7 @@ document.addEventListener("DOMContentLoaded", function () { $('#datatable').DataTable({ language: { - url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("app.datatable_locale")}}.json' + url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("SETTINGS::LOCALE:DATATABLES")}}.json' }, processing: true, serverSide: true, diff --git a/resources/views/admin/usefullinks/index.blade.php b/resources/views/admin/usefullinks/index.blade.php index f0cc60a6..32100334 100644 --- a/resources/views/admin/usefullinks/index.blade.php +++ b/resources/views/admin/usefullinks/index.blade.php @@ -67,7 +67,7 @@ document.addEventListener("DOMContentLoaded", function () { $('#datatable').DataTable({ language: { - url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("app.datatable_locale")}}.json' + url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("SETTINGS::LOCALE:DATATABLES")}}.json' }, processing: true, serverSide: true, diff --git a/resources/views/admin/users/index.blade.php b/resources/views/admin/users/index.blade.php index 7cf8665d..b3a0e87f 100644 --- a/resources/views/admin/users/index.blade.php +++ b/resources/views/admin/users/index.blade.php @@ -74,7 +74,7 @@ document.addEventListener("DOMContentLoaded", function () { $('#datatable').DataTable({ language: { - url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("app.datatable_locale")}}.json' + url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("SETTINGS::LOCALE:DATATABLES")}}.json' }, processing: true, serverSide: false, //increases loading times too much? change back to "true" if it does diff --git a/resources/views/admin/vouchers/index.blade.php b/resources/views/admin/vouchers/index.blade.php index 59f0efc6..1f60e9aa 100644 --- a/resources/views/admin/vouchers/index.blade.php +++ b/resources/views/admin/vouchers/index.blade.php @@ -70,7 +70,7 @@ document.addEventListener("DOMContentLoaded", function () { $('#datatable').DataTable({ language: { - url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("app.datatable_locale")}}.json' + url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("SETTINGS::LOCALE:DATATABLES")}}.json' }, processing: true, serverSide: true, diff --git a/resources/views/admin/vouchers/users.blade.php b/resources/views/admin/vouchers/users.blade.php index c12281fb..284dc1c3 100644 --- a/resources/views/admin/vouchers/users.blade.php +++ b/resources/views/admin/vouchers/users.blade.php @@ -63,7 +63,7 @@ document.addEventListener("DOMContentLoaded", function() { $('#datatable').DataTable({ language: { - url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("app.datatable_locale")}}.json' + url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("SETTINGS::LOCALE:DATATABLES")}}.json' }, processing: true, serverSide: true, diff --git a/resources/views/moderator/ticket/blacklist.blade.php b/resources/views/moderator/ticket/blacklist.blade.php index 2a8d8f2a..403a5b90 100644 --- a/resources/views/moderator/ticket/blacklist.blade.php +++ b/resources/views/moderator/ticket/blacklist.blade.php @@ -90,7 +90,7 @@ document.addEventListener("DOMContentLoaded", function () { $('#datatable').DataTable({ language: { - url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("app.datatable_locale")}}.json' + url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("SETTINGS::LOCALE:DATATABLES")}}.json' }, processing: true, serverSide: true, diff --git a/resources/views/moderator/ticket/index.blade.php b/resources/views/moderator/ticket/index.blade.php index 203ca227..3ec056a4 100644 --- a/resources/views/moderator/ticket/index.blade.php +++ b/resources/views/moderator/ticket/index.blade.php @@ -48,10 +48,10 @@ - + - + @@ -63,7 +63,7 @@ document.addEventListener("DOMContentLoaded", function () { $('#datatable').DataTable({ language: { - url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("app.datatable_locale")}}.json' + url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("SETTINGS::LOCALE:DATATABLES")}}.json' }, processing: true, serverSide: true, diff --git a/resources/views/ticket/index.blade.php b/resources/views/ticket/index.blade.php index a761fc83..b12ef6d4 100644 --- a/resources/views/ticket/index.blade.php +++ b/resources/views/ticket/index.blade.php @@ -75,7 +75,7 @@ document.addEventListener("DOMContentLoaded", function () { $('#datatable').DataTable({ language: { - url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("app.datatable_locale")}}.json' + url: '//cdn.datatables.net/plug-ins/1.11.3/i18n/{{config("SETTINGS::LOCALE:DATATABLES")}}.json' }, processing: true, serverSide: true, From 1c98f30740cb29b23e4f2c6fbe12a38c7dc61f3b Mon Sep 17 00:00:00 2001 From: 1Day Date: Wed, 17 Aug 2022 10:41:48 +0200 Subject: [PATCH 25/33] close button on ticket page --- resources/views/moderator/ticket/show.blade.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/resources/views/moderator/ticket/show.blade.php b/resources/views/moderator/ticket/show.blade.php index 18e4ebaa..22bd2ea1 100644 --- a/resources/views/moderator/ticket/show.blade.php +++ b/resources/views/moderator/ticket/show.blade.php @@ -51,6 +51,11 @@ @endif

Created on: {{ $ticket->created_at->diffForHumans() }}

+
+ {{csrf_field()}} + {{method_field("POST") }} + +
From 07a2ebfcccd71a7e7998bad3eecf5601e2f039f8 Mon Sep 17 00:00:00 2001 From: 1day2die Date: Wed, 17 Aug 2022 19:31:14 +0200 Subject: [PATCH 26/33] min required credits per product when upgrading --- app/Http/Controllers/ServerController.php | 2 +- resources/views/servers/settings.blade.php | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/app/Http/Controllers/ServerController.php b/app/Http/Controllers/ServerController.php index 03c06313..cf731ddf 100644 --- a/app/Http/Controllers/ServerController.php +++ b/app/Http/Controllers/ServerController.php @@ -284,7 +284,7 @@ class ServerController extends Controller if ($priceupgrade < $oldProduct->getHourlyPrice()) { $priceupgrade = 0; } - if ($user->credits >= $priceupgrade) + if ($user->credits >= $priceupgrade && $user->credits >= $newProduct->minimum_credits) { $server->product_id = $request->product_upgrade; diff --git a/resources/views/servers/settings.blade.php b/resources/views/servers/settings.blade.php index 942457f6..e320533c 100644 --- a/resources/views/servers/settings.blade.php +++ b/resources/views/servers/settings.blade.php @@ -227,7 +227,7 @@ {{ __('Upgrade / Downgrade') }} - @endif + @@ -255,7 +255,8 @@ @foreach($products as $product) @if(in_array($server->egg, $product->eggs) && $product->id != $server->product->id && $product->disabled == false) - + @endif @endforeach @@ -269,6 +270,7 @@ + @endif