user(); $this->full_name = $user->full_name; $this->email = $user->email; $this->preferred_language = $user->preferred_language ?? 'ar'; } public function updateProfile(): void { $validated = $this->validate([ 'full_name' => ['required', 'string', 'max:255'], 'email' => ['required', 'email', 'max:255', Rule::unique(User::class)->ignore(auth()->id())], 'preferred_language' => ['required', 'in:ar,en'], ]); auth()->user()->update([ 'full_name' => $this->full_name, 'email' => $this->email, 'preferred_language' => $this->preferred_language, ]); session()->flash('success', __('admin.profile_updated')); $this->dispatch('profile-updated'); } public function updatePassword(): void { $this->validate([ 'current_password' => ['required', 'current_password'], 'password' => ['required', 'string', Password::defaults(), 'confirmed'], ]); auth()->user()->update([ 'password' => Hash::make($this->password), ]); $this->reset(['current_password', 'password', 'password_confirmation']); session()->flash('password_success', __('admin.password_updated')); $this->dispatch('password-updated'); } public function sendTestEmail(): void { try { $locale = auth()->user()->preferred_language ?? 'en'; Mail::to(auth()->user())->send(new TestEmail($locale)); session()->flash('email_success', __('admin.test_email_sent')); } catch (\Exception $e) { session()->flash('email_error', __('admin.test_email_failed')); } } }; ?>