full_name = $user->full_name; $this->email = $user->email; $this->preferred_language = $user->preferred_language ?? 'ar'; } /** * Update the profile information for the currently authenticated user. */ public function updateProfileInformation(): void { $user = Auth::user(); $validated = $this->validate([ 'full_name' => ['required', 'string', 'max:255'], 'email' => [ 'required', 'string', 'lowercase', 'email', 'max:255', Rule::unique(User::class)->ignore($user->id), ], 'preferred_language' => ['required', 'in:ar,en'], ]); $user->fill($validated); if ($user->isDirty('email')) { $user->email_verified_at = null; } $user->save(); $this->dispatch('profile-updated', name: $user->full_name); } /** * Send an email verification notification to the current user. */ public function resendVerificationNotification(): void { $user = Auth::user(); if ($user->hasVerifiedEmail()) { $this->redirectIntended(default: route('dashboard', absolute: false)); return; } $user->sendEmailVerificationNotification(); Session::flash('status', 'verification-link-sent'); } /** * Send a test email to verify mail configuration (admin only). */ public function sendTestEmail(): void { if (! Auth::user()->isAdmin()) { return; } try { $locale = Auth::user()->preferred_language ?? 'en'; Mail::to(Auth::user())->send(new TestEmail($locale)); Session::flash('test-email-sent', true); } catch (\Exception $e) { Session::flash('test-email-failed', true); } } }; ?>
@include('partials.settings-heading')
@if (auth()->user() instanceof \Illuminate\Contracts\Auth\MustVerifyEmail &&! auth()->user()->hasVerifiedEmail())
{{ __('Your email address is unverified.') }} {{ __('Click here to re-send the verification email.') }} @if (session('status') === 'verification-link-sent') {{ __('A new verification link has been sent to your email address.') }} @endif
@endif
{{ __('Save') }}
{{ __('Saved.') }}
@if (auth()->user()->isAdmin())
{{ __('Email Configuration') }} {{ __('Verify your email configuration is working correctly.') }} @if (session('test-email-sent'))
{{ __('admin.test_email_sent') }}
@endif @if (session('test-email-failed'))
{{ __('admin.test_email_failed') }}
@endif
{{ __('admin.sender_name') }} {{ config('mail.from.name') }}
{{ __('admin.sender_email') }} {{ config('mail.from.address') }}
{{ __('admin.send_test_email') }} {{ __('admin.sending') }}
@endif