<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7498518300625205634</id><updated>2012-02-16T05:48:33.935-08:00</updated><category term='zend apache rewrite alias'/><category term='subversion svn deploy permissão hook'/><category term='zend framework log php'/><category term='oscommerce loja zion informática eletrônicos'/><category term='jquery validate javascript'/><category term='amsn ubuntu plus skin live 2009'/><category term='voip uol terra cancelamento tele marketing'/><title type='text'>Nerd da gambi</title><subtitle type='html'>Aqui vou colocar tudo que tive experiência, para ajudar quem possa estar fazendo a mesma coisa no momento.

Vai abordar tudo na parte de informática, hardware e software. Tem de tudo!</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://nerddagambi.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7498518300625205634/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://nerddagambi.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Rodrigo Manga</name><uri>http://www.blogger.com/profile/10724630269754635254</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_oB3zMksrogg/SM56rOze-wI/AAAAAAAAFog/1s7AtNRupbA/S220/mortal.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>7</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7498518300625205634.post-4918689308156979168</id><published>2009-04-22T19:13:00.000-07:00</published><updated>2009-04-22T20:06:23.781-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='oscommerce loja zion informática eletrônicos'/><title type='text'>Minha Loja</title><content type='html'>http://loja.zionlanhouse.com.br&lt;br /&gt;&lt;br /&gt;Esse é o endereço da minha loja.&lt;br /&gt;&lt;br /&gt;Ela foi feita com OScommerce, que é uma loja open source.&lt;br /&gt;&lt;br /&gt;Peguei ela no phpmania.org&lt;br /&gt;&lt;br /&gt;Fiz várias alterações.&lt;br /&gt;&lt;br /&gt;Inclusive scripts para atualizar a tabela de sedex, cadastrar automaticamente os produtos no mercado livre e no toda oferta.&lt;br /&gt;&lt;br /&gt;Se alguém precisar de alguma ajuda, e só postar.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7498518300625205634-4918689308156979168?l=nerddagambi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nerddagambi.blogspot.com/feeds/4918689308156979168/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://nerddagambi.blogspot.com/2009/04/minha-loja.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7498518300625205634/posts/default/4918689308156979168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7498518300625205634/posts/default/4918689308156979168'/><link rel='alternate' type='text/html' href='http://nerddagambi.blogspot.com/2009/04/minha-loja.html' title='Minha Loja'/><author><name>Rodrigo Manga</name><uri>http://www.blogger.com/profile/10724630269754635254</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_oB3zMksrogg/SM56rOze-wI/AAAAAAAAFog/1s7AtNRupbA/S220/mortal.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7498518300625205634.post-4586074748386079101</id><published>2009-04-06T12:18:00.000-07:00</published><updated>2009-04-06T12:33:06.594-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='voip uol terra cancelamento tele marketing'/><title type='text'>Terra Voip - alguns exclarecimentos</title><content type='html'>Estou na incessante procura por um bom provedor VOIP.&lt;br /&gt;&lt;br /&gt;Fui no UOL, não tem suporte para configuração de adaptadores ata, não consegui configurar com as pobres informações que está no site, cancelei, e obtive o valor que eu havia pago devolta, sem transtornos.&lt;br /&gt;&lt;br /&gt;Fui até o Terra (no sábado dia 3 de abril de 2009), procurei saber se tinha suporte para adaptadores ata, eles disseram que sim, configurei tudo certinho, e foi de primeira.&lt;br /&gt;&lt;br /&gt;Fui lá fazer o teste, ligação perfeita, tudo nos conformes.&lt;br /&gt;&lt;br /&gt;Mas como eu vo oferecer voip aos clientes da minha lan house, eu preciso que o extrato da ligação seja em tempo real.&lt;br /&gt;&lt;br /&gt;Sé que a ligação de teste demorou 1 dia para aparecer no extrato.&lt;br /&gt;&lt;br /&gt;Liguei no suporte (na segunda dia 6 de abril de 2009), perguntei se havia algum jeito deles acelerarem o processo de extrato, e não houve jeito. Tive de cancelar.&lt;br /&gt;&lt;br /&gt;Me botaram na linha, depois de 10 minutos de espera, uma atendente de tele-marketing, que tentava o tempo todo me persuadir de que eu estava fazendo a coisa errada. Até que ela concordou comigo, e resolveu cancelar. &lt;br /&gt;&lt;br /&gt;Ai, claro, pedi o meu dinheiro de volta, e a resposta foi que eles não devolvem o dinheiro......&lt;br /&gt;&lt;br /&gt;É complicado você fazer uma assinatura, e você não ter ficado satisfeito com o serviço, cancelar apenas 2 dias depois (sendo q foi por causa do final de semana), e não ter seu rico dinheirinho q vc suou pra ganhar devolta.&lt;br /&gt;&lt;br /&gt;Deixei pra lá, pois eram apenas 15 reais, mas avisei que ia deixar os possíveis clientes deles sabendo do que houve comigo, e aqui estou avisando. Se vocês cancelarem, não vão ver seu dim dim devolta, cuidado!!!&lt;br /&gt;&lt;br /&gt;ps.: Fui atendido pela Márcia, o protocolo de cancelamento é 79656793&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7498518300625205634-4586074748386079101?l=nerddagambi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nerddagambi.blogspot.com/feeds/4586074748386079101/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://nerddagambi.blogspot.com/2009/04/terra-voip-alguns-exclarecimentos.html#comment-form' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7498518300625205634/posts/default/4586074748386079101'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7498518300625205634/posts/default/4586074748386079101'/><link rel='alternate' type='text/html' href='http://nerddagambi.blogspot.com/2009/04/terra-voip-alguns-exclarecimentos.html' title='Terra Voip - alguns exclarecimentos'/><author><name>Rodrigo Manga</name><uri>http://www.blogger.com/profile/10724630269754635254</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_oB3zMksrogg/SM56rOze-wI/AAAAAAAAFog/1s7AtNRupbA/S220/mortal.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7498518300625205634.post-8804221670624141084</id><published>2009-02-10T10:37:00.000-08:00</published><updated>2009-02-10T10:54:13.983-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='subversion svn deploy permissão hook'/><title type='text'>Fazer o subversion trabalhar por você</title><content type='html'>Quando você está trabalhando em um repositório Subversion em um projeto para a web, a melhor coisa que tem é quando alguem faz um commit a alteração aparecer no webserver do mesmo servidor.&lt;br /&gt;&lt;br /&gt;O subversion possui os scripts HOOK, que são executados quando alguma ação é feita no subversion.&lt;br /&gt;&lt;br /&gt;O que eu usei foi o script &lt;span style="font-style: italic; font-weight: bold;"&gt;post-commit&lt;/span&gt;. Ele é executado após um commit.&lt;br /&gt;&lt;br /&gt;O padrão é que os scripts estejam com permissão de execução no diretório &lt;span style="font-weight: bold; font-style: italic;"&gt;hook&lt;/span&gt; dentro do repositório.&lt;br /&gt;&lt;br /&gt;Só que os problemas de permissões são inúmeros!&lt;br /&gt;&lt;br /&gt;A principal dica é: Usando webdav para o subversion, dê um checkout (svn checkout http://localhost /var/www) e depois altere o dono para www-data recursivamente (chown www-data:www-data -R /var/www)&lt;br /&gt;&lt;br /&gt;Abaixo está o script post-commit, altere-o para suas necessidades:&lt;br /&gt;&lt;br /&gt;&lt;pre class="prettyprint"&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;/bin/sleep 3&lt;br /&gt;/usr/bin/svn update /var/www/ --non-interactive --no-auth-cache --username XXXX --password XXXXX&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7498518300625205634-8804221670624141084?l=nerddagambi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nerddagambi.blogspot.com/feeds/8804221670624141084/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://nerddagambi.blogspot.com/2009/02/fazer-o-subversion-trabalhar-por-voce.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7498518300625205634/posts/default/8804221670624141084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7498518300625205634/posts/default/8804221670624141084'/><link rel='alternate' type='text/html' href='http://nerddagambi.blogspot.com/2009/02/fazer-o-subversion-trabalhar-por-voce.html' title='Fazer o subversion trabalhar por você'/><author><name>Rodrigo Manga</name><uri>http://www.blogger.com/profile/10724630269754635254</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_oB3zMksrogg/SM56rOze-wI/AAAAAAAAFog/1s7AtNRupbA/S220/mortal.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7498518300625205634.post-2848893949525644262</id><published>2009-02-08T13:02:00.000-08:00</published><updated>2009-02-08T13:34:23.353-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='amsn ubuntu plus skin live 2009'/><title type='text'>Configurando o aMSN para acesso público</title><content type='html'>O aMSN é um cliente para a rede MSN que mais se assemelha ao cliente da microsoft no windows. O problema é que ele vem bem feio na sua configuração "default".&lt;br /&gt;&lt;br /&gt;Vamos usar como base o Ubuntu Intrepid, e instalar o aMSN 0.98 com o skin do Windows Live 2009 e com suporte ao MSN Plus!&lt;br /&gt;&lt;br /&gt;Baixe o pacote deb do aMSN no link: &lt;a href="http://www.getdeb.net/download/3001/0"&gt;http://www.getdeb.net/download/3001/0&lt;/a&gt; e depois instale normalmente usando o gerenciador de pacotes do ubuntu.&lt;br /&gt;&lt;br /&gt;Agora baixe o Colored Nicks, que dá suporte ao MSN Plus! no link: &lt;a href="http://europa.solit.us/archives/downloadstatic/6325657399"&gt;http://europa.solit.us/archives/downloadstatic/6325657399&lt;/a&gt;, é só descompactar na pasta &lt;span style="font-weight: bold; font-style: italic;"&gt;~/.amsn/plugins&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Agora baixe o skin do Windows Live Messenger 2009 no link: &lt;a href="http://amsn.fr.nf/communaute/download/file.php?id=21&amp;amp;sid=ce88c102d6b53fc952f74772b1ad08c5"&gt;http://amsn.fr.nf/communaute/download/file.php?id=21&amp;amp;sid=ce88c102d6b53fc952f74772b1ad08c5&lt;/a&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt; , &lt;/span&gt;&lt;/span&gt;depois descompacte na pasta &lt;span style="font-weight: bold; font-style: italic;"&gt;~/.amsn/skins&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Pra tudo funcionar, simplesmente escolha o skin e carregue o plugin dentro do aMSN.&lt;br /&gt;&lt;br /&gt;O unico problema do acesso público, é que os plugins tem que serem carregados toda vez que uma pessoa entra no aMSN.&lt;br /&gt;&lt;br /&gt;Usando o perfil que tinha salvo, percebi que tinha um arquivo chamado plugins.xml que guardava as configurações de plugins. O problema é que quando vc coloca na pasta principal do aMSN, ele simplesmente era apagado...&lt;br /&gt;&lt;br /&gt;Ai descobri um comando novo no linux, o &lt;span style="font-weight: bold; font-style: italic;"&gt;chattr&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-style: italic;"&gt;.&lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;Com ele eu consigo marcar um arquivo como imutável, assim ninguem consegue alterar o arquivo (a não ser o root)&lt;span style="font-weight: bold;"&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Aqui está um exemplo do arquivo plugins.xml&lt;br /&gt;&lt;br /&gt;&lt;pre class="prettyprint"&gt;&lt;br /&gt;&amp;lt;config&amp;gt;&lt;br /&gt;       &amp;lt;plugin&amp;gt;&lt;br /&gt;               &amp;lt;name&amp;gt;Nudge&amp;lt;/name&amp;gt;&lt;br /&gt;               &amp;lt;loaded&amp;gt;true&amp;lt;/loaded&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;notsentinwin&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;notrecdinwin&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;soundnotsend&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;soundnotrec&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;shake&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;0&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;shakes&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;10&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;addblockbutton&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;0&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;notify&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;addclmenuitem&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;0&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;addbutton&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;shaketoo&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;0&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;limit&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;delay&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;60&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;       &amp;lt;/plugin&amp;gt;&lt;br /&gt;       &amp;lt;plugin&amp;gt;&lt;br /&gt;               &amp;lt;name&amp;gt;Winks&amp;lt;/name&amp;gt;&lt;br /&gt;               &amp;lt;loaded&amp;gt;true&amp;lt;/loaded&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;use_extrac32&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;0&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;flashplayerargs&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;1&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;#&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;play_embed&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;0&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;#&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;show_add_wink&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;flashplayer&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;#use_queque_in&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;#use_queque_out&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;play_inmediatly&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;cabextractor&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;cabextract&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;close_on_leave&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;notify_in_one_line&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;0&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;       &amp;lt;/plugin&amp;gt;&lt;br /&gt;       &amp;lt;plugin&amp;gt;&lt;br /&gt;               &amp;lt;name&amp;gt;Cam Shooter&amp;lt;/name&amp;gt;&lt;br /&gt;               &amp;lt;loaded&amp;gt;true&amp;lt;/loaded&amp;gt;&lt;br /&gt;       &amp;lt;/plugin&amp;gt;&lt;br /&gt;       &amp;lt;plugin&amp;gt;&lt;br /&gt;               &amp;lt;name&amp;gt;remind&amp;lt;/name&amp;gt;&lt;br /&gt;               &amp;lt;loaded&amp;gt;true&amp;lt;/loaded&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;beginend&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;nbline&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;10&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;checknote&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;filetransfert&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;daysnumber&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;7&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;when&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;       &amp;lt;/plugin&amp;gt;&lt;br /&gt;       &amp;lt;plugin&amp;gt;&lt;br /&gt;               &amp;lt;name&amp;gt;ColoredNicks&amp;lt;/name&amp;gt;&lt;br /&gt;               &amp;lt;loaded&amp;gt;true&amp;lt;/loaded&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;nostyle&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;0&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;       &amp;lt;/plugin&amp;gt;&lt;br /&gt;       &amp;lt;plugin&amp;gt;&lt;br /&gt;               &amp;lt;name&amp;gt;Search Contact&amp;lt;/name&amp;gt;&lt;br /&gt;               &amp;lt;loaded&amp;gt;true&amp;lt;/loaded&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;search&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;0&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;hide&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;0&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;advanced&amp;lt;/key&amp;gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;       &amp;lt;/plugin&amp;gt;&lt;br /&gt;       &amp;lt;plugin&amp;gt;&lt;br /&gt;               &amp;lt;name&amp;gt;aMSN Plus&amp;lt;/name&amp;gt;&lt;br /&gt;               &amp;lt;loaded&amp;gt;false&amp;lt;/loaded&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;allow_commands&amp;lt;/key&amp;gt;&lt;br /&gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;allow_quicktext&amp;lt;/key&amp;gt;&lt;br /&gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;allow_colours&amp;lt;/key&amp;gt;&lt;br /&gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;quick_text&amp;lt;/key&amp;gt;&lt;br /&gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;[list]&amp;lt;/value&amp;gt;&lt;br /&gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;parse_nicks&amp;lt;/key&amp;gt;&lt;br /&gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;colour_nicks&amp;lt;/key&amp;gt;&lt;br /&gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;1&amp;lt;/value&amp;gt;&lt;br /&gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;               &amp;lt;entry&amp;gt;&lt;br /&gt;&lt;br /&gt;                       &amp;lt;key&amp;gt;#resource&amp;lt;/key&amp;gt;&lt;br /&gt;&lt;br /&gt;                       &amp;lt;value&amp;gt;aMSN&amp;lt;/value&amp;gt;&lt;br /&gt;&lt;br /&gt;               &amp;lt;/entry&amp;gt;&lt;br /&gt;       &amp;lt;/plugin&amp;gt;&lt;br /&gt;&amp;lt;/config&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Coloque ele na pasta principal do aMSN: ~/.amsn&lt;br /&gt;&lt;br /&gt;depois é só dar esse comando: &lt;span style="font-style: italic;"&gt;chattr +i plugins.xml&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Pronto! Qualquer dúvida, comente o post!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7498518300625205634-2848893949525644262?l=nerddagambi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nerddagambi.blogspot.com/feeds/2848893949525644262/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://nerddagambi.blogspot.com/2009/02/configurando-o-amsn-para-acesso-publico.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7498518300625205634/posts/default/2848893949525644262'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7498518300625205634/posts/default/2848893949525644262'/><link rel='alternate' type='text/html' href='http://nerddagambi.blogspot.com/2009/02/configurando-o-amsn-para-acesso-publico.html' title='Configurando o aMSN para acesso público'/><author><name>Rodrigo Manga</name><uri>http://www.blogger.com/profile/10724630269754635254</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_oB3zMksrogg/SM56rOze-wI/AAAAAAAAFog/1s7AtNRupbA/S220/mortal.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7498518300625205634.post-2974166525584899924</id><published>2009-02-05T02:19:00.000-08:00</published><updated>2009-02-05T02:41:52.026-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jquery validate javascript'/><title type='text'>Como colocar uma mensagem do Jquery validate dentro de um objeto definido</title><content type='html'>Fiquei um dia tentando colocar a mensagem do Jquery validate dentro de um &lt;span style="font-weight: bold; font-style: italic;"&gt;&amp;lt;p&amp;gt;&lt;/span&gt;, pois o validate cria um label, e ele tava pegando as propriedades do css da pagina, e tava acabando com o layout.&lt;br /&gt;&lt;br /&gt;Depois de ler muito o código fonte do validate, consegui o seguinte código:&lt;br /&gt;&lt;br /&gt;&lt;pre class="prettyprint"&gt;&lt;br /&gt;&amp;lt;script type="text/javascript"&amp;gt;&lt;br /&gt; $(document).ready(function(){&lt;br /&gt;&lt;br /&gt;$("#form_login").validate({ //nome do formulário&lt;br /&gt; rules: {&lt;br /&gt;  user_login: { // regra do campo user_login&lt;br /&gt;   required:true, // campo requirido&lt;br /&gt;   minlength: 2   // deve ter no mínimo 2 caracteres&lt;br /&gt;  },&lt;br /&gt;  user_pass: {&lt;br /&gt;   required:true,&lt;br /&gt;   minlength: 4&lt;br /&gt;  }&lt;br /&gt; },&lt;br /&gt;  errorPlacement: function(error, element) { // função que define onde deve ser colocado os erros&lt;br /&gt;   var elemento = "#"+element.attr("name")+'_p';&lt;br /&gt;             $(elemento).html(error.html());&lt;br /&gt;            } &lt;br /&gt;});&lt;br /&gt;&lt;br /&gt; });&lt;br /&gt; &amp;lt;/script&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Como eu já tinha colocado no formulário paragrafos seguindo o padrão &lt;span style="font-style: italic; font-weight: bold;"&gt;nome_do_elemento_p&lt;/span&gt;, na linha &lt;span style="font-weight: bold; font-style: italic;"&gt;var elemento = "#"+element.attr("name")+'_p';&lt;/span&gt; eu crio uma variável de texto pegando o nome do elemento com erro e adicionando no final o _p&lt;br /&gt;&lt;br /&gt;Na linha &lt;span style="font-weight: bold; font-style: italic;"&gt;$(elemento).html(error.html());&lt;/span&gt; pegamos a mensagem de erro a colocamos dentro do p.&lt;br /&gt;&lt;br /&gt;Fácil? depois que ralei procurando como faz ficou sim!&lt;br /&gt;&lt;br /&gt;Qualquer dúvida, comente.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7498518300625205634-2974166525584899924?l=nerddagambi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nerddagambi.blogspot.com/feeds/2974166525584899924/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://nerddagambi.blogspot.com/2009/02/como-colocar-uma-mensagem-do-jquery.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7498518300625205634/posts/default/2974166525584899924'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7498518300625205634/posts/default/2974166525584899924'/><link rel='alternate' type='text/html' href='http://nerddagambi.blogspot.com/2009/02/como-colocar-uma-mensagem-do-jquery.html' title='Como colocar uma mensagem do Jquery validate dentro de um objeto definido'/><author><name>Rodrigo Manga</name><uri>http://www.blogger.com/profile/10724630269754635254</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_oB3zMksrogg/SM56rOze-wI/AAAAAAAAFog/1s7AtNRupbA/S220/mortal.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7498518300625205634.post-3331143606013289296</id><published>2009-02-05T02:00:00.000-08:00</published><updated>2009-02-05T02:19:02.936-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='zend apache rewrite alias'/><title type='text'>Como ligar o rewriter do apache em um alias</title><content type='html'>Trabalhando com Zend, surgiu a necessidade de configurar varios aliases para diversas pastas do sistema zend, pois eu tinha uma pasta de teste, outra de produção e etc.&lt;br /&gt;&lt;br /&gt;Eu poderia fazer por virtualhost, mas é complicado, pois eu teria que acessar cada um com um IP, e isso daria mais trabalho.&lt;br /&gt;&lt;br /&gt;Fucei fucei, até que consegui a solução.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Eu uso o Ubuntu server, os arquivos de configuração do apache fica em /etc/apache2&lt;br /&gt;&lt;br /&gt;Dentro desse, existe o diretório "conf.d", lá dentro eu criei um arquivo para adicionar novos aliases ao apache.&lt;br /&gt;&lt;br /&gt;O arquivo que criei foi zend.conf, e está desse jeito&lt;br /&gt;&lt;br /&gt;&lt;pre class="prettyprint"&gt;&lt;br /&gt;Alias /teste /home/usuario/teste/public/&lt;br /&gt;&lt;br /&gt;&amp;lt;Directory /home/usuario/teste/public/ &amp;gt;&lt;br /&gt;  Options Indexes FollowSymLinks MultiViews&lt;br /&gt;  AllowOverride all&lt;br /&gt;  Order allow,deny&lt;br /&gt;  allow from all&lt;br /&gt;&amp;lt;/Directory&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Assim ele está mapeando o diretório /home/usuario/teste/public/ onde vamos ter um .htaccess para fazer o trabalho do rewriter do Zend.&lt;br /&gt;&lt;br /&gt;&lt;pre class="prettyprint"&gt;&lt;br /&gt;RewriteEngine on&lt;br /&gt;RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;RewriteRule !\.(js|ico|gif|jpg|png|css)$ /teste/index.php&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Percebeu que o .htaccess está direcionando para o index.php? simples né?&lt;br /&gt;&lt;br /&gt;Se não entendeu alguma coisa, faça um comentário.&lt;br /&gt;&lt;br /&gt;ps.: Não esqueça de reiniciar o apache!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7498518300625205634-3331143606013289296?l=nerddagambi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nerddagambi.blogspot.com/feeds/3331143606013289296/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://nerddagambi.blogspot.com/2009/02/como-ligar-o-rewriter-do-apache-em-um.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7498518300625205634/posts/default/3331143606013289296'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7498518300625205634/posts/default/3331143606013289296'/><link rel='alternate' type='text/html' href='http://nerddagambi.blogspot.com/2009/02/como-ligar-o-rewriter-do-apache-em-um.html' title='Como ligar o rewriter do apache em um alias'/><author><name>Rodrigo Manga</name><uri>http://www.blogger.com/profile/10724630269754635254</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_oB3zMksrogg/SM56rOze-wI/AAAAAAAAFog/1s7AtNRupbA/S220/mortal.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7498518300625205634.post-4250873047622087899</id><published>2009-01-25T16:44:00.000-08:00</published><updated>2009-01-26T03:19:21.546-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='zend framework log php'/><title type='text'>Zend Log</title><content type='html'>Estava precisando criar um log de acessos e etc.&lt;br /&gt;&lt;br /&gt;O sistema que estou trabalhando é com Zend Framework, havia pensado em acessar o banco de dados diretamente pelo php para fazer, mas depois vi que existe o Zend_Log.&lt;br /&gt;&lt;br /&gt;O problema é que eu não achava uma opção de colocar mais campos para alimentar o banco de dados. Depois de muitas procuras e testes, eis o código.&lt;br /&gt;&lt;br /&gt;&lt;pre class="prettyprint"&gt;&lt;br /&gt;class logEvents{&lt;br /&gt;   private $_db;&lt;br /&gt; &lt;br /&gt;   public function __construct($db){&lt;br /&gt;       $this-&gt;_db = $db;&lt;br /&gt;       $colunas = array('logevents_type_idlogevents_type' =&gt; 'tipo',&lt;br /&gt;                        'logevents_date' =&gt; 'timestamp',&lt;br /&gt;                        'logevents_text' =&gt; 'message',&lt;br /&gt;                        'idpartner' =&gt; 'parceiro',&lt;br /&gt;                        'logevents_ip' =&gt; 'address' &lt;br /&gt;                        );&lt;br /&gt;&lt;br /&gt;               $writer = new Zend_Log_Writer_Db($this-&gt;_db, 'logevents', $colunas);&lt;br /&gt;       $this-&gt;logger = new Zend_Log($writer);&lt;br /&gt;&lt;br /&gt;   }&lt;br /&gt;   public function set_acesso($tipo,$descricao = "",$parceiro = 0){&lt;br /&gt;       $this-&gt;logger-&gt;setEventItem('tipo',$tipo);&lt;br /&gt;       $this-&gt;logger-&gt;setEventItem('parceiro', $parceiro);&lt;br /&gt;       $this-&gt;logger-&gt;setEventItem('address',$_SERVER['REMOTE_ADDR']);&lt;br /&gt;       $this-&gt;logger-&gt;log($descricao);&lt;br /&gt;   }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Acho que dá pra entender bem o código né?&lt;br /&gt;&lt;br /&gt;o segredo é usar o setEventItem!&lt;br /&gt;&lt;br /&gt;Se você ficou com alguma dúvida, comente o post.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7498518300625205634-4250873047622087899?l=nerddagambi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nerddagambi.blogspot.com/feeds/4250873047622087899/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://nerddagambi.blogspot.com/2009/01/zend-log.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7498518300625205634/posts/default/4250873047622087899'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7498518300625205634/posts/default/4250873047622087899'/><link rel='alternate' type='text/html' href='http://nerddagambi.blogspot.com/2009/01/zend-log.html' title='Zend Log'/><author><name>Rodrigo Manga</name><uri>http://www.blogger.com/profile/10724630269754635254</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_oB3zMksrogg/SM56rOze-wI/AAAAAAAAFog/1s7AtNRupbA/S220/mortal.jpg'/></author><thr:total>0</thr:total></entry></feed>
