diff --git a/app/Events/UserUpdatedEvent.php b/app/Events/UserUpdateCreditsEvent.php similarity index 95% rename from app/Events/UserUpdatedEvent.php rename to app/Events/UserUpdateCreditsEvent.php index 199dada6..7194bd8a 100644 --- a/app/Events/UserUpdatedEvent.php +++ b/app/Events/UserUpdateCreditsEvent.php @@ -11,7 +11,7 @@ use Illuminate\Contracts\Broadcasting\ShouldBroadcast; use Illuminate\Foundation\Events\Dispatchable; use Illuminate\Queue\SerializesModels; -class UserUpdatedEvent +class UserUpdateCreditsEvent { use Dispatchable, InteractsWithSockets, SerializesModels; diff --git a/app/Http/Controllers/Admin/PaymentController.php b/app/Http/Controllers/Admin/PaymentController.php index 2f21c014..110d2c0d 100644 --- a/app/Http/Controllers/Admin/PaymentController.php +++ b/app/Http/Controllers/Admin/PaymentController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers\Admin; +use App\Events\UserUpdateCreditsEvent; use App\Http\Controllers\Controller; use App\Models\Configuration; use App\Models\Payment; @@ -167,6 +168,8 @@ class PaymentController extends Controller //payment notification $user->notify(new ConfirmPaymentNotification($payment)); + event(new UserUpdateCreditsEvent($user)); + //redirect back to home return redirect()->route('home')->with('success', 'Your credit balance has been increased!'); } diff --git a/app/Http/Controllers/Admin/UserController.php b/app/Http/Controllers/Admin/UserController.php index bc480aab..795ad553 100644 --- a/app/Http/Controllers/Admin/UserController.php +++ b/app/Http/Controllers/Admin/UserController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers\Admin; use App\Classes\Pterodactyl; +use App\Events\UserUpdateCreditsEvent; use App\Http\Controllers\Controller; use App\Models\User; use App\Notifications\DynamicNotification; @@ -130,6 +131,7 @@ class UserController extends Controller } $user->update($request->all()); + event(new UserUpdateCreditsEvent($user)); return redirect()->route('admin.users.index')->with('success', 'User updated!'); } diff --git a/app/Http/Controllers/Admin/VoucherController.php b/app/Http/Controllers/Admin/VoucherController.php index cf1b8600..1aa2c59e 100644 --- a/app/Http/Controllers/Admin/VoucherController.php +++ b/app/Http/Controllers/Admin/VoucherController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers\Admin; +use App\Events\UserUpdateCreditsEvent; use App\Http\Controllers\Controller; use App\Models\Voucher; use Illuminate\Contracts\Foundation\Application; @@ -149,6 +150,8 @@ class VoucherController extends Controller #redeem voucher $voucher->redeem($request->user()); + event(new UserUpdateCreditsEvent($request->user())); + return response()->json([ 'success' => "{$voucher->credits} ".CREDITS_DISPLAY_NAME." have been added to your balance!" ]); diff --git a/app/Http/Controllers/Api/UserController.php b/app/Http/Controllers/Api/UserController.php index 126a55b7..a5f7263c 100644 --- a/app/Http/Controllers/Api/UserController.php +++ b/app/Http/Controllers/Api/UserController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers\Api; +use App\Events\UserUpdateCreditsEvent; use App\Http\Controllers\Controller; use App\Models\DiscordUser; use App\Models\User; @@ -61,6 +62,8 @@ class UserController extends Controller $user->update($request->all()); + event(new UserUpdateCreditsEvent($user)); + return $user; } @@ -86,6 +89,7 @@ class UserController extends Controller 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" ]); + event(new UserUpdateCreditsEvent($user)); $user->increment('credits', $request->credits); } diff --git a/app/Listeners/UnsuspendServers.php b/app/Listeners/UnsuspendServers.php index 8bcecbe0..51f1ad60 100644 --- a/app/Listeners/UnsuspendServers.php +++ b/app/Listeners/UnsuspendServers.php @@ -2,7 +2,7 @@ namespace App\Listeners; -use App\Events\UserUpdatedEvent; +use App\Events\UserUpdateCreditsEvent; use App\Models\Configuration; use App\Models\Server; use Exception; @@ -14,11 +14,11 @@ class UnsuspendServers implements ShouldQueue /** * Handle the event. * - * @param UserUpdatedEvent $event + * @param UserUpdateCreditsEvent $event * @return void * @throws Exception */ - public function handle(UserUpdatedEvent $event) + public function handle(UserUpdateCreditsEvent $event) { if ($event->user->credits > Configuration::getValueByKey('MINIMUM_REQUIRED_CREDITS_TO_MAKE_SERVER' , 50)){ /** @var Server $server */ diff --git a/app/Models/User.php b/app/Models/User.php index b31d9bd2..6dc4efc8 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -3,7 +3,7 @@ namespace App\Models; use App\Classes\Pterodactyl; -use App\Events\UserUpdatedEvent; +use App\Events\UserUpdateCreditsEvent; use App\Notifications\Auth\QueuedVerifyEmail; use App\Notifications\WelcomeMessage; use Illuminate\Contracts\Auth\MustVerifyEmail; @@ -112,10 +112,6 @@ class User extends Authenticatable implements MustVerifyEmail Pterodactyl::client()->delete("/application/users/{$user->pterodactyl_id}"); }); - - static::updated(function (User $user){ - event(new UserUpdatedEvent($user)); - }); } /** diff --git a/app/Providers/EventServiceProvider.php b/app/Providers/EventServiceProvider.php index cb150ed5..d42ccae5 100644 --- a/app/Providers/EventServiceProvider.php +++ b/app/Providers/EventServiceProvider.php @@ -2,7 +2,7 @@ namespace App\Providers; -use App\Events\UserUpdatedEvent; +use App\Events\UserUpdateCreditsEvent; use App\Listeners\UnsuspendServers; use App\Listeners\Verified; use Illuminate\Auth\Events\Registered; @@ -22,7 +22,7 @@ class EventServiceProvider extends ServiceProvider Registered::class => [ SendEmailVerificationNotification::class, ], - UserUpdatedEvent::class => [ + UserUpdateCreditsEvent::class => [ UnsuspendServers::class ], SocialiteWasCalled::class => [ diff --git a/resources/views/models/redeem_voucher_modal.blade.php b/resources/views/models/redeem_voucher_modal.blade.php index 37a24414..84a243dd 100644 --- a/resources/views/models/redeem_voucher_modal.blade.php +++ b/resources/views/models/redeem_voucher_modal.blade.php @@ -56,6 +56,7 @@ url: form.action, dataType: 'json', data: { + "_token": "{{ csrf_token() }}", code: input.value }, success: function (response) {