Browse Source

Merge pull request #191 from ControlPanel-gg/development

Development
AVMG 3 years ago
parent
commit
2862109d60

+ 6 - 0
app/Http/Controllers/ServerController.php

@@ -74,6 +74,12 @@ class ServerController extends Controller
             'identifier' => $response->json()['attributes']['identifier']
         ]);
 
+        if (Configuration::getValueByKey('SERVER_CREATE_CHARGE_FIRST_HOUR' , 'true') == 'true'){
+            if (Auth::user()->credits >= $server->product->getHourlyPrice()){
+                Auth::user()->decrement('credits', $server->product->getHourlyPrice());
+            }
+        }
+
         return redirect()->route('servers.index')->with('success', 'server created');
     }
 

+ 6 - 1
app/Models/Server.php

@@ -71,7 +71,12 @@ class Server extends Model
 
         static::deleting(function (Server $server) {
             $response = Pterodactyl::client()->delete("/application/servers/{$server->pterodactyl_id}");
-            if ($response->failed() && !is_null($server->pterodactyl_id)) throw new Exception($response['errors'][0]['code']);
+            if ($response->failed() && !is_null($server->pterodactyl_id)) {
+                //only return error when it's not a 404 error
+                if ($response['errors'][0]['status'] != '404') {
+                    throw new Exception($response['errors'][0]['code']);
+                }
+            }
         });
     }
 

+ 8 - 0
database/seeders/Seeds/ConfigurationSeeder.php

@@ -128,6 +128,14 @@ class ConfigurationSeeder extends Seeder
             'description' => 'Set the display name of your currency :)'
         ]);
 
+        //credits display name
+        Configuration::firstOrCreate([
+            'key' => 'SERVER_CREATE_CHARGE_FIRST_HOUR',
+        ], [
+            'value'       => 'true',
+            'type'        => 'boolean',
+            'description' => 'Charges the first hour worth of credits upon creating a server.'
+        ]);
 
     }
 }