<?php

namespace App\Http\Requests\Api;

use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Validation\Rule;

class DeveloperResidentialComplexFilterRequest extends FormRequest
{
    /**
     * Determine if the user is authorized to make this request.
     *
     * @return bool
     */
    public function authorize()
    {
        return true;
    }

    /**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules()
    {
        return [
            'slug' => ['required', Rule::exists('developers', 'code')->whereNull('deleted_at')],
            'code' => 'required|in:all,sale,being_built,built',
            'page'=> 'numeric|min:0|max:9999|required',
        ];
    }

    public function all($keys = null)
    {
        $data = parent::all();
        $data['slug'] = $this->route('slug');

        return $data;
    }

    public function messages()
    {
        return [
          'slug.exists' => 'developer was not found'
        ];
    }
}
