<?php


namespace App\Validations;


class UsuarioValidation
{
    static public function changePassword () : array {
        return [
            "senha_atual" => [
                'label' => 'Senha atual',
                'rules' => 'trim|required',
            ],
            "nova_senha" => [
                'label' => 'Nova senha',
                'rules' => 'trim|required|required|min_length[6]',
            ],
        ];
    }

    static public function update() : array
    {
        return [
            "nome" => [
                'label' => 'Nome',
                'rules' => 'trim|only_letters_and_spaces',
                'errors' => [
                    'only_letters_and_spaces' => 'Digite apenas caracteres alfanuméricos.'
                ]
            ],
            "rg" => [
                'label' => 'RG',
                'rules' => 'trim',
                'errors' => [
                    'validate_rg'=> 'Informe um RG válido'
                ]
            ],
            "data_nascimento" => [
                'label' => 'Data de nascimento',
                'rules' => 'validate_date|validate_birthdate',
                'errors' => [
                    'validate_date' => 'Informe uma data válida.',
                    'validate_birthdate' => "Sua idade deve estar entre 18 e 70 anos."
                ]
            ],
            "cpf" => [
                'label' => 'CPF',
                'rules' => 'validate_cpf',
                'errors' => ['validate_cpf' => 'Informe um CPF válido.',]
            ],
            "genero" => [
                'label' => 'Gênero',
                'rules' => 'in_list[M,F,O]',
                'errors' => ['in_list' => 'Informe um sexo válido.',]
            ],
            "telefone_1" => [
                'label' => 'Telefone 1',
                'rules' => 'trim|validate_phone',
                'errors' => ['validate_phone' => 'Informe um telefone válido.',]
            ],
            "telefone_2" => [
                'label' => 'Telefone 2',
                'rules' => 'trim|validate_phonelandline',
                'errors' => ['validate_phone' => 'Informe um telefone válido.']
            ],
            "cep" => [
                'label' => 'CEP',
                'rules' => 'validate_cep',
                'errors' => ['validate_cep' => 'Digite um CEP válido.']
            ],
            "numero" => [
                'label' => 'Número',
                'rules' => 'trim'
            ],
            "complemento" => [
                'label' => 'Complemento',
                'rules' => 'trim',
            ],
            "referencias" => [
                'label' => 'Referências',
                'rules' => 'trim',
            ]
        ];
    }

    static public function forgetedPassword () : array {
        return [
            "email" => [
                'label' => 'Email',
                'rules' => 'trim|required|valid_email|is_not_unique[usuario.email]',
                'errors' => [
                    'is_not_unique' => 'O email não foi encontrado na nossa base de dados.'
                ]
            ],
        ];
    }
}