HOME


Mini Shell 1.0
La Pieza.DO | Todo lo que buscas!

Bienvenido de nuevo!

Acceso Cuenta Delivery
DIR: /var/www/devs.lapieza.net/app/Http/Requests/
Upload File :
Current File : /var/www/devs.lapieza.net/app/Http/Requests/SellerRegistrationRequest.php
<?php



namespace App\Http\Requests;



use Illuminate\Foundation\Http\FormRequest;

use Illuminate\Validation\Rule;

use Illuminate\Contracts\Validation\Validator;

use Illuminate\Http\Exceptions\HttpResponseException;

use Illuminate\Validation\ValidationException;



class SellerRegistrationRequest 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<string, mixed>

     */

    public function rules()

    {

        $rules = [];

        

        $rules['name']          = 'required|string|max:255';

        $rules['email']         = 'required|email|unique:users|max:255';

        $rules['password' ]     = 'required|string|min:6|confirmed';

        $rules['shop_name' ]    = 'required|max:255';

        $rules['address']       = 'required';



        return $rules;

    }



    public function messages()

    {

        return [

            'name.required'         => translate('Name is required'),

            'name.string'           => translate('Name should be string type'),

            'name.max'              => translate('Max 255 characters'),

            'email.required'        => translate('Email is required'),

            'email.email'           => translate('Please type a valid email'),

            'email.unique'          => translate('Email should be unique'),

            'email.max'             => translate('Max 255 characters'),

            'password.required'     => translate('Password is required'),

            'password.string'       => translate('Password should be string type'),

            'password.min'          => translate('Min 6 characters'),

            'password.confirmed'    => translate('Confirm password do not matched'),

            'shop_name.required'    => translate('Shop name is required'),

            'shop_name.max'         => translate('Max 255 characters'),

            'address.required'      => translate('Address is required'),

        ];

    }



    public function failedValidation(Validator $validator)

    {

        if ($this->expectsJson()) {

            throw new HttpResponseException(response()->json([

                'message' => $validator->errors()->all(),

                'result' => false

            ], 422));

        } else {

            throw (new ValidationException($validator))

                    ->errorBag($this->errorBag)

                    ->redirectTo($this->getRedirectUrl());

        }

    }

}