ai que tah tentei fazer pela documentação mas não consegui...e tentei procurar exemplos e não tive sucesso, ou o mais provavel, não soube procurar...

mas valeu pela ajuda...continuarei pesquisando aqui

Em 14/01/2014 11:01, Douglas J.A.M escreveu:
voce quem sabe, noc aso voce chama a função por callback como diz na documentação, é so pegar e ler, tem que procurar mais, aí voce acha o que deseja na documentação está bem completa e intuitiva

http://kohanaframework.org/3.0/guide/kohana/security/validation#adding-rules


Em 14 de janeiro de 2014 10:59, DS interativa | PHP Grupos <[email protected] <mailto:[email protected]>> escreveu:

    entendi, mas na aplicação que tenho aqui, preciso usar no formato
    atual para não sair do padrao, teria que ter uma rule que usa a
    função do ORM sem extender o ORM diretamente...



    Em 14/01/2014 10:55, Douglas J.A.M escreveu:
    No meu caso eu fiz uma extensão cascuda, eu curto minha
    implementação e utilizo ela a anos, atenção para as reticencias
    que significam trechos de código ocultos, voce pode adicionar
    qualquer parada aí, ou fazer do jeito padrão extendendo o Valid.

    *classe application/classes/ORM.php*

    ...
     public function check(Validation $extra_validation = NULL) {
        return parent::check($extra_validation) &&
    parent::check($this->valida());
    }

    public function valida() {
        return null;
    }
    ...


    *classe do model especifico*

    ...

    public function valida() {

        $validation = $this->validation();

    if ($validation['tipopessoa'] == 'FÍSICA') {

            if (Helper_STRING::isNull($validation['cpf']) ||
    Helper_STRING::isNull($validation['rg']) ||
    Helper_STRING::isNull($validation['rgorgao']) ||
    Helper_STRING::isNull($validation['rgexpedicao']) ||
    Helper_STRING::isNull($validation['cnh']) ||
    Helper_STRING::isNull($validation['cnhcategoria'])) {
    $validation->error('tipopessoa', 'fisica_not_empty');
            } else if (!Valid::cpf($validation['cpf'])) {
                $validation->error('cpf', 'cpf');
            }
    ...

        if ($validation->errors())
            throw new
    ORM_Validation_Exception($this->errors_filename(), $validation);

        return $validation;

    ...

    *classe application/classes/valid.php*


        public static function cpf($cpf) {

            $cpf = str_pad(preg_replace('/[^0-9]/', '', $cpf), 11,
    '0', STR_PAD_LEFT);
            // Verifica se nenhuma das sequências abaixo foi
    digitada, caso seja, retorna falso
            if (strlen($cpf) != 11 || $cpf == '00000000000' || $cpf
    == '11111111111' || $cpf == '22222222222' || $cpf ==
    '33333333333' || $cpf == '44444444444' || $cpf == '55555555555'
    || $cpf == '66666666666' || $cpf == '77777777777' || $cpf ==
    '88888888888' || $cpf == '99999999999') {
                return FALSE;
            } else { // Calcula os números para verificar se o CPF é
    verdadeiro
                for ($t = 9; $t < 11; $t++) {
                    for ($d = 0, $c = 0; $c < $t; $c++) {
                        $d += $cpf{$c} * (($t + 1) - $c);
                    }
                    $d = ((10 * $d) % 11) % 10;
                    if ($cpf{$c} != $d) {
                        return FALSE;
                    }
                }
                return TRUE;
            }
        }




    Em 14 de janeiro de 2014 10:49, DS interativa | PHP Grupos
    <[email protected] <mailto:[email protected]>>
    escreveu:

        pessoal, como eu poderia fazer para colocar uma validação de
        cpf dentro do model ORM de clientes

        queria saber se ja tem na base e se é valido !!

        no caso de valido, tenho um arquivo a parte chamado
        funcoes.php com uma classe aux e um metodo estatico para validar


        alguem ai poderia me ajudar ??
        estou usando o ko3.3

        valeu

-- Você está recebendo esta mensagem porque se inscreveu no
        grupo "Kohana Php" dos Grupos do Google.
        Para cancelar a inscrição neste grupo e parar de receber seus
        e-mails, envie um e-mail para
        [email protected]
        <mailto:kohana-php%[email protected]>.
        Para postar neste grupo, envie um e-mail para
        [email protected] <mailto:[email protected]>.
        Visite este grupo em http://groups.google.com/group/kohana-php.
        Para obter mais opções, acesse
        https://groups.google.com/groups/opt_out.


-- Você está recebendo esta mensagem porque se inscreveu no grupo
    "Kohana Php" dos Grupos do Google.
    Para cancelar a inscrição neste grupo e parar de receber seus
    e-mails, envie um e-mail para
    [email protected]
    <mailto:[email protected]>.
    Para postar neste grupo, envie um e-mail para
    [email protected] <mailto:[email protected]>.
    Visite este grupo em http://groups.google.com/group/kohana-php.
    Para obter mais opções, acesse
    https://groups.google.com/groups/opt_out.

-- Você está recebendo esta mensagem porque se inscreveu no grupo
    "Kohana Php" dos Grupos do Google.
    Para cancelar a inscrição neste grupo e parar de receber seus
    e-mails, envie um e-mail para
    [email protected]
    <mailto:kohana-php%[email protected]>.
    Para postar neste grupo, envie um e-mail para
    [email protected] <mailto:[email protected]>.
    Visite este grupo em http://groups.google.com/group/kohana-php.
    Para obter mais opções, acesse
    https://groups.google.com/groups/opt_out.


--
Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana Php" dos Grupos do Google. Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para [email protected].
Para postar neste grupo, envie um e-mail para [email protected].
Visite este grupo em http://groups.google.com/group/kohana-php.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.

--
Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana Php" dos 
Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um 
e-mail para [email protected].
Para postar neste grupo, envie um e-mail para [email protected].
Visite este grupo em http://groups.google.com/group/kohana-php.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.

Responder a