<?php

namespace App\Console\Commands;

use App\Models\User;
use Database\Seeders\PassengerUserSeeder;
use Illuminate\Console\Command;

class ResetTestUserPassword extends Command
{
    protected $signature = 'test-user:reset-password';

    protected $description = 'إعادة تعيين كلمة مرور المستخدم التجريبي (للفحص)';

    public function handle(): int
    {
        $user = User::where('email', 'passenger@test.com')
            ->orWhere('phone', PassengerUserSeeder::TEST_PHONE)
            ->orWhere('phone', '964' . substr(PassengerUserSeeder::TEST_PHONE, 1))
            ->first();

        if (!$user) {
            $this->error('المستخدم التجريبي غير موجود. نفّذ: php artisan db:seed --class=PassengerUserSeeder');
            return 1;
        }

        $user->forceFill([
            'password' => PassengerUserSeeder::TEST_PASSWORD,
            'user_type' => 'passenger',
        ])->save();
        $this->info('تم إعادة تعيين كلمة المرور والدور (راكب) بنجاح.');
        $this->info('رقم الهاتف: ' . PassengerUserSeeder::TEST_PHONE);
        $this->info('كلمة المرور: ' . PassengerUserSeeder::TEST_PASSWORD);
        return 0;
    }
}
