diff --git a/app/Http/Controllers/VoteController.php b/app/Http/Controllers/VoteController.php
index df0aa4d..602f08b 100644
--- a/app/Http/Controllers/VoteController.php
+++ b/app/Http/Controllers/VoteController.php
@@ -3,6 +3,7 @@
namespace App\Http\Controllers;
use App\Models\BookRecommendation;
+use App\Models\User;
use App\Models\Vote;
use Illuminate\Http\Request;
@@ -29,4 +30,22 @@ class VoteController extends Controller
return response()->json(['message' => 'No remaining votes.'], 403);
}
+
+ public function addTotalVotesAll(Request $request)
+ {
+ $request->validate([
+ 'total_votes' => 'required|integer|min:1',
+ ]);
+
+ if (!(auth()->user()->hasRole('admin')) ) {
+ return response()->json(['message' => 'Keine Berechtigung.'], 403);
+ }
+
+ $users = User::all();
+ foreach ($users as $user) {
+ $user->increment('total_votes', $request->total_votes);
+ }
+
+ return response()->json(['message' => 'Total votes added to all book recommendations.']);
+ }
}
diff --git a/nuxt/components/admin/AddVotes.vue b/nuxt/components/admin/AddVotes.vue
new file mode 100644
index 0000000..14747b7
--- /dev/null
+++ b/nuxt/components/admin/AddVotes.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/nuxt/components/modal/CastVote.vue b/nuxt/components/modal/CastVote.vue
index d7f3be3..d5127a9 100644
--- a/nuxt/components/modal/CastVote.vue
+++ b/nuxt/components/modal/CastVote.vue
@@ -1,10 +1,12 @@
-
+