Plugins do Firefox que facilitam o desenvolvimento web

Estes são os plugins do Firefox que utilizo hoje. (no Ubuntu)

Firebug

Web Developer

ColorZilla

Dica sobre o ColorZilla:
ixe os binários do site mozilla.com, e copie “por cima” dos arquivos do firefox que já vem instalado no ubuntu (isto vale tanto para a versão 1.5.* quanto para a versão 2.0 do firefox)

cd

tar zxvf [arquivo_binario_firefox].tar.gz

sudo cp ./firefox/* /usr/lib/firefox

Fonte da dica: http://revolucao.etc.br/archives/versao-definitiva-do-mozilla-firefox-20-disponivel-para-download-agora-mesmo/

Solução para problema de style.top e style.left no Firefox

Você criou uma div bonitinha dinamicamente via Javascript, setou altura e tudo mais dinamicamente, para ficar perto de um elemento qualquer na página, e funcionou no Internet Explorer mas no Firefox não? Simples, é só setar a unidade de medida. Sem a unidade de medida o Internet Explorer interpreta como px(pixels), mas o Firefox não.

Exemplo:

function CriarDiv(fComponenteQueChamou)
{
var nova_div = document.createElement('div');
var corpo = document.getElementBytagName('body);
with( nova_div )
{
style.top = fComponenteQueChamou.offsetTop+20;
style.left = fComponenteQueChamou.offsetLeft+10;
innerHTML += 'Um texto qualquer';
style.backgroundColor = 'red';
style.position = 'absolute';
}
corpo[0].appendChild(nova_div);
}

O exemplo acima funciona maravilhosamente bem no Internet Explorer, mas no Firefox não.

Para funcionar no Firefox altere as seguintes linhas:

style.top = fComponenteQueChamou.offsetTop+20+'px';
style.left = fComponenteQueChamou.offsetLeft+10+'px';

Pronto…funcionando certinho no IE e no Firefox.
Eu usei a criação de div’s dinâmicas em um recurso de busca incremental. Outro dia posto um passo-a-passo sobre como criar uma busca incremental utilizando JSON. Muito legal.

Atualização do artigo: Resolvi colocar aqui a solução de um problema que muitos desenvolvedores enfrentam. Se você utilizar offsetTop em um elemento dentro de uma table, ele retorna o top em relação ao table, e não em relação à página.
Um exemplo: Vamos imaginar que você quer posicionar uma div bem aonde o usuário clicou dentro de uma tabela:

Exemplo da tabela:

<table>
<thead>
<th>Coluna1</th>
</thead>
<tbody>
<tr>
<td onclick="PosicionaDiv(this);"> Conteudo da coluna 1</td>
</tr>
</tbody>
</table>

E a função javascript será essa:

function PosicionaDiv(fOwner)
{
var minha_div = document.getElementById('minha_div') ;
var altura_da_celula = fOwner.offsetTop;
var altura_da_tabela = fOwner.parentNode.parentNode.parentNode.offsetTop ;
minha_div.style.top = (altura_da_celula+altura_da_tabela)+'px'
}

Qualquer dúvida é só postar aí nos comentários.

Fazendo backup e restaurando via linha de comando

Fazer backup ou restauração via linha de comando é muito útil quando necessitamos automatizar tarefas, como fazer um backup automático e logo em seguida gravar em CD ou DV, ou mesmo enviar via FTP para outro servidor.

Abaixo listo alguns exemplos de comandos, tomando como exemplo que a senha do usuário root do MySQL seja 123:

Extrair estrutura e dados de todos as bases de dados do seu mysql para o arquivo backup_banco.sql

mysqldump -u root -p123 --all-databases > backup_banco.sql


Extrair extrutura e dados de um banco somente, neste exemplo o banco banco_exemplo:

mysqldump -u root -p123  --database banco_exemplo > backup_banco.sql

E para restaurar o banco de dados extraído anteriormente, utilize:

mysql -u root -p123 -h localhost banco_exemplo < backup_banco.sql

Instalando Internet Explorer no Ubuntu 7.10 (IE4Linux)

Para quem desenvolve aplicativos web, e não pode se dar ao luxo de ignorar o comportamento de seu site/software no Microsoft Internet Explorer, recomendo a instalação do IE4Linux. Abaixo o link do artigo de Duda Nogueira explicando passo a passo a instalação.

http://planeta.ubuntubrasil.org/post/1352

Eu testei este artigo no Ubuntu 7.10 e funcionou corretamente com o instalador gráfico. No instalador modo texto não consegui instalar.

Vídeo interessante sobre acessibilidade – Seu site é acessível?

Vídeo muito interessante sobre acessibilitade – Seu site é acessível?

Fonte: pinceladasnaweb.com.br

Dialplan para Linksys com asterisk ou discOS

Pessoal.

Para preencher uma lacuna na configuração do disc-Os, onde não é possível setar um dialplan dinâmico, desenvolvi este dialplan simples e direto para ser utilizado no ATA. No meu caso um Linksys PAP2.
O dialplan que utilizo para meus ramais é o seguinte:

(<:041>[2-9]xxxxxxxS0|2-9]xxxS0|[0]xxxxxxxxxxS0)

Explicando:

1a. parte: <:041>[2-9]xxxxxxxS0|
Se o usuário digitar no seu telefone uma seqüencia de 8 dígitos, sendo o primeiro dígito entre 2 e 9, então ele coloca o 041 automaticamente. Exemplo: Se digitar 33338888 este dialplan dará a saída 04133338888

2a. parte: [2-9]xxxS0
Se o usuário digitar no seu telefone uma seqüencia de 4 dígitos, sendo o primeiro dígito de 2 a 9, então ele disca do jeito que foi digitado. Isto é para não ter problemas em discar para outro ramal do seu asterisk ou discOS. Exemplo: Se eu digitar 2003 este dialplan dará a saída 2003, chamando o ramal 2003 do seu pbx.

3a. parte: [0]xxxxxxxxxxS0
Se o usuário digitar uma seqüencia de 11 dígitos, sendo o primeiro dígito 0(zero), então ele disca do jeito que foi digitado. Exemplo: Se digitar 04133338888, este dialplan dará a saída 04133338888, chamando uma ligação de longa distância no seu pbx.

Espero que seja útil para quem estiver lendo este post. Qualquer dúvida é só comentar.

Utilizando Voip Skype Out em rede celular Vivo CDMA

 Desde que comprei meu smartphone Nokia E61, venho pesquisando planos de dados para celulares. Minha intenção é fazer e receber ligações via VoIP de qualquer lugar.

Nesta minha busca, descobri que a operadora Claro  tem um plano de dados ilimitados, desde que você não ultrapasse 20Gb(hehe) , sendo um plano ilimitado limitado *rs

Verifiquei que a Vivo tem um plano de dados ilimitados por R$ 69,90,  mas você fica obrigado a adquirir também um pacote de 30 mensagens SMS por R$ 9,90. Até aí tudo bem.

Testando com  Skype Out

 No dia 05 de setembro de 2007, recebemos a visita de um consultor da Vivo, pois ficamos mais interessados no plano de dados  ilimitado deles.Ele trazia na  bolsa um smartphone Motorola MotoQ, com acesso a internet pela tecnologia EVDO. Tentamos instalar o skype pelo skype.com mas não aparece na lista de smartphones a marca Motorola. Dei uma pesquisada no Google e vi que era necessário baixar uma versão beta do Skype para rodar neste smartphone. Abortei!

Resolvi então instalar o software fring(o mesmo que uso no meu Nokia E61), que possibilita trocar mensagens com algumas redes de mensagens instantâneas a com o Skype. Loguei na rede skype através dele  e tentei fazer uma ligação SkypeOut, isto é, para um telefone comum. A ligação se completou e eu ouvia claramente a outra pessoa falando, mas a outra pessoa não conseguia me ouvir direito. Tentei esta mesma ligação mais 3 vezes, e todas as vezes ocorreu o mesmo problema.

Buscando uma solução para isso, descobri que o que importa para utilizar o Voip com sucesso é a  largura de banda e a latência. Infelizmente não pude testar nenhum dos dois. Mas no blog Garota Sem Fio ela descreve que consegue utilizar o Skype com sucesso algumas vezes. Talvez foi azar meu mesmo.

Dentro de alguns dias farei este mesmo teste com as operadoras TIM e Claro, e posto os resultados para vocês acompanharem.

Japonês desenhando com HTML

Essa choca quem programa! Desenho muito louco utilizando table…

Fonte: Blog c4blog

Ladrões aproveitam bug em caixas eletrônicos do Bradesco em Curitiba

Notícia publicada na CBN Curitiba:

Policiais da delegacia de Furtos e Roubos procuram pela quadrilha que rouba dinheiro de máquinas do Banco Bradesco. De acordo com o delegado Rubens Recalcati, que comanda as investigações, os roubos são bem diferentes do que a polícia está acostumada a ver.

Os ladrões cerram a frente da máquina, reiniciam o sistema de computador do caixa eletrônico e as notas de dinheiro que estão guardadas dentro do caixa são expelidas para fora e colocadas dentro de uma sacola. A polícia não revela quantas máquinas foram roubadas ou qual o valor levado pelos ladrões. 

   

Pegando texto de select com Javascript (combobox)

Para pegar o texto do item que o usuário selecionou, é só fazer:


var meu_select= document.getElementById('meu_select');
alert( combo_filtro_manual.options[combo_filtro_manual.selectedIndex].text );

Se quiser pegar o valor do item utilize:

var meu_select= document.getElementById('meu_select');
alert( combo_filtro_manual.options[combo_filtro_manual.selectedIndex].value);