<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Diário de Códigos &#187; Dicas</title>
	<atom:link href="http://diariodecodigos.info/category/outros/dicas/feed/" rel="self" type="application/rss+xml" />
	<link>http://diariodecodigos.info</link>
	<description>Codigos Fonte, Artigos e Dicas</description>
	<lastBuildDate>Tue, 03 May 2011 17:42:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>svn update path/ + svn+ssh://hosts</title>
		<link>http://diariodecodigos.info/2011/02/svn-update-path-svnsshhosts/</link>
		<comments>http://diariodecodigos.info/2011/02/svn-update-path-svnsshhosts/#comments</comments>
		<pubDate>Sun, 20 Feb 2011 23:56:53 +0000</pubDate>
		<dc:creator>Alexandre Santos</dc:creator>
				<category><![CDATA[Dicas]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://diariodecodigos.info/?p=1114</guid>
		<description><![CDATA[Dica rápida: svn update com repositório remoto através do protocolo svn+ssh Normalmente eu utilizo o eclipse (com subversive e connector svnkit) para acessar meus repositórios svn, normalmente meus repositórios utilizam protocolos tunelados pelo ssh (svn+ssh://) e o eclipse sempre tomo conta disso de forma linda e maravilhosa com alguns cliques, porém um dia chega e]]></description>
			<content:encoded><![CDATA[<p>Dica rápida: <strong><em>svn update</em></strong> com repositório remoto através do protocolo <strong>svn+ssh</strong></p>
<p>Normalmente eu utilizo o eclipse (com subversive e connector svnkit) para acessar meus repositórios svn, normalmente meus repositórios utilizam protocolos tunelados pelo ssh (svn+ssh://) e o eclipse sempre tomo conta disso de forma linda e maravilhosa com alguns cliques, porém um dia chega e eu realmente tenho que utilizar o svn no shell do linux por conta de um servido, mas só isso não é o problema.. o problema é o update pelo svn+ssh com uma autenticação falha.<span id="more-1114"></span></p>
<p>Bem&#8230; sem mistérios, com frequencia eu custumo utilizar chaves rsa (ou dsa) para autenticação nesses casos, para não ficar colocando a senha a cada commit, update, delete e etc. etc. etc. então fiz o mesmo para o svn que eu iria utilizar no servidor, cirei um chave, para quem não conhece vou resumir:</p>
<p>você cria uma chave digitando &#8220;<em><strong>ssh-keygen</strong></em>&#8221; e em &#8220;<strong>~/.ssh</strong>&#8221; você terá duas chaves &#8220;<strong>id_rsa</strong>&#8221; e &#8220;<strong>id_rsa.pub</strong>&#8220;, você copia a chave &#8220;<strong>id_rsa.pub</strong>&#8221; para o servidor remoto no diretório &#8220;<strong>~/.ssh/authorized_keys</strong>&#8221; (caso o arquivo nao exista crie, ou se existir copie apenas a chave para dentro dele adicionado-o uma linha).</p>
<p>bem com as chaves ok basta digitar &#8220;<em><strong>ssh user@host</strong></em>&#8221; e você estará logado sem pedir senha (a não ser que vc tenha utilizado uma para criar as chaves), então eu faço o checkout:</p>
<pre class="brush: plain;">
svn checkout svn+ssh://user@host/path/to/repo
</pre>
<p>Show de bola, agora o problema vem com o &#8220;<em><strong>svn update</strong></em>&#8220;, quando eu tentava dar um update eu tinha o seguinte problea:</p>
<pre class="brush: plain;">
svn update localcopy/
&lt;strong&gt;LOCALUSER&lt;/strong&gt;@host's password: _
</pre>
<p>Mas como ele ta pedindo a senha? eu tinha configurado as chaves? É&#8230; aí que mora o perigo, o svn update busco a informações do repositório e tento fazer o update, mas o infeliz tenta se logar com o usuário local, não sei porque. Lendo a documentação do svn update (<a href="http://svnbook.red-bean.com/en/1.4/svn-book.html#svn.ref.svn.c.update" target="_blank">http://svnbook.red-bean.com/en/1.4/svn-book.html#svn.ref.svn.c.update</a>) eu vi o parâmetro &#8211;username, que em fim não funciona no nosso caso ele é somente para o usuário do repositório e o login nesse caso é do ssh (que também é o do repositório quando estamos utilizando o protocolo ssh) então depois de uma pesquisa rápida achei a solução aqui: <a href="http://www.linuxfromscratch.org/blfs/edguide/chapter02.html" target="_blank">http://www.linuxfromscratch.org/blfs/edguide/chapter02.html</a></p>
<p>Bem.. ele cria um arquivo de config no <strong>~/.ssh</strong> que diz ao ssh para quando for requisitar uma conexão ao <strong>Host X</strong> fornecer<strong> como padrão o usuário X ao invés de utilizar o usuário logado no sistema</strong> como padrão e no final indica que para aquele host temos chaves RSA, concluindo:</p>
<p>Cria o arquivo &#8220;<strong>config</strong>&#8221; dentro de  <strong>~/.ssh</strong> com o seguinte conteúdo:</p>
<pre class="brush: plain;">
Host diariodecodigos.info
User meu-usuario-remoto
RhostsRSAAuthentication yes
</pre>
<p>P.S: procurando pela internet também achei esses dois links, que teoricamente resolveriam meu problema, porém não resolveram:<br />
<a href="http://svn.haxx.se/users/archive-2007-09/0802.shtml" target="_blank"> http://svn.haxx.se/users/archive-2007-09/0802.shtml</a><br />
<a href="http://www.svnforum.org/threads/34191-svn-update-svn-ssh-problem-Skipped" target="_blank"> http://www.svnforum.org/threads/34191-svn-update-svn-ssh-problem-Skipped</a></p>
<p>Abraços&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://diariodecodigos.info/2011/02/svn-update-path-svnsshhosts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pesquisa por data no Drupal</title>
		<link>http://diariodecodigos.info/2010/06/pesquisa-por-data-no-drupal/</link>
		<comments>http://diariodecodigos.info/2010/06/pesquisa-por-data-no-drupal/#comments</comments>
		<pubDate>Wed, 30 Jun 2010 21:04:25 +0000</pubDate>
		<dc:creator>Alexandre Santos</dc:creator>
				<category><![CDATA[Dicas]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Drupal]]></category>
		<category><![CDATA[MySql]]></category>

		<guid isPermaLink="false">http://diariodecodigos.info/?p=1000</guid>
		<description><![CDATA[há algum tempo eu precisei colocar em um projeto uma pesquisa por data, surpreendentemente não encontrei  nenhum módulo para o mesmo. Bem.. decidi criar um&#8230; Características Pesquisa por conteúdo em determinada data Pesquisa por conteúdo a partir de uma data Pesquisa por conteúdo até uma determinada data Pesquisa por conteúdo em um range de data]]></description>
			<content:encoded><![CDATA[<p>há algum tempo eu precisei colocar em um projeto uma pesquisa por data, surpreendentemente não encontrei  nenhum módulo para o mesmo.</p>
<p>Bem.. decidi criar um&#8230;</p>
<h2><span style="color: #333399;">Características</span></h2>
<ul>
<li>Pesquisa por conteúdo em determinada data</li>
<li>Pesquisa por conteúdo a partir de uma data</li>
<li>Pesquisa por conteúdo até uma determinada data</li>
<li>Pesquisa por conteúdo em um range de data</li>
<li>Configurações dos <em>Content Type</em> pesquisáveis</li>
<li>Configuração da quantidade de itens por página no resultado</li>
</ul>
<p><span id="more-1000"></span></p>
<h2><span style="color: #333399;">Todo List</span></h2>
<ul>
<li>Este módulo só pode ser utilizado no MySQL, porque utilizei funções específicas de tal banco de dados.</li>
<li>Fazer o módulo trabalhar com timestamp, para torná-lo independente de banco de dados.</li>
<li>Adicionar suporte para o usuário escolher o tipo de data, americano ou brasileiro.</li>
<li>Adicionar máscara aos campos de data.</li>
<li>Adicionar configuração dos vocabulários pesquisáveis na interface de configuração</li>
</ul>
<h2><span style="color: #333399;">Download</span></h2>
<p><a href="http://diariodecodigos.info/alexandre/searchbydate/searchbydate-6.x-1.0.tar.gz" target="_blank">searchbydate-6.x-1.0.tar.gz</a></p>
<h2><span style="color: #333399;">ScreenShots</span></h2>
<p><span style="color: #333399;"><a href="http://diariodecodigos.info/wp-content/uploads/2010/06/search.png"><img class="aligncenter size-medium wp-image-1005" title="search" src="http://diariodecodigos.info/wp-content/uploads/2010/06/search-300x197.png" alt="" width="300" height="197" /></a></span></p>
<p><span style="color: #333399;"><a href="http://diariodecodigos.info/wp-content/uploads/2010/06/settings.png"><img class="aligncenter size-medium wp-image-1008" title="settings" src="http://diariodecodigos.info/wp-content/uploads/2010/06/settings-300x165.png" alt="" width="300" height="165" /></a><br />
</span></p>
]]></content:encoded>
			<wfw:commentRss>http://diariodecodigos.info/2010/06/pesquisa-por-data-no-drupal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dica: Eclipse PDT + Webmin</title>
		<link>http://diariodecodigos.info/2010/04/dica-eclipse-pdt-webmin/</link>
		<comments>http://diariodecodigos.info/2010/04/dica-eclipse-pdt-webmin/#comments</comments>
		<pubDate>Thu, 08 Apr 2010 00:07:36 +0000</pubDate>
		<dc:creator>Alexandre Santos</dc:creator>
				<category><![CDATA[Dicas]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://diariodecodigos.info/?p=937</guid>
		<description><![CDATA[Problema com a porta 10000 ao instalar o Webmin? Problema fora do normal, mas eu tive, um aplicativo estava sendo impedido de ser instalado porque outro app estava utilizando sua porta. Para quem não conhece o webmin é um excelente app para o gerenciamento do sistema Linux, como um &#8220;Painel de Controle&#8221; avançado com interface]]></description>
			<content:encoded><![CDATA[<p>Problema com a porta 10000 ao instalar o Webmin?</p>
<p>Problema fora do normal, mas eu tive, um aplicativo estava sendo impedido de ser instalado porque outro app estava utilizando sua porta.<span id="more-937"></span></p>
<p>Para quem não conhece o <strong><a href="http://www.webmin.com/">webmin</a></strong> é um excelente app para o gerenciamento do sistema Linux, como um &#8220;Painel de Controle&#8221; avançado com interface web, eu conheci ele no Conectiva (que saudades&#8230;) e até hoje utilizo seja no desktop e principalmente nos servidores.</p>
<p style="text-align: center;"><a href="http://diariodecodigos.info/wp-content/uploads/2010/04/webmin.png"><img class="aligncenter size-full wp-image-938" style="border: 1px solid black;" title="webmin" src="http://diariodecodigos.info/wp-content/uploads/2010/04/webmin.png" alt="" width="515" height="359" /></a></p>
<p>Você pode simplesmente trocar a porta do webmin, mas eu queria muito saber qual app estava utilizando a porta 10000, e para isso descobri um comando muito útil que já era para eu conhecer mas ninguém havia me apresentado, O &#8220;fuser&#8221;.</p>
<p>O comando &#8220;fuser&#8221; descobre o PID de um processo que está utilizando um arquivo ou um socket, a sintax para descobrir o processo de uma determinada porta é:</p>
<pre class="brush: bash;">
# fuser -n tcp 1000
10000/tcp:            2164
</pre>
<p>com isso é retornado o PID, agora basta descobrir o processo</p>
<pre class="brush: bash;">
# ps aux | grep 2164
</pre>
<p>para a minha surpresa o problema era o eclipse! Oo</p>
<p>após procurar um pouco fiquei sabendo que o Zend Debug utiliza a porta 10000 também, ai o problema agora é simples, trocar a porta do Zend Debug ou desabilitar o mesmo se você não o utiliza.</p>
<p>boa sorte.</p>
]]></content:encoded>
			<wfw:commentRss>http://diariodecodigos.info/2010/04/dica-eclipse-pdt-webmin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Módulos para Drupal que você não vive sem</title>
		<link>http://diariodecodigos.info/2010/02/modulos-para-drupal-que-voce-nao-vive-sem/</link>
		<comments>http://diariodecodigos.info/2010/02/modulos-para-drupal-que-voce-nao-vive-sem/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 14:55:14 +0000</pubDate>
		<dc:creator>Alexandre Santos</dc:creator>
				<category><![CDATA[Dicas]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Drupal]]></category>
		<category><![CDATA[Plugins]]></category>

		<guid isPermaLink="false">http://diariodecodigos.info/?p=859</guid>
		<description><![CDATA[Alguns plugins essenciais para trabalhar com Drupal]]></description>
			<content:encoded><![CDATA[<p><strong>Drupal</strong>,  é impressionante como esse CMS trabalha! simplesmente fascinante e posso falar com certeza que ele é uma ótima ferramenta para criar sites para a maioria das soluções existentes hoje no mercado.</p>
<p>Aqueles que sabem o conhecem, aqueles que sabem mais que os que sabem desenvolvem módulos e temas para ele, aqueles que querem saber leiam a documentação oficial do projeto em <a title="Manual do Drupal" href="http://drupal.org/handbooks" target="_blank">http://drupal.org/handbooks</a>.</p>
<p>As extensões que eu não vivo sem:<span id="more-859"></span></p>
<ol>
<li><strong><a title="Administration Menu" href="http://drupalmodules.com/module/administration-menu" target="_blank">Administration Menu</a></strong><br />
Esse módulo é responsável por colocar um maravilhoso menu na área adminstrativa:<br />
<a href="http://diariodecodigos.info/wp-content/uploads/2010/02/AdministrationMenuDrupal1.gif"><img class="aligncenter size-full wp-image-864" style="border: 1px solid black; margin-top: 2px; margin-bottom: 2px;" title="AdministrationMenuDrupal" src="http://diariodecodigos.info/wp-content/uploads/2010/02/AdministrationMenuDrupal1.gif" alt="" width="758" height="186" /></a><strong></strong></li>
<li><strong><a href="http://drupal.org/project/wysiwyg" target="_blank">WYSIWYG</a></strong><br />
Na instalação default do Drupal quando você vai criar uma página ou post do blog, qualquer conteúdo (node) você tem apenas uma &#8220;textarea&#8221;, isso para um usuário final ou para fins de maior produtividade não é tão bom, com o <strong>WYSIWYG</strong> você pode ter o editor de texto/html em todas essas textarea, como o<strong> FCKEditor</strong> ou o <strong>TyniMCE</strong> que também é utilizado pelo WordPress, além de outros editores.<br />
<a href="http://diariodecodigos.info/wp-content/uploads/2010/02/wysiwyg.gif"><img class="aligncenter size-full wp-image-867" style="border: 1px solid black; margin-top: 2px; margin-bottom: 2px;" title="wysiwyg" src="http://diariodecodigos.info/wp-content/uploads/2010/02/wysiwyg.gif" alt="" width="404" height="733" /></a></li>
<li><strong><a title="Spell Check" href="http://drupalmodules.com/module/wysiwyg-spellcheck" target="_blank">WYSIWYG Spell Chek</a></strong><br />
Se você for utilizar o TinyMCE existe um corretor ortográfico para ele que funciona com a engine do google docs&#8230; recomendo&#8230;</li>
<li><a href="http://drupalmodules.com/module/imce" target="_blank"><strong>IMCE</strong></a><br />
O melhor dos plugins para upload e gerenciamento de imagem, funciona perfeitamente com o TinyMCE.<br />
<a href="http://diariodecodigos.info/wp-content/uploads/2010/02/Clipboard01.thumbnail.jpg"><img class="aligncenter size-full wp-image-877" style="border: 1px solid black; margin-top: 1px; margin-bottom: 1px;" title="Clipboard01.thumbnail" src="http://diariodecodigos.info/wp-content/uploads/2010/02/Clipboard01.thumbnail.jpg" alt="" width="300" height="209" /></a></li>
<li><strong><a title="CCK" href="http://drupalmodules.com/module/content-construction-kit-cck" target="_blank">Content Construction Kit</a></strong><br />
Agora esse módulo faz parte do núcleo do Drupal 7, por enquanto no Drupal 6 ele é só um módulo&#8230; Permite você a criar e definir novos tipos de conteúdo(post de blog, página de funcionário e etc) e adicionar &#8220;fields&#8221; (campos) a esses conteúdos. Um &#8220;field&#8221; pode ser um texto simples, imagem, vídeo flash, qualquer coisa! Plugin essencial</li>
<li><strong><a title="Views" href="http://drupalmodules.com/module/views" target="_blank">Views</a></strong></li>
<li><strong><a title="Panels" href="http://drupalmodules.com/module/panels" target="_blank">Panels</a></strong><br />
Tanto o <strong>Views</strong> e <strong>Panels</strong> são de instalação obrigatória se você realmente vai criar um portal bem diversificado, eles requerem um certo estudo para correta utilização.<br />
<a href="http://diariodecodigos.info/wp-content/uploads/2010/02/panels-screenshot-1-preview.png"><img class="aligncenter size-full wp-image-874" style="border: 1px solid black; margin-top: 1px; margin-bottom: 1px;" title="panels-screenshot-1-preview" src="http://diariodecodigos.info/wp-content/uploads/2010/02/panels-screenshot-1-preview.png" alt="" width="420" height="322" /></a></li>
<li><a href="http://drupalmodules.com/module/nice-menus" target="_blank"><strong>Nice Menu</strong></a><br />
Muito bom para criar drop-down menu.<br />
<a href="http://diariodecodigos.info/wp-content/uploads/2010/02/nice_menus.png"><img class="aligncenter size-full wp-image-875" style="border: 1px solid black; margin-top: 1px; margin-bottom: 1px;" title="nice_menus" src="http://diariodecodigos.info/wp-content/uploads/2010/02/nice_menus.png" alt="" width="320" height="200" /></a></li>
<li><a href="http://drupalmodules.com/module/dhtml-menu" target="_blank"><strong>DHTML</strong></a><br />
Habilita naquele menu primário um menu DHTML para evitar que o drupal fique recarregando a página toda vez que você clica em algum menu para expandir, muito bom!</li>
<li><a href="http://drupalmodules.com/module/lightbox2" target="_blank"><strong>Lightbox2</strong></a><br />
Acho que não é necessário apresentações! Fundamental para apresentação de imagens e galeria de imagens nas suas páginas e posts.</li>
<li><strong><a href="http://drupal.org/project/votingapi">Voting API </a> + <a href="http://drupal.org/project/fivestar"> Fivestar</a></strong><br />
Esse plugin é muito legal para criar um sistema de votação, excelente.</li>
<li><a href="http://drupalmodules.com/module/notifications" target="_blank"><strong>Notifications</strong></a><br />
Permite o usuário receber notificações de novos comentários e replys, além de outros recursos bastante interessantes.</li>
<li><strong><a href="http://drupalmodules.com/module/captcha" target="_blank">CAPTCHA</a> + <a href="http://drupalmodules.com/module/recaptcha" target="_blank">reCAPTCHA</a></strong><br />
A imagem abaixo descreve os comentários:<br />
<a href="http://diariodecodigos.info/wp-content/uploads/2010/02/captchaHomePage1.gif"><img class="aligncenter size-full wp-image-876" style="border: 1px solid black; margin-top: 1px; margin-bottom: 1px;" title="captchaHomePage[1]" src="http://diariodecodigos.info/wp-content/uploads/2010/02/captchaHomePage1.gif" alt="" width="238" height="96" /></a></li>
<li><a href="http://drupalmodules.com/module/webform" target="_blank"><strong>Webform</strong></a><br />
Permite você a criar fácilmente formulários de cadastros e etc.</li>
<li><a title="Pathauto" href="http://drupalmodules.com/module/pathauto" target="_blank"><strong>Pathauto</strong></a><br />
Amado pelos SEO&#8217;s, esse plugin cria automaticamente URL&#8217;s legíveis e amigáveis para engine de buscas.</li>
<li><a href="http://drupalmodules.com/module/path-redirect" target="_blank"><strong>Path Redirect</strong></a><br />
Plugin para criar paths de redirecionamento para outro path, muito bom e vale a pena dar uma olhada nos módulos recomendados por ele!</li>
<li><a href="http://drupalmodules.com/module/google-analytics" target="_blank"><strong>Google Analytics</strong></a><br />
Sim, no drupal você também pode controlar seu tráfego com o saudoso google analytics.</li>
<li><a href="http://drupalmodules.com/module/xml-sitemap" target="_blank"><strong>XML sitemap</strong></a><br />
Um bom gerador de SiteMap.</li>
<li><a title="Print" href="http://drupalmodules.com/module/printer-e-mail-and-pdf-versions" target="_blank"><strong>Print, email and PDF version</strong></a><br />
Excelente plugin para criar um link para imprimir o conteúdo ou enviá-lo via e-mail para algum amigo, porém para utilizar a renderização em PDF ele requer alguns componentes a mais e não achei uma boa solução para renderizar PDF, fora isso é um excelente plugin.</li>
<li><a href="http://drupalmodules.com/module/taxonomy-manager" target="_blank"><strong>Taxonomy Manager</strong></a><br />
Esse módulo fornece uma interface excelente para você gerenciar seu vocabulário de taxonomia, ele apresenta uma estrutura no estilo de uma árvore, extremamente recomendado!</li>
<li><a href="http://drupalmodules.com/module/taxonomy-menu" target="_blank"><strong>Taxnonomy Menu</strong></a><br />
Cria um menu fácil e rápido a partir de qualquer vocabulário.</li>
<li><a href="http://drupalmodules.com/module/logintoboggan" target="_blank"><strong>LoginToboggan</strong></a><br />
Lhe permite de forma fácil e rápida implementar novas características importantíssimas no sistema de cadastro e login do Drupal.</li>
<li><a href="http://drupalmodules.com/module/better-formats" target="_blank"><strong>Better Formats</strong></a><br />
Esse plugin criar uma maior flexibilidade no gerenciamento de &#8220;Formatos de Entrada&#8221; do drupal, adicionando várias características importantes como, configurar uma entrada de formato padrão por role, por tipo de conteúdo, trabalha com CKK textarea e outras caractrísticas<br />
<a href="http://diariodecodigos.info/wp-content/uploads/2010/02/better_formats_global_defaults_byrole.thumbnail.png"><img class="aligncenter size-full wp-image-878" style="border: 1px solid black; margin-top: 1px; margin-bottom: 1px;" title="better_formats_global_defaults_byrole.thumbnail" src="http://diariodecodigos.info/wp-content/uploads/2010/02/better_formats_global_defaults_byrole.thumbnail.png" alt="" width="300" height="217" /></a></li>
</ol>
<h2><span style="color: #0000ff;"><strong>- Conclusão</strong></span></h2>
<p>Esses são os plugins que mais uso e que lembro até esse momento, caso alguém tenha algum novo plugin que valha a pena ser inserido, mande para nós.</p>
<p>Abraços&#8230;.</p>
]]></content:encoded>
			<wfw:commentRss>http://diariodecodigos.info/2010/02/modulos-para-drupal-que-voce-nao-vive-sem/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Servidor PHP no Windows com SMTP</title>
		<link>http://diariodecodigos.info/2010/02/servidor-php-no-windows-com-smtp/</link>
		<comments>http://diariodecodigos.info/2010/02/servidor-php-no-windows-com-smtp/#comments</comments>
		<pubDate>Tue, 16 Feb 2010 14:38:27 +0000</pubDate>
		<dc:creator>Alexandre Santos</dc:creator>
				<category><![CDATA[Dicas]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Drupal]]></category>
		<category><![CDATA[sendmail]]></category>
		<category><![CDATA[smtp]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://diariodecodigos.info/?p=842</guid>
		<description><![CDATA[Como todo bom desenvolvedor, temos que ter um ambiente de trabalho em nosso computador que chegue o mais próximo possível do que teremos no ambiente de produção final.

No meu caso eu andei precisando estudar sobre PostgreSQL (por sinal um excelente banco de dados) com PHP. Isso foi o mais fácil, agora tenho que estudar o famoso CMS/CMF Drupal, excelente por sinal.

O que isso tem a ver com esse post? Com um ambiente rodando PostgreSQL + PHP + Drupal só faltava uma coisa... o servidor SMTP! É isso mesmo, exemplo: após um usuário ser cadastrado no Drupal é enviado um e-mail de confirmação para ele, mas como isso seria enviado se meu ambiente de teste no windows não tem um servidor MTA sendmail disponível (Linux faz muita falta).]]></description>
			<content:encoded><![CDATA[<p><a rel="attachment wp-att-843" href="http://diariodecodigos.info/2010/02/servidor-php-no-windows-com-smtp/attachment/02/"><img class="alignleft size-full wp-image-843" style="border: 2px solid black; margin: 2px 5px;" title="PHP no Windows" src="http://diariodecodigos.info/wp-content/uploads/2010/02/02.gif" alt="" width="183" height="122" /></a>Como todo bom desenvolvedor, temos que ter um ambiente de trabalho em nosso computador que chegue o mais próximo possível do que teremos no ambiente de produção final.</p>
<p>No meu caso eu andei precisando estudar sobre PostgreSQL (por sinal um excelente banco de dados) com PHP. Isso foi o mais fácil, agora tenho que estudar o famoso CMS/CMF Drupal, excelente por sinal.</p>
<p>O que isso tem a ver com esse post? Com um ambiente rodando <strong>PostgreSQL + PHP + Drupal</strong> só faltava uma coisa&#8230; o servidor <strong>SMTP</strong>! É isso mesmo, exemplo: após um usuário ser cadastrado no Drupal é enviado um e-mail de confirmação para ele, mas como isso seria enviado se meu ambiente de teste no <strong><em>windows</em></strong> não tem um servidor MTA <em>sendmail</em> disponível (Linux faz muita falta).<span id="more-842"></span></p>
<p>Com algumas pesquisas na internet encontrei a solução ideal! existe um tal de de <strong>sendmail</strong> criado por <strong>Byron Jones</strong> (<a title="Sendmail for Windows" href="http://glob.com.au/sendmail/" target="_blank">http://www.glob.com.au</a>) que na verdade envia e-mail autenticando em um servidor externo.. simples assim, sem precisar criar um <strong>servidor SMTP local</strong> (porque eu já havia tentado criar no IIS com windows 7 mas o IIS desse windows não tem MTA)!</p>
<p>A configuração é simples e a instalação é rápida:</p>
<ol>
<li>Faça o download aqui do <a href="http://diariodecodigos.info/alexandre/sendmail.zip" target="_blank">sendmail.zip</a></li>
<li>Coloque ele em algum lugar, exemplo &#8220;C:\sendmail\&#8221;</li>
<li>Abra o arquivo <strong>sendmail.ini</strong> e edite-o conforme suas necessidades, nesse exemplo eu configurei para utilizar o smtp do Gmail:
<pre class="brush: php;">
; configuration for fake sendmail

; if this file doesn't exist, sendmail.exe will look for the settings in
; the registry, under HKLM\Software\Sendmail

[sendmail]

; you must change mail.mydomain.com to your smtp server,
; or to IIS's &quot;pickup&quot; directory.  (generally C:\Inetpub\mailroot\Pickup)
; emails delivered via IIS's pickup directory cause sendmail to
; run quicker, but you won't get error messages back to the calling
; application.

smtp_server=smtp.gmail.com

; smtp port (normally 25)

smtp_port=587

; the default domain for this server will be read from the registry
; this will be appended to email addresses when one isn't provided
; if you want to override the value in the registry, uncomment and modify

default_domain=domain.com

; log smtp errors to error.log (defaults to same directory as sendmail.exe)
; uncomment to enable logging

error_logfile=error.log

; create debug log as debug.log (defaults to same directory as sendmail.exe)
; uncomment to enable debugging

;debug_logfile=debug.log

; if your smtp server requires authentication, modify the following two lines

auth_username=alexsantos.linux@gmail.com
auth_password=123456

; if your smtp server uses pop3 before smtp authentication, modify the
; following three lines

pop3_server=
pop3_username=
pop3_password=

; to force the sender to always be the following email address, uncomment and
; populate with a valid email address.  this will only affect the &quot;MAIL FROM&quot;
; command, it won't modify the &quot;From: &quot; header of the message content

force_sender=alexsantos.linux@gmail.com

; sendmail will use your hostname and your default_domain in the ehlo/helo
; smtp greeting.  you can manually set the ehlo/helo name if required

;hostname=
</pre>
</li>
<li>Agora edite seu arquivo php.ini e altere a sessão &#8220;mail function&#8221;, coloque o caminho do binário em <strong>sendmail_path</strong>, ignore a observação acima da linha dizendo que essa linha é somente para ambiente Unix, segue um exemplo de configuração abaixo:
<pre class="brush: php;">
[mail function]
; For Win32 only.
; SMTP=localhost
; smtp_port=25

; For Win32 only.
; sendmail_from = me@example.com
; For Unix only.  You may supply arguments as well (default: &quot;sendmail -t -i&quot;).
sendmail_path = &quot;C:\sendmail\sendmail.exe -t&quot;
; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
; mail.force_extra_parameters =
</pre>
</li>
<li>Reinicie seu servidor apache e pronto!</li>
</ol>
<p>Abraços&#8230;&#8230;.</p>
]]></content:encoded>
			<wfw:commentRss>http://diariodecodigos.info/2010/02/servidor-php-no-windows-com-smtp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dica: Backup do MySQL + FTP</title>
		<link>http://diariodecodigos.info/2010/02/dica-backup-do-mysql-ftp/</link>
		<comments>http://diariodecodigos.info/2010/02/dica-backup-do-mysql-ftp/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 12:51:59 +0000</pubDate>
		<dc:creator>Alexandre Santos</dc:creator>
				<category><![CDATA[Dicas]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[MySql]]></category>
		<category><![CDATA[shell script]]></category>

		<guid isPermaLink="false">http://diariodecodigos.info/?p=827</guid>
		<description><![CDATA[Esta dica é um script que eu utilizo muito nos meus servidores MySQL, normalmente para fazer um backup diário.]]></description>
			<content:encoded><![CDATA[<p><a href="http://diariodecodigos.info/wp-content/uploads/2010/02/MySQL.jpg"><img class="alignleft size-full wp-image-828" title="MySQL" src="http://diariodecodigos.info/wp-content/uploads/2010/02/MySQL.jpg" alt="" width="117" height="71" /></a>Esta dica é um script que eu utilizo muito nos meus servidores MySQL, normalmente para fazer um backup diário.</p>
<p>Não basta apenas fazer o backup, se o HD der defeito perderemos ele, então muito normalmente eu envio o backup para outro lugar, nesse script após o backup, o mesmo é enviado via FTP para outro servidor, ou máquina, seja lá para onde, garantindo que você tenha sempre uma cópia fora.</p>
<p>O MySQL não tem scheduler, então eu agendo essa tarefa no CRON (Agendador de Tarefas do Linux).<span id="more-827"></span></p>
<pre class="brush: bash;">
#!/bin/sh

caminhoLocal=&quot;/home/alexandre/www/backup-d/filesSQL/&quot;
cd $caminhoLocal

dataAgora=`date +%Y-%m-%d-%H.%M`
hostname=&quot;servidor2&quot;
username=&quot;alexandre&quot;
password=&quot;654321&quot;

# CRIA O ARQUVIO BACKUP DO MYSQL
mysqldump -u root -p654321 -x --add-drop-table -B banco1 | gzip &gt; backup-&quot;$dataAgora&quot;-banco1-MySQL.sql.gz

# BUSCA O NOME DO ARQUIVO BACKUP E ARMAZENA NA VARIÁVEL
# PARA ENVIAR VIA FTP
arquivo=`ls backup* | sort | sed '$!d'`

lftp &lt;&lt;FTP
open $hostname
user $username $password&gt;/dev/null
cd www/backup-SQL-nevada
put $arquivo
bye
FTP
</pre>
<p><span style="color: #0000ff;"><strong>Linha 3</strong></span> &#8211; &gt;É criado a variável &#8220;<em>caminhoLocal</em>&#8221; com o caminho ao diretório onde os backups serão armazenados</p>
<p><span style="color: #0000ff;"><strong>Linha 4</strong></span> -&gt; O script entra dentro do diretório armazenado na variável &#8220;<em>caminhoLocal</em>&#8221;</p>
<p><span style="color: #0000ff;"><strong>Linha 6</strong></span> -&gt; é criado a variável &#8220;<em>dataAgora</em>&#8221; onde será atribuido a data do dia, observem que o conteúdo da variável está entre crase ` onde indica ao shell script para executar aquele comando e armazenar o output dele na variável.</p>
<p><span style="color: #0000ff;"><strong>Linha 7</strong></span> <span style="color: #0000ff;"><strong>a </strong></span><span style="color: #0000ff;"><strong>Linha 9</strong></span> -&gt; são criados as variáveis que utilizaremos para a conexão do FTP</p>
<p><span style="color: #0000ff;"><strong>Linha 12</strong></span> -&gt; é criado o backup utilizando a ferramento &#8220;<em><strong>mysqldump</strong></em>&#8221; (<a title="MySQL Dump" href="http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html" target="_blank">Documentação do MySQL Dump</a>) e a saída do backup é compactada utilizando o <strong>gzip</strong> (<a title="Gnu Zip" href="http://www.gzip.org/" target="_blank">Gnu zip</a>) e o arquivo é nomeado, ficando com a seguinte aparência: &#8220;backup-2010-02-01-11.30-banco2-MySQL.sql.gz&#8221;.</p>
<p><span style="color: #0000ff;"><strong>Linha 16</strong></span> -&gt; armazena na variável &#8220;<em>arquivo</em>&#8221; o nome do último arquivo de backup feito.</p>
<p><span style="color: #0000ff;"><strong>Linha 18 a 24</strong></span> -&gt; usa o<strong> lftp</strong> (<a title="LFTP" href="http://lftp.yar.ru/" target="_blank">Sophisticated file transfer program</a>) para enviar o backup via FTP para outro servidor.</p>
<p>Simples assim&#8230;&#8230;&#8230;&#8230;.</p>
<p><a href="http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/sysadmin-guide/ch-autotasks.html" target="_blank">Configurando Tarefas no Cron -&gt; Link para manual da Red Hat </a></p>
]]></content:encoded>
			<wfw:commentRss>http://diariodecodigos.info/2010/02/dica-backup-do-mysql-ftp/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Dica: JQuery UI + Dialog e DatePicker</title>
		<link>http://diariodecodigos.info/2010/01/dica-jquery-ui-dialog-e-datepicker/</link>
		<comments>http://diariodecodigos.info/2010/01/dica-jquery-ui-dialog-e-datepicker/#comments</comments>
		<pubDate>Wed, 13 Jan 2010 18:45:26 +0000</pubDate>
		<dc:creator>Alexandre Santos</dc:creator>
				<category><![CDATA[Dicas]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[DatePicker]]></category>
		<category><![CDATA[Dialog]]></category>
		<category><![CDATA[JQueryUI]]></category>

		<guid isPermaLink="false">http://diariodecodigos.info/?p=809</guid>
		<description><![CDATA[Esse post é sobre uma dica rápida para quem usa JQuery ou está começando a usar. Hoje precisei fazer um DatePicker funcionar dentro de um Dialog do JQuery UI. O problema é que quando você faz isso.. o DatePicker fica atrás da janela de diálogo e a documentação do JQuery não comenta nada sobre isso]]></description>
			<content:encoded><![CDATA[<p><a href="http://diariodecodigos.info/wp-content/uploads/2010/01/jqueryUI.jpg"><img class="alignleft size-full wp-image-810" style="margin-left: 2px; margin-right: 2px; border: 1px solid black;" title="jqueryUI" src="http://diariodecodigos.info/wp-content/uploads/2010/01/jqueryUI.jpg" alt="jqueryUI" width="263" height="85" /></a>Esse post é sobre uma dica rápida para quem usa JQuery ou está começando a usar.</p>
<p>Hoje precisei fazer um <em>DatePicker</em> funcionar dentro de um <em>Dialog</em> do <em>JQuery UI</em>.</p>
<p>O problema é que quando você faz isso.. o DatePicker fica atrás da janela de diálogo e a documentação do JQuery não comenta nada sobre isso (pelo menos eu não achei).<span id="more-809"></span></p>
<p><a href="http://diariodecodigos.info/wp-content/uploads/2010/01/dialog-datePicker-problem.jpg"><img class="aligncenter size-full wp-image-811" title="dialog-datePicker-problem" src="http://diariodecodigos.info/wp-content/uploads/2010/01/dialog-datePicker-problem.jpg" alt="dialog-datePicker-problem" width="762" height="442" /></a></p>
<p>Esse problema é facilmente resolvido adicionando o seguinte código no seu CSS:</p>
<pre class="brush: css;">
#ui-datepicker-div
{
    z-index: 1003;
}
</pre>
<p><a href="http://diariodecodigos.info/wp-content/uploads/2010/01/dialog-datePicker-Ok.jpg"><img class="aligncenter size-full wp-image-812" title="dialog-datePicker-Ok" src="http://diariodecodigos.info/wp-content/uploads/2010/01/dialog-datePicker-Ok.jpg" alt="dialog-datePicker-Ok" width="788" height="474" /></a></p>
<p>Pronto! Boa Sorte!</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<h2>Edit:</h2>
<p>aproveitando o mesmo post para dar mais uma dica sobre o DatePicker, vamos deixar ele em <strong><span style="color: #0000ff;">português brasil</span></strong>:</p>
<pre class="brush: jscript;">
    // CONFIGURAÇÃO DO DATEPICKER DO JQUERYUI PARA PT-BR
    $.datepicker.setDefaults({dateFormat: 'dd/mm/yy',
                              dayNames: ['Domingo','Segunda','Terça','Quarta','Quinta','Sexta','Sábado','Domingo'],
                              dayNamesMin: ['D','S','T','Q','Q','S','S','D'],
                              dayNamesShort: ['Dom','Seg','Ter','Qua','Qui','Sex','Sáb','Dom'],
                              monthNames: ['Janeiro','Fevereiro','Março','Abril','Maio','Junho','Julho','Agosto','Setembro', 'Outubro','Novembro','Dezembro'],
                              monthNamesShort: ['Jan','Fev','Mar','Abr','Mai','Jun','Jul','Ago','Set', 'Out','Nov','Dez'],
                              nextText: 'Próximo',
                              prevText: 'Anterior'
                             });
</pre>
]]></content:encoded>
			<wfw:commentRss>http://diariodecodigos.info/2010/01/dica-jquery-ui-dialog-e-datepicker/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Dica: Criar Thumbnail</title>
		<link>http://diariodecodigos.info/2009/11/dica-criar-thumbnail/</link>
		<comments>http://diariodecodigos.info/2009/11/dica-criar-thumbnail/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 12:05:31 +0000</pubDate>
		<dc:creator>Alexandre Santos</dc:creator>
				<category><![CDATA[Dicas]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Images]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Thumbnail]]></category>

		<guid isPermaLink="false">http://diariodecodigos.info/?p=696</guid>
		<description><![CDATA[Com muita frequência precisamos em aplicativos web, criar Thumbs de fotos para visualização primária, e aqui vamos aprender uma simples dica de como fazer isso com PHP e C#. No PHP eu estou vendo que a libary GD está está ficando obsoleta e existe algo muito mais interessante toda feita em OO, e o nome]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a rel="attachment wp-att-697" href="http://diariodecodigos.info/2009/11/dica-criar-thumbnail/thumb/"><img class="aligncenter size-full wp-image-697" style="border: 1px solid black;" title="Thumb" src="http://diariodecodigos.info/wp-content/uploads/2009/11/Thumb.png" alt="Thumb" width="334" height="106" /></a></p>
<p>Com muita frequência precisamos em aplicativos web, criar Thumbs de fotos para visualização primária, e aqui vamos aprender uma simples dica de como fazer isso com PHP e C#.<span id="more-696"></span></p>
<p>No PHP eu estou vendo que a <strong>libary GD</strong> está está ficando obsoleta e existe algo muito mais interessante toda feita em OO, e o nome dessa magnífica extensão é <strong>ImageMagick</strong> e também temos o <strong>Gmagick</strong>.</p>
<p>Para fins de produção todos os servidores que eu tenho sites hospedado tem essa extensão, basta ter o php 5.x.x pra cima.</p>
<p>Vamos ao que interessa:</p>
<pre class="brush: php;">
// Aqui dizemos ao navegador que vamos ter uma saída diferente de text/html
// vamos ter um ouput de image/jpeg
header('Content-type: image/jpeg');

// criamos o objeto passando a imagem a ser tratada
$image = new Imagick('images/19-05-08_1925.jpg');

// usamos o método thumbnailImage para criar o Thumb
// O primeiro parâmetro é o width
// O segundo é o height
// se um dos parâmtros for zero ele mantem o
// aspect ratio original
$image-&amp;gt;thumbnailImage(100, 0);

// Mostra a Imagem
echo $image;
</pre>
<p>Agora com C#:</p>
<pre class="brush: csharp;">
//Define variáveis
System.Drawing.Image imagem;
System.Drawing.Image thumb;

//Recupera a imagem original
imagem = System.Drawing.Image.FromFile(&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;quot;CAMINHO_ARQUIVO&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;quot;);

//Aqui é feita a renderização proporcional da altura da imagem
//tomando por base que o largura final dela é de 50px;
int width = 50;
int height;
height = (int)(width * imagem.Height) / imagem.Width;

//Gera a nova imagem reduzida
thumb = imagem.GetThumbnailImage(width, height, null, System.IntPtr.Zero);

//Salva a imagem
thumb.Save(&amp;quot;CAMINHO_THUMB&amp;quot;);
</pre>
<p>Ai está o seu Thumbs!</p>
<p>Fontes:</p>
<p>http://social.msdn.microsoft.com</p>
<p>http://www.php.net/manual/pt_BR/function.imagick-thumbnailimage.php</p>
<p>P.S.:</p>
<p>Você pode usar essas ferramentas para fazer resizer da image utilizando a seguinte ferramenta:  <a href="http://www.defusion.org.uk/demos/060519/cropper.php?demoType=minDimensions&amp;image=castle&amp;formSubmit=Load+demo" target="_blank">http://www.defusion.org.uk/demos/060519/cropper.php?demoType=minDimensions&amp;image=castle&amp;formSubmit=Load+demo</a></p>
]]></content:encoded>
			<wfw:commentRss>http://diariodecodigos.info/2009/11/dica-criar-thumbnail/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Dica: Readability &#8211; Revolucione Suas Leituras On-Line</title>
		<link>http://diariodecodigos.info/2009/10/dica-readability-revolucione-suas-leituras-on-line/</link>
		<comments>http://diariodecodigos.info/2009/10/dica-readability-revolucione-suas-leituras-on-line/#comments</comments>
		<pubDate>Sun, 18 Oct 2009 02:20:59 +0000</pubDate>
		<dc:creator>Alexandre Santos</dc:creator>
				<category><![CDATA[Dicas]]></category>
		<category><![CDATA[readability]]></category>

		<guid isPermaLink="false">http://diariodecodigos.info/?p=594</guid>
		<description><![CDATA[Posto aqui para vocês uma bela dica, de um &#8220;programinha danado de útil&#8221;. Trata-se do Readability, um pequeno aplicativo feito em Javascript, e desenvolvido pela empresa Arc90, que transforma completamente sua vida de leituras na frente do computador. A instalação é simples: basta acessar a página http://lab.arc90.com/experiments/readability/, selecionar as opções de estilo, tamanho e margem]]></description>
			<content:encoded><![CDATA[<p><a rel="attachment wp-att-610" href="http://diariodecodigos.info/2009/10/dica-readability-revolucione-suas-leituras-on-line/read_logo/"><img class="alignleft size-full wp-image-610" style="border: 1px solid black; margin-left: 2px; margin-right: 2px;" title="Readability" src="http://diariodecodigos.info/wp-content/uploads/2009/10/read_logo.jpg" alt="Readability" width="184" height="48" /></a>Posto aqui para vocês uma bela dica, de um &#8220;programinha danado de útil&#8221;. Trata-se do Readability, um pequeno aplicativo feito em Javascript, e desenvolvido pela empresa Arc90, que transforma completamente sua vida de leituras na frente do computador.</p>
<p><span id="more-594"></span>A instalação é simples: basta acessar a página <a href="http://lab.arc90.com/experiments/readability/">http://lab.arc90.com/experiments/readability/</a>, selecionar as opções de estilo, tamanho e margem (você pode verificar seu gosto pelo exemplo logo abaixo, que se atualiza em tempo real), e arrastar o botão &#8220;Readability&#8221;, do lado direito da tela, para a barra de links do Firefox, ou clicar com o botão direito nele e &#8220;Adicionar aos favoritos&#8221;.</p>
<p style="text-align: center;"><a href="http://diariodecodigos.info/wp-content/uploads/2009/10/readadbility-home.jpeg" target="_blank"><img class="aligncenter size-full wp-image-595" style="border: 1px solid black;" title="readadbility-home" src="http://diariodecodigos.info/wp-content/uploads/2009/10/readadbility-home.jpeg" alt="readadbility-home" width="600" height="272" /></a></p>
<p>ele remove os estilos, aumenta a fonte, aumenta o espaço entre as linhas, aumenta as margens e deixa a página quinhentas vezes melhor para ler online. Uma beleza mesmo.&#8221;</p>
<p>Veja como fica, por exemplo, usando a página do &#8220;<a title="Zend Controller" href="http://diariodecodigos.info/zend/ptBR/zend.controller.basics.html" target="_blank">Básico &#8211; Zend Controller</a>&#8221; :</p>
<p style="text-align: center;"><a href="http://diariodecodigos.info/wp-content/uploads/2009/10/readability1.jpg" target="_blank"><img class="aligncenter size-full wp-image-598" style="border: 1px solid black;" title="readability" src="http://diariodecodigos.info/wp-content/uploads/2009/10/readability1.jpg" alt="readability" width="474" height="241" /></a></p>
<p style="text-align: left;">Não obstante, se você também adicionar aos favoritos uma configuração do Readability com letras e margens menores, fica uma beleza para imprimir e ler, por exemplo, no trem ou ônibus: economiza tinta e facilita (muito) a leitura. Para imprimir basta clicar no segundo botão que aparece quando o programinha está ativado.</p>
<p style="text-align: left;">Boa leitura!</p>
<address style="text-align: right;">Este post foi uma replicação do <a title="Guia do Hardware" href="http://www.guiadohardware.net/noticias/2009-10/4AD8F980.html" target="_blank">GDH</a><br />
</address>
]]></content:encoded>
			<wfw:commentRss>http://diariodecodigos.info/2009/10/dica-readability-revolucione-suas-leituras-on-line/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dica: Extensões Firefox</title>
		<link>http://diariodecodigos.info/2009/10/dica-extensoes-firefox/</link>
		<comments>http://diariodecodigos.info/2009/10/dica-extensoes-firefox/#comments</comments>
		<pubDate>Wed, 07 Oct 2009 12:38:23 +0000</pubDate>
		<dc:creator>Alexandre Santos</dc:creator>
				<category><![CDATA[Dicas]]></category>
		<category><![CDATA[firefox]]></category>

		<guid isPermaLink="false">http://diariodecodigos.info/?p=512</guid>
		<description><![CDATA[Dicas de boas extensões para o Firefox.]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-513" style="border: 1px solid black; margin: 0px 5px 5px 5px;" title="Firefox" src="http://diariodecodigos.info/wp-content/uploads/2009/10/images.jpeg" alt="Firefox" width="118" height="118" /> Tudo bem, firefox ta um devorador de memória, mas ainda assim é um dos melhores e as extensões fazem muita falta!</p>
<p>Tive um problema de perfil corrompido (isso é chato), sabe quando o botão de voltar do firefox não funciona? Isso meu querido! seu perfil também foi para o espaço e o melhor a fazer é deletar e criar um novo.</p>
<p><span id="more-512"></span>O problema é que depois de criado, você perde todas as suas extensões, favoritos e etc.</p>
<p>Caso esse problema aconteça contigo, feche todas as janelas do firefox e inicie com o comando:</p>
<pre class="brush: bash;">
firefox -p
</pre>
<p>Serve para Linux e  Windows, delete o perfil atual e crie um novo, agora vamos ao sofrimento de instalar todas as extensões novamente!</p>
<p>Segue as extensões que eu uso no meu dia a dia:</p>
<ol>
<li><strong>Xmarks </strong>- <a title="Xmarks" href="http://www.xmarks.com/" target="_blank">http://www.xmarks.com/</a><br />
Faça backup dos seus favoritos em um servidor na internet e sincronize quando e onde quiser.</li>
<li><strong>Read It Later</strong> &#8211; <a title="Read It Later" href="http://readitlaterlist.com/firefox/" target="_blank">http://readitlaterlist.com/firefox/</a><br />
Marque páginas na internet para ler mais tarde, faz uma excelente dupla com o <strong>Xmarks</strong>.</li>
<li><strong>Firebug</strong> &#8211; <a title="Firebug" href="https://addons.mozilla.org/pt-BR/firefox/addon/1843" target="_blank">https://addons.mozilla.org/pt-BR/firefox/addon/1843</a><br />
Acho que dispensa comentários, todo desenvolvedor web tem que ter, se você não conhece ou não tem, ta esperando o que pra instalar?</li>
<li><strong>Web Developer</strong> &#8211; <a title="Web Developer" href="https://addons.mozilla.org/pt-BR/firefox/addon/60" target="_blank">https://addons.mozilla.org/pt-BR/firefox/addon/60</a><br />
Muito bom para desenvolvedores também.</li>
<li><strong>HttpFox</strong> &#8211; <a title="HttpFox" href="https://addons.mozilla.org/pt-BR/firefox/addon/6647" target="_blank">https://addons.mozilla.org/pt-BR/firefox/addon/6647</a><br />
Monitora todo o tráfico de entrada e saída no protocolo HTTP.</li>
<li><strong>ScreenGrab</strong> &#8211; <a title="ScreenGrab" href="https://addons.mozilla.org/pt-BR/firefox/addon/1146" target="_blank">https://addons.mozilla.org/pt-BR/firefox/addon/1146</a><br />
Tira um screenshot completo da página visitada, muito legal.</li>
<li><strong>CollorZilla</strong> &#8211; <a title="ColorZilla" href="https://addons.mozilla.org/pt-BR/firefox/addon/271" target="_blank">https://addons.mozilla.org/pt-BR/firefox/addon/271</a><br />
Extrai cor de elementos da web em vários padrões como hexadecimal, RGB e etc.</li>
<li><strong>FlagFox</strong> &#8211; <a title="FlagFox" href="https://addons.mozilla.org/pt-BR/firefox/addon/5791" target="_blank">https://addons.mozilla.org/pt-BR/firefox/addon/5791</a><br />
Mostra uma bandeira do país de localização do servidor do site acessado.</li>
<li><strong>FireFTP</strong> &#8211; <a title="FireFTP" href="https://addons.mozilla.org/pt-BR/firefox/addon/684" target="_blank">https://addons.mozilla.org/pt-BR/firefox/addon/684</a><br />
Já usei 300 mil clientes FTP de todos os tipos e gostos, mas nunca gostei de nenhum, esse também não gosto muito, mas é bom, recomendo.</li>
<li><strong>Dicionário pt-BR</strong> &#8211; <a title="pt-BR" href="https://addons.mozilla.org/pt-BR/firefox/addon/3257" target="_blank">https://addons.mozilla.org/pt-BR/firefox/addon/3257</a><br />
Mt bon pra qem escrev tudo erado commo nós.</li>
<li><strong>ForecastFox</strong> &#8211; <a title="ForecastFox" href="https://addons.mozilla.org/pt-BR/firefox/addon/398" target="_blank">https://addons.mozilla.org/pt-BR/firefox/addon/398</a><br />
Legal para colocar a previsão do tempo no navegador, gosto muito.</li>
</ol>
<p>Bem&#8230; essas são todas extensões que eu lembro, se eu lembrar ou conhecer alguma outra extensão interessante vou atualizando.</p>
<p>Caso  alguém tenha alguma extensão muito interessante que vale a pena colocar nessa lista, pode comentar.</p>
<p>Abraços.</p>
<p><span style="color: #ff0000;"><strong>EDIT:</strong></span></p>
<p>Segue mais alguns plugins importantes:</p>
<ul>
<li><strong>JSONView</strong> &#8211; <a title="JSONView" href="https://addons.mozilla.org/en-US/firefox/addon/10869/" target="_blank">https://addons.mozilla.org/en-US/firefox/addon/10869/</a><br />
Muito útil para visualizar JSON no navegador com sintax highliter</li>
<li><strong>Drupal For Firebug</strong> &#8211; <a href="https://addons.mozilla.org/en-US/firefox/addon/8370" target="_blank">https://addons.mozilla.org/en-US/firefox/addon/8370</a><br />
Faz debugação do Drupal (precisa de um módulo instalado no Drupal) mostra o processamento de um node, execução de Querys SQL etc.</li>
<li><strong>Cache Status</strong> &#8211; <a href="https://addons.mozilla.org/en-US/firefox/addon/1881" target="_blank">https://addons.mozilla.org/en-US/firefox/addon/1881</a><br />
Visualização da quantidade de memória que o Firefox está usando para o cache na sua toolbar, e você pode com um simples clique limpar esse cache.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://diariodecodigos.info/2009/10/dica-extensoes-firefox/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

