validated(); $input['remember_token'] = Str::random(10); if (!empty($input['password'])) { $input['password'] = Hash::make($input['password']); } else { unset($input['password']); } // Maintain the existing value if it is not on the form. $input['admin'] = $input['admin'] ?? ($user->exists && $user->admin); $user->fill($input)->save(); // Handle image. if (!empty($input['image'])) { /** @var \Illuminate\Http\UploadedFile $file */ $file = $input['image']; $user->clearMediaCollection(); $user ->addMediaFromRequest('image') ->usingName($user->username) ->usingFileName("{$user->slug}.{$file->extension()}") ->toMediaCollection(); } elseif (isset($input['remove_image']) && $input['remove_image']) { $user->clearMediaCollection(); } } }