Testing Stripe webhooks when using Laravel Cashier

I’m not sure why this is not in the docs, but if you’re using Laravel Cashier and want to test Stripe webhooks – in test, not live, mode – you have to set the following env var:

CASHIER_ENV=testing

I’ve spent some time checking around my code until I found that.

Advertisements

Simple Gallery now as a jQuery plugin

One year ago I wrote a very simple image gallery script, based on jQuery. Now I updated it and completely rewrote it as a jQuery plugin. The code is available on GitHub: https://github.com/straube/simple-gallery

Photo credit: Jessica Ruscello

Propel ModelCriteria : leftJoin + useQuery

When using leftJoin and useQuery from a ModelCriteria (Query class), you can set the join type, this way:

// ...
->leftJoinFoo()
->useFooQuery(null, \Criteria::LEFT_JOIN)
// ...
->endUse()
// ...

 

Forms no Symfony2 : Validando apenas os campos submetidos

No último post, sobre CRUDs RESTful com Symfony2, uma das características do código de exemplo era usar o método PUT na atualização do objeto. Seguindo isso, estive fazendo algumas exeperiências com o mesmo form do Symfony na criação e atualização. No caso do update, gostaria de enviar apenas os campos a serem alterados (em um objeto que tenha ‘id‘, ‘title‘, ‘description‘ e ‘date‘ como atributos, por exemplo), assim:

$ curl -X PUT -d "title=Testando a atualizacao" http://localhost:8000/api/resources/123

Então descobri que o método que substitui o bind a partir da versão 2.3 do Symfony, tem um segundo parâmetro para indicar se os campos não enviados devem ou não ser limpos, se não forem, terão o valor do objeto original mantido:

$clearMissing = 'PUT' !== $request->getMethod();
$form->submit($request, $clearMissing);

Simples assim!

Falha inexplicável (ou não) no composer install

Quando você vir falhas inexplicáveis (gerando exceções) ao executar o composer install, verifique se a opção apc.enable_cli, do PHP, não está ativada.

Correção de bug no AvalancheImagineBundle

O AvalancheImagineBundle é um bundle super útil para o Symfony2. Ele adiciona funções de geração de thumbnails com caching ao framework. Porém, dependendo da estrutura de diretório e do número de requisições da aplicação, dois problemas podem acontecer:

  1. loop infinito de redirects; e
  2. bug na criação recursiva de diretórios devido a concorrência.

Para resolver essas situações em um projeto de Classificados da Gazeta do Povo, precisamos alterar o core do bundle e, ontem, nosso pull request foi aceito: https://github.com/avalanche123/AvalancheImagineBundle/pull/160.

Se você usa o AvalancheImagineBundle, atualize para última versão e evite esses erros.

Declarando arrays em shell script, no bash

Apenas uma referência básica de declaração de arrays em shell script, no bash. Em relação ao uso, existem várias formas e possibilidades.

Exemplo com strings:

nomes=( "Esse" "Aquele" "Outro" )

Exemplo com inteiros:

ids=( 1 2 3 4 5 6 7 )