a dúvida é como/onde exibir as mensagens amigáveis para o usuário, se é
deixando o exception passar, se é catching ele, e onde tratar isso

2011/12/28 Vitor A. (Dalai) <[email protected]>

> Também tenho essa dúvida.
> Não sei qual seria a melhor maneira, eu penso em algo assim:
>
> *Arquivo
> classes/exception/login.php*
> class Exception_Login extends Kohana_Exception
> {
>     const USUARIO_DESATIVADO     = 100001;
>     const USUARIO_NAOCONFIRMADO  = 100002;
>
>     /**
>      *
>      * @param type $debug_message mensagem pro desenvolvedor, nao em
> production
>      * @param type $code codigo tipo Exception_Login::USUARIO_DESATIVADO
>      * @param array $variables tipo array(':usuario'=>'[email protected]
> ')
>      */
>     public function __construct($debug_message = null, $code = 0, array
> $variables = null )
>     {
>         $message_file  = strtolower(substr(__CLASS__, 0,
> strpos(__CLASS__,'_'))
>                         . DIRECTORY_SEPARATOR
>                         . substr(__CLASS__, strpos(__CLASS__,'_')));
>                         // retorna exception/login
>         $message_index = $code;
>
>         $message = Kohana::message($message_file, "{$message_index}");
>         parent::__construct($message, $variables, $code);
>     }
> }
>
> *Arquivo
> messages/exception/login.php*
> <?php defined('SYSPATH') or die('No direct script access.');
> return array(
>     Exception_Login::USUARIO_DESATIVADO     => 'O usuário :usuario está
> desativado',
>     Exception_Login::USUARIO_NAOCONFIRMADO  => 'O usuário :usuario não foi
> confirmado',
>
> );
>
> E daí, na hora do erro, seria
> throw new Exception_Login("Erro ao logar no form1 etc etc",
> Exception_Login::USUARIO_DESATIVADO, array(':usuario'=>$usuario_email);
>
> etc.
>
> O Kohana_Exception se responsabiliza por traduzir caso tenha a tradução da
> mensagem no diretório de i18n.
> Mas eu só pensei isso, ainda não pus em uso.
>
> O que acham?
>
> Abraços,
>
>  --
> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana
> Php" dos Grupos do Google.
> Para ver esta discussão na web, acesse
> https://groups.google.com/d/msg/kohana-php/-/h-z3a9FvmJ4J.
>
> Para postar neste grupo, envie um e-mail para [email protected].
> Para cancelar a inscrição nesse grupo, envie um e-mail para
> [email protected].
> Para obter mais opções, visite esse grupo em
> http://groups.google.com/group/kohana-php?hl=pt-BR.
>



-- 
Vitor de Araujo Simões (Dalai/Snag)
Estudante de Ciências da Computação - USP

"Computation is the art of building solutions
- at the cost of creating more problems"


http://www.varaujo.com.br

-- 
Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana Php" dos 
Grupos do Google.
Para postar neste grupo, envie um e-mail para [email protected].
Para cancelar a inscrição nesse grupo, envie um e-mail para 
[email protected].
Para obter mais opções, visite esse grupo em 
http://groups.google.com/group/kohana-php?hl=pt-BR.

Responder a