Pārlūkot izejas kodu

Merge pull request #149 from Hiekki4/development

ControlPanel CopyRight & AddCredits endpoint
AVMG 3 gadi atpakaļ
vecāks
revīzija
f2fa61e277

+ 25 - 0
app/Http/Controllers/Api/UserController.php

@@ -63,6 +63,31 @@ class UserController extends Controller
         return $user;
     }
 
+    /**
+     * Give credits to a user.
+     *
+     * @param Request $request
+     * @param int $id
+     * @return User
+     */
+    public function addCredits(Request $request, int $id)
+    {
+        $discordUser = DiscordUser::find($id);
+        $user = $discordUser ? $discordUser->user : User::findOrFail($id);
+
+        $request->validate([
+            "credits"      => "required|numeric|min:0|max:1000000",
+        ]);
+
+        if ($user->credits + $request->credits >= 99999999) throw ValidationException::withMessages([
+            'credits' => "You can't add this amount of credits because you would exceed the credit limit"
+        ]);
+        
+        $user->increment('credits', $request->credits);
+
+        return $user;
+    }
+
     /**
      * Remove the specified resource from storage.
      *

+ 1 - 1
resources/views/layouts/main.blade.php

@@ -316,7 +316,7 @@
     <footer class="main-footer">
         <strong>Copyright &copy; 2021-{{date('Y')}} <a href="{{url('/')}}">{{env('APP_NAME' , 'Laravel')}}</a>.</strong>
         All rights
-        reserved.
+        reserved. Powered by <a href="https://controlpanel.gg">ControlPanel</a>
     </footer>
 
     <!-- Control Sidebar -->

+ 1 - 0
routes/api.php

@@ -17,6 +17,7 @@ use Illuminate\Support\Facades\Route;
 */
 
 Route::middleware('api.token')->group(function () {
+    Route::patch('/users/{user}/addcredits', [UserController::class, 'addCredits']);
     Route::resource('users', UserController::class)->except(['store', 'create']);
 
     Route::patch('/servers/{server}/suspend', [ServerController::class, 'suspend']);