This commit is contained in:
AVMG20 2021-06-12 14:24:50 +02:00
parent 0e5eda1470
commit d6a00f62ae
2 changed files with 9 additions and 10 deletions

View file

@ -40,13 +40,13 @@ class ChargeCreditsCommand extends Command
*/
public function handle()
{
Server::chunk(10, function ($servers) {
/** @var Server $server */
foreach ($servers as $server) {
Server::chunk(10, function ($servers) {
/** @var Server $server */
foreach ($servers as $server) {
//ignore suspended servers
//ignore suspended servers
if ($server->isSuspended()) {
echo Carbon::now()->isoFormat('LLL') . " Ignoring suspended server";
echo Carbon::now()->isoFormat('LLL') . " Ignoring suspended server";
continue;
}
@ -54,22 +54,21 @@ class ChargeCreditsCommand extends Command
$user = $server->user;
$price = ($server->product->price / 30) / 24;
//remove credits or suspend server
if ($user->credits >= $price) {
$user->decrement('credits', $price);
//log
echo Carbon::now()->isoFormat('LLL') . " [CREDIT DEDUCTION] Removed " . number_format($price, 2, '.', '') . " from user (" . $user->name . ") for server (" . $server->name . ")\n";
echo Carbon::now()->isoFormat('LLL') . " [CREDIT DEDUCTION] Removed " . number_format($price, 2, '.', '') . " from user (" . $user->name . ") for server (" . $server->name . ")\n";
} else {
$response = Pterodactyl::client()->post("/application/servers/{$server->pterodactyl_id}/suspend");
if ($response->successful()) {
echo Carbon::now()->isoFormat('LLL') . " [CREDIT DEDUCTION] Suspended server (" . $server->name . ") from user (" . $user->name . ")\n";
echo Carbon::now()->isoFormat('LLL') . " [CREDIT DEDUCTION] Suspended server (" . $server->name . ") from user (" . $user->name . ")\n";
$server->update(['suspended' => now()]);
} else {
echo Carbon::now()->isoFormat('LLL') . " [CREDIT DEDUCTION] CRITICAL ERROR! Unable to suspend server (" . $server->name . ") from user (" . $user->name . ")\n";
echo Carbon::now()->isoFormat('LLL') . " [CREDIT DEDUCTION] CRITICAL ERROR! Unable to suspend server (" . $server->name . ") from user (" . $user->name . ")\n";
dump($response->json());
}
}

View file

@ -6,7 +6,7 @@ use App\Classes\Pterodactyl;
use Illuminate\Foundation\Testing\DatabaseTransactions;
use Tests\TestCase;
class testUserCommand extends TestCase
class TestUserCommand extends TestCase
{
use DatabaseTransactions;