Переглянути джерело

Merge branch 'ControlPanel-gg:main' into Invoices

Dennis 3 роки тому
батько
коміт
9d64eaf73f

+ 1 - 1
LICENSE

@@ -1,6 +1,6 @@
 MIT License
 
-Copyright (c) 2021 Arno VIsker
+Copyright (c) 2021 ControlPanel.gg
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
 of this software and associated documentation files (the "Software"), to deal

+ 9 - 4
app/Classes/Pterodactyl.php

@@ -14,6 +14,11 @@ use Illuminate\Support\Facades\Http;
 
 class Pterodactyl
 {
+    /**
+     * @description per_page option to pull more than the default 50 from pterodactyl
+     */
+    public CONST PER_PAGE = 200;
+
     //TODO: Extend error handling (maybe logger for more errors when debugging)
 
     /**
@@ -43,7 +48,7 @@ class Pterodactyl
      */
     public static function getEggs(Nest $nest)
     {
-        $response = self::client()->get("/application/nests/{$nest->id}/eggs?include=nest,variables");
+        $response = self::client()->get("/application/nests/{$nest->id}/eggs?include=nest,variables&per_page=" . self::PER_PAGE);
         if ($response->failed()) throw self::getException();
         return $response->json()['data'];
     }
@@ -54,7 +59,7 @@ class Pterodactyl
      */
     public static function getNodes()
     {
-        $response = self::client()->get('/application/nodes');
+        $response = self::client()->get('/application/nodes?per_page=' . self::PER_PAGE);
         if ($response->failed()) throw self::getException();
         return $response->json()['data'];
     }
@@ -65,7 +70,7 @@ class Pterodactyl
      */
     public static function getNests()
     {
-        $response = self::client()->get('/application/nests');
+        $response = self::client()->get('/application/nests?per_page=' . self::PER_PAGE);
         if ($response->failed()) throw self::getException();
         return $response->json()['data'];
     }
@@ -76,7 +81,7 @@ class Pterodactyl
      */
     public static function getLocations()
     {
-        $response = self::client()->get('/application/locations');
+        $response = self::client()->get('/application/locations?per_page=' . self::PER_PAGE);
         if ($response->failed()) throw self::getException();
         return $response->json()['data'];
     }

+ 5 - 3
app/Http/Controllers/Auth/SocialiteController.php

@@ -5,6 +5,7 @@ namespace App\Http\Controllers\Auth;
 use App\Http\Controllers\Controller;
 use App\Models\Configuration;
 use App\Models\DiscordUser;
+use App\Models\User;
 use App\Models\Voucher;
 use Illuminate\Support\Facades\Auth;
 use Illuminate\Support\Facades\Http;
@@ -27,14 +28,15 @@ class SocialiteController extends Controller
             return abort(500);
         }
 
+        /** @var User $user */
+        $user = Auth::user();
         $discord = Socialite::driver('discord')->user();
-        $discordUser = DiscordUser::find($discord->id);
         $botToken = env('DISCORD_BOT_TOKEN');
         $guildId = env('DISCORD_GUILD_ID');
         $roleId = env('DISCORD_ROLE_ID');
 
         //save / update discord_users
-        if (is_null($discordUser)) {
+        if (is_null($user->discordUser)) {
             //create discord user in db
             DiscordUser::create(array_merge($discord->user, ['user_id' => Auth::user()->id]));
             //update user
@@ -42,7 +44,7 @@ class SocialiteController extends Controller
             Auth::user()->increment('server_limit', Configuration::getValueByKey('SERVER_LIMIT_REWARD_AFTER_VERIFY_DISCORD'));
             Auth::user()->update(['discord_verified_at' => now()]);
         } else {
-            $discordUser->update($discord->user);
+            $user->discordUser->update($discord->user);
         }
 
         //force user into discord server

+ 1 - 1
config/app.php

@@ -2,7 +2,7 @@
 
 return [
 
-    'version' => '0.6',
+    'version' => '0.6.2',
     /*
     |--------------------------------------------------------------------------
     | Application Name

+ 26 - 18
resources/views/profile/index.blade.php

@@ -78,9 +78,12 @@
                                             class="pt-sm-2 pb-1 mb-0 text-nowrap">{{$user->name}}</h4>
                                         <p class="mb-0">{{$user->email}}
                                             @if($user->hasVerifiedEmail())
-                                                <i data-toggle="popover" data-trigger="hover" data-content="Verified" class="text-success fas fa-check-circle"></i>
+                                                <i data-toggle="popover" data-trigger="hover" data-content="Verified"
+                                                   class="text-success fas fa-check-circle"></i>
                                             @else
-                                                <i data-toggle="popover" data-trigger="hover" data-content="Not verified" class="text-danger fas fa-exclamation-circle"></i>
+                                                <i data-toggle="popover" data-trigger="hover"
+                                                   data-content="Not verified"
+                                                   class="text-danger fas fa-exclamation-circle"></i>
                                             @endif
 
                                         </p>
@@ -189,8 +192,8 @@
                                         </div>
                                         @if(!empty(env('DISCORD_CLIENT_ID')) && !empty(env('DISCORD_CLIENT_SECRET')))
                                             <div class="col-12 col-sm-5 offset-sm-1 mb-3">
-                                                <b>Link your discord account!</b>
                                                 @if(is_null(Auth::user()->discordUser))
+                                                    <b>Link your discord account!</b>
                                                     <div class="verify-discord">
                                                         <div class="mb-3">
                                                             @if($credits_reward_after_verify_discord)
@@ -198,7 +201,8 @@
                                                                     extra
                                                                     <b><i
                                                                             class="fa fa-coins mx-1"></i>{{$credits_reward_after_verify_discord}}
-                                                                    </b> {{CREDITS_DISPLAY_NAME}} and increased server limit
+                                                                    </b> {{CREDITS_DISPLAY_NAME}} and increased server
+                                                                    limit
                                                                 </p>
                                                             @endif
                                                         </div>
@@ -213,21 +217,25 @@
                                                             <p>You are verified!</p>
                                                         </div>
                                                     </div>
-                                                    <div class="row">
-                                                            <div class="small-box bg-dark">
-                                                                <div class="d-flex justify-content-between">
-                                                                    <div class="p-3">
-                                                                        <h3>{{$user->discordUser->username}} <sup>{{$user->discordUser->locale}}</sup> </h3>
-                                                                        <p>{{$user->discordUser->id}}
-                                                                        </p>
-                                                                    </div>
-                                                                    <div class="p-3"><img width="100px" height="100px" class="rounded-circle" src="{{$user->discordUser->getAvatar()}}" alt="avatar"></div>
-                                                                </div>
-								                                <div class="small-box-footer">
-                                                                    <a href="{{route('auth.redirect')}}">
-                                                                        <i class="fab fa-discord mr-1"></i>Re-Sync Discord
-                                                                    </a>
+                                                    <div class="row pl-2">
+                                                        <div class="small-box bg-dark">
+                                                            <div class="d-flex justify-content-between">
+                                                                <div class="p-3">
+                                                                    <h3>{{$user->discordUser->username}}
+                                                                        <sup>{{$user->discordUser->locale}}</sup></h3>
+                                                                    <p>{{$user->discordUser->id}}
+                                                                    </p>
                                                                 </div>
+                                                                <div class="p-3"><img width="100px" height="100px"
+                                                                                      class="rounded-circle"
+                                                                                      src="{{$user->discordUser->getAvatar()}}"
+                                                                                      alt="avatar"></div>
+                                                            </div>
+                                                            <div class="small-box-footer">
+                                                                <a href="{{route('auth.redirect')}}">
+                                                                    <i class="fab fa-discord mr-1"></i>Re-Sync Discord
+                                                                </a>
+                                                            </div>
                                                         </div>
                                                     </div>
                                                 @endif

+ 4 - 1
resources/views/servers/create.blade.php

@@ -411,8 +411,11 @@
                     this.selectedNestObject = this.nests.find(nest => nest.id == this.selectedNest) ?? {}
                     this.selectedEggObject = this.eggs.find(egg => egg.id == this.selectedEgg) ?? {}
 
+                    this.selectedNodeObject = {};
                     this.locations.forEach(location => {
-                        this.selectedNodeObject = location.nodes.find(node => node.id == this.selectedNode) ?? {};
+                        if (!this.selectedNodeObject?.id) {
+                            this.selectedNodeObject = location.nodes.find(node => node.id == this.selectedNode) ?? {};
+                        }
                     })
 
                     this.selectedProductObject = this.products.find(product => product.id == this.selectedProduct) ?? {}