CAKEPHP COM
        SOTAQUE BRASILEIRO




PHP SC Conf 2010   Juan Basso (@jrbasso)
Quem sou eu?
   Formado em Ciências da Computação – UDESC
   Analista de Sistema da Dígitro – Fpolis/SC
   Desenvolvedor do núcleo do CakePHP
   Desenvolvedor de vários plugins para o CakePHP:
     MeioUpload

     SuperFind

     Migrations

     Localized

     Datasources
CakePHP
CakePHP
   Framework PHP mais popular
   Similar ao Zend, mas não é fracamente acoplado
   Também utiliza MVC, reuso, etc.
   Versão estável ainda suporta PHP 4
   Nova versão só PHP 5.2 em diante
   Possui facilidades no núcleo, particularidades em
    plugins
   Plugin é um grande ponto forte
CakePtbr
Sobre o CakePtbr
   Plugin para CakePHP 1.2 e 1.3
   Gratuito (licença MIT)
   Site: http://github.com/jrbasso/cake_ptbr
   Demo: http://github.com/jrbasso/cake_ptbr_demo
   Dúvidas: http://groups.google.com/group/cakephp-pt
   Objetivo: facilitar o uso de recursos usados no Brasil no
    CakePHP
   Todas as funcionalidades com testes e documentação
Funcionalidades
Tradução das Mensagens do Core
   Traduzir as frases geradas pelo core
   Páginas de erro ficam em português
   Console fica em português
   Não está completamente traduzido
   Não afeta nenhuma funcionalidade do core
Bake em Português
   Ao gerar o bake os arquivos saem em português
   Tenta colocar acento nas palavras
     Exemplo:  se gerar um controller chamado
      Comunicacoes ele irá gerar as frases usando a palavra
      Comunicação ou Comunicações.
     “Comunicação inválido.” => Falha para palavras
      femininas
   Basta ter o plugin na aplicação que isso funcionará
    automaticamente
Ajuste de Data
   Behavior AjusteData
     Converte data no formato dd/mm/aaaa em aaaa-mm-dd
     Útil para quando você preenche a data na view no formato
      brasileiro e deseja salvar no banco
     Não faz o inverso! Ou seja, não altera o valor vindo do
      banco
     Configuração simples:
         var $actsAs = array('CakePtbr.AjusteData');
         var $actsAs = array('CakePtbr.AjusteData' => 'campo_data');
         var $actsAs = array('CakePtbr.AjusteData' => array('publicado',
          'informado'));
Ajuste de Data (continuação)
   Helper Formatacao
     Possui
           métodos para formatação
     Métodos para manipulação de datas:
       Formatacao::data($data)
             Formata uma data timestamp em dd/mm/aaaa
       Formatacao::dataHora($data,            $segundos)
             Idem anterior, mas com horário
       Formatacao::dataCompleta($dataHora)
             Descreve uma data
             Exemplo: Sábado, 28 de agosto de 2010, 13:00:00
Ajuste de Números
   Behavior AjusteFloat
     Similar ao AjusteData, mas para floats
     Exemplo: converte de 1.200,10 para 1200.10
   Helper Formatacao
       Formatacao::precisao($numero, $casasDecimais = 3)
           Exibe um valor numérico. Exemplo: de 1200.10 para 1.200,10
       Formatacao::porcentagem($numero, $casasDecimais = 2)
           Idem anterior com % no final. Exemplo: 10,25%
       Formatacao::moeda($valor, $opcoes = array())
           Formata em reais. Exemplo: R$ 10.000,00
       Formatacao::moedaPorExtenso($numero)
           Formata o valor em reais. Exemplo: dez mil reais
Estados Brasileiros
   Model EstadoBrasileiro
     Listados estados (sigla e nome)
     Nome do estado através da sigla

     Sigla através do nome

     Estados por região (sul, sudeste, ...)

   Helper Estados
     Montauma select com os estados
     Opção de mostrar apenas as siglas
Integração com os Correios
   Behavior Correios
   Possibilidade de calcular frete via webservice
     Calculo de Sedex, Sedex a cobrar, Sedex 10, E-Sedex,
      Encomenda normal, PAC
     Informa valores de mão própria, tarifa do valor
      declarado, frete e total
     Informa se é capital ou interior

   Verificar endereço através do CEP
     Mostra    o logradouro, bairro, cidade e UF
Usar tabelas em português
   Alteração das regras de inflexão (Inflection)
     Inglês:
            tabela compradores, model Compradore
     Português: tabela compradores, model Comprador
Validações
   Behavior Validacao (disponível apenas na versão
    1.2)
     Validação   de CEP, CPF, CNPJ, CPF/CNPJ e telefone
   No CakePHP 1.3 usar o plugin Localized
     Métodos:   postal, cpf, cnpj, ssn e phone
Roadmap
Roadmap
   Geração de boletos
   Integração com PagSeguro
   Integração com NFe
Dúvidas / Idéias ?
Contato
   Twitter: @jrbasso
   E-mail: jrbasso@gmail.com
   GitHub: http://github.com/jrbasso
   Ohloh: http://ohloh.net/accounts/jrbasso

CakePHP com sotaque brasileiro

  • 1.
    CAKEPHP COM SOTAQUE BRASILEIRO PHP SC Conf 2010 Juan Basso (@jrbasso)
  • 2.
    Quem sou eu?  Formado em Ciências da Computação – UDESC  Analista de Sistema da Dígitro – Fpolis/SC  Desenvolvedor do núcleo do CakePHP  Desenvolvedor de vários plugins para o CakePHP:  MeioUpload  SuperFind  Migrations  Localized  Datasources
  • 3.
  • 4.
    CakePHP  Framework PHP mais popular  Similar ao Zend, mas não é fracamente acoplado  Também utiliza MVC, reuso, etc.  Versão estável ainda suporta PHP 4  Nova versão só PHP 5.2 em diante  Possui facilidades no núcleo, particularidades em plugins  Plugin é um grande ponto forte
  • 5.
  • 6.
    Sobre o CakePtbr  Plugin para CakePHP 1.2 e 1.3  Gratuito (licença MIT)  Site: http://github.com/jrbasso/cake_ptbr  Demo: http://github.com/jrbasso/cake_ptbr_demo  Dúvidas: http://groups.google.com/group/cakephp-pt  Objetivo: facilitar o uso de recursos usados no Brasil no CakePHP  Todas as funcionalidades com testes e documentação
  • 7.
  • 8.
    Tradução das Mensagensdo Core  Traduzir as frases geradas pelo core  Páginas de erro ficam em português  Console fica em português  Não está completamente traduzido  Não afeta nenhuma funcionalidade do core
  • 9.
    Bake em Português  Ao gerar o bake os arquivos saem em português  Tenta colocar acento nas palavras  Exemplo: se gerar um controller chamado Comunicacoes ele irá gerar as frases usando a palavra Comunicação ou Comunicações.  “Comunicação inválido.” => Falha para palavras femininas  Basta ter o plugin na aplicação que isso funcionará automaticamente
  • 10.
    Ajuste de Data  Behavior AjusteData  Converte data no formato dd/mm/aaaa em aaaa-mm-dd  Útil para quando você preenche a data na view no formato brasileiro e deseja salvar no banco  Não faz o inverso! Ou seja, não altera o valor vindo do banco  Configuração simples:  var $actsAs = array('CakePtbr.AjusteData');  var $actsAs = array('CakePtbr.AjusteData' => 'campo_data');  var $actsAs = array('CakePtbr.AjusteData' => array('publicado', 'informado'));
  • 11.
    Ajuste de Data(continuação)  Helper Formatacao  Possui métodos para formatação  Métodos para manipulação de datas:  Formatacao::data($data)  Formata uma data timestamp em dd/mm/aaaa  Formatacao::dataHora($data, $segundos)  Idem anterior, mas com horário  Formatacao::dataCompleta($dataHora)  Descreve uma data  Exemplo: Sábado, 28 de agosto de 2010, 13:00:00
  • 12.
    Ajuste de Números  Behavior AjusteFloat  Similar ao AjusteData, mas para floats  Exemplo: converte de 1.200,10 para 1200.10  Helper Formatacao  Formatacao::precisao($numero, $casasDecimais = 3)  Exibe um valor numérico. Exemplo: de 1200.10 para 1.200,10  Formatacao::porcentagem($numero, $casasDecimais = 2)  Idem anterior com % no final. Exemplo: 10,25%  Formatacao::moeda($valor, $opcoes = array())  Formata em reais. Exemplo: R$ 10.000,00  Formatacao::moedaPorExtenso($numero)  Formata o valor em reais. Exemplo: dez mil reais
  • 13.
    Estados Brasileiros  Model EstadoBrasileiro  Listados estados (sigla e nome)  Nome do estado através da sigla  Sigla através do nome  Estados por região (sul, sudeste, ...)  Helper Estados  Montauma select com os estados  Opção de mostrar apenas as siglas
  • 14.
    Integração com osCorreios  Behavior Correios  Possibilidade de calcular frete via webservice  Calculo de Sedex, Sedex a cobrar, Sedex 10, E-Sedex, Encomenda normal, PAC  Informa valores de mão própria, tarifa do valor declarado, frete e total  Informa se é capital ou interior  Verificar endereço através do CEP  Mostra o logradouro, bairro, cidade e UF
  • 15.
    Usar tabelas emportuguês  Alteração das regras de inflexão (Inflection)  Inglês: tabela compradores, model Compradore  Português: tabela compradores, model Comprador
  • 16.
    Validações  Behavior Validacao (disponível apenas na versão 1.2)  Validação de CEP, CPF, CNPJ, CPF/CNPJ e telefone  No CakePHP 1.3 usar o plugin Localized  Métodos: postal, cpf, cnpj, ssn e phone
  • 17.
  • 18.
    Roadmap  Geração de boletos  Integração com PagSeguro  Integração com NFe
  • 19.
  • 20.
    Contato  Twitter: @jrbasso  E-mail: jrbasso@gmail.com  GitHub: http://github.com/jrbasso  Ohloh: http://ohloh.net/accounts/jrbasso