Logo nova (quer dizer... primeira logo) e postagem nova que e bom nada! Hehe!Em breve trago novidades, estou estudando a API do Google Maps, que e fantastica e da pra fazer um monte de coisa legal rapidinho. Assim que tiver algo realmente legal, posto aqui!Flws! Estou numa empreitada testando o Helper Ajax nativo do CakePHP e ontem, inclusive, postei um exemplo legal de como usar o metodo observeField() para fazer um Select Combo de Estado e Cidade. Lembrando que o CakePHP traz esse helper que foi criado usando as bibliotecas Prototype e Scriptaculos. Dai eu pensei: - Poxa vida, bem que alguem poderia criar um Helper jQuery ou algo do tipo para o Cake... E nao e que esse alguem existe, e se chama: Damian Jozwiak. Ele disponibilizou a sua criacao no Bakery com um link pro site onde tem os exemplos, download do codigo e ate um teste de benchmark com outras bibliotecas (YUI, Dojo, etc).Baixei o Helper Ajax do Damian e fui fazer uns testes, vejam:Usei uma copia da aplicacao do Select Combo de Estado e Cidade, para isto basta copiar e colar a pasta app, renomeando-a, no meu caso chamei de "appjquery". A aplicacao anterior eu acesso assim: "http://localhost/cake137/" e a nova eu acesso assim: "http://localhost/cake137/appjquery".Feito isto eu extrai os arquivos: ajax.php e javascript.php para o diretorio de helpers (/appjquery/views/helpers/).Extrai tambem o jquery-1.4.2.min.js para o diretorio /appjquery/webroot/js/.Na minha view appjquery/views/users/add.ctp eu troquei o Prototype e o Scriptaculos pelo jQuery =P:<?php //$javascript->link('https://ajax.googleapis.com/ajax/libs/prototype/1.7.0.0/prototype.js', false); //$javascript->link('https://ajax.googleapis.com/ajax/libs/scriptaculous/1.8.3/scriptaculous.js', false); $javascript->link('jquery-1.4.2.min', false);...Pronto! Agora quem esta fazendo o AJAX funcionar e o jQuery... e nao precisei mudar nada as chamadas das funcoes.Nao conheco muito o Prototype, muito menos o Scriptaculos entao pra mim foi muito vantajoso esse helper. Sem contar na facilidade de integracao com o jQuery UI.Bom, vi que esse helper permite muita coisa que ainda nao testei. Vou comecar a usa-lo a partir de agora e sempre que tiver novidades posto aqui!Vejam as imagens dele funcionando! Ah, ja ia me esquecendo... fiz um teste rapido com poucos registros e o helper nativo ainda ganha um pouco em desempenho =/... mas o jQuery lancou esta semana a sua versao 1.5 e os testes mostram uma melhora execelente principalmente para o uso do AJAX e para os navegadores Chrome e Firefox 4. Eu ja havia mostrado uma implementacao de autocomplete no Cake usando o jQuery UI (http://cakenaveia.blogspot.com/2010/06/jqueryui-autocomplete-no-cakephp-agora.html), mas nunca havia usado o autocomplete nativo dele que utiliza o Prototype e o Scriptaculos. Ate porque nao tenho muita familiaridade com essas outras bibliotecas e gosto muito dos temas prontos do jQuery UI, o que dispensa dores de cabeca com o CSS.Bom vamos nessa entao...Antes de comecarmos veja nos posts anteriores como criar uma tabela de "cidades" (no meu caso, com os campos: id, estado_id, cidade) e crie para ela o model, views e controller usando o bake.1o) Seguindo o book (http://book.cakephp.org/view/1370/autoComplete) crie a action autoComplete() no controller ...app/controllers/cidades_controller.php. function autoComplete(){ $this->layout = 'ajax'; $cidades = $this->Cidade->find('all', array( 'conditions' => array('Cidade.cidade LIKE' => $this->data['Cidade']['cidade'] . '%'), 'order' => array('Cidade.cidade'), 'fields' => array('cidade') ) ); $this->set('cidades', $cidades); }Veja que