feat: add user impersonation service

This commit is contained in:
idevakk
2025-11-17 10:44:19 -08:00
parent f60c986e07
commit a7029b5f57
21 changed files with 1343 additions and 6 deletions

View File

@@ -6,7 +6,9 @@ use App\Filament\Resources\UserResource;
use App\Models\User;
use Filament\Actions\Action;
use Filament\Actions\DeleteAction;
use Filament\Notifications\Notification;
use Filament\Resources\Pages\EditRecord;
use Filament\Support\Icons\Heroicon;
use Illuminate\Support\Facades\Response;
class EditUser extends EditRecord
@@ -17,6 +19,25 @@ class EditUser extends EditRecord
{
return [
DeleteAction::make(),
Action::make('mark_email_verified')
->label('Mark Email as Verified')
->icon(Heroicon::OutlinedEnvelope)
->action(function (User $user) {
if (! $user->hasVerifiedEmail()) {
$user->markEmailAsVerified();
Notification::make('email_verified_successfully')
->title('Email Verified Successfully')
->icon(Heroicon::OutlinedEnvelope)
->success()
->send();
} else {
Notification::make('email_already_verified')
->title('Email Already Verified')
->icon(Heroicon::OutlinedEnvelope)
->warning()
->send();
}
}),
Action::make('download_report')
->label('Download User Report')
->icon('heroicon-o-user')