Skip to content

Instantly share code, notes, and snippets.

View docteurklein's full-sized avatar

Florian Klein docteurklein

View GitHub Profile
@docteurklein
docteurklein / UniversalClassLoaderChecker.php
Created April 28, 2011 07:35
a class to check classLoader configuration
<?php
namespace Symfony\Component\ClassLoader;
class UniversalClassLoaderChecker
{
public function check(UniversalClassLoader $classLoader)
{
return array_merge(
$this->checkNamespaces($classLoader),
@docteurklein
docteurklein / browser_types.xml
Created May 1, 2011 15:25
phantomJS config for sahi
<browserTypes>
<browserType>
<name>phantomjs</name>
<displayName>PhantomJS</displayName>
<icon>chrome.png</icon>
<path>/opt/phantomjs/bin/phantomjs</path>
<options>--proxy=localhost:9999 /opt/phantomjs/null.js</options>
<processName>phantomjs.sh</processName>
<capacity>5</capacity>
@docteurklein
docteurklein / sub.sh
Created May 10, 2011 21:43
init submodules from a .gitmodules file
#!/bin/bash
for cfg in `git config -f .gitmodules -l`
do
url=`echo $cfg | awk -F"submodule.*.url=" '{print $2}'`;
if [ -n "$url" ]; then
echo "git submodule add $url $path";
git submodule add $url $path;
@docteurklein
docteurklein / update_core_config.sh
Created June 15, 2011 15:34
update_core_config.sh
#!/bin/sh
if test -z "$1"
then
echo "Please give database name"
echo "Usage: $0 <db_name> <URL>"
return
fi
if test -z "$2"
@docteurklein
docteurklein / sahi_step.json
Created July 2, 2011 21:55
corresponding sahi step of: When I fill in "knplabs-translator-value" with "It's alive, ALIVE!"
{'origStep':+"_sahi._setValue(_sahi._byXPath(\"(.//*[self::input+|+self::textarea+|+self::select][not(./@type+=+'submit'+or+./@type+=+'image'+or+./@type+=+'hidden')][(((./@id+=+'knplabs-translator-value'+or+./@name+=+'knplabs-translator-value')+or+./@id+=+//label[contains(normalize-space(string(.)),+'knplabs-translator-value')]/@for)+or+./@placeholder+=+'knplabs-translator-value')]+|+.//label[contains(normalize-space(string(.)),+'knplabs-translator-value')]//.//*[self::input+|+self::textarea+|+self::select][not(./@type+=+'submit'+or+./@type+=+'image'+or+./@type+=+'hidden')])[1]\"),+\"It's+alive,+ALIVE!\")",+'step':+"_sahi._setValue(_sahi._byXPath(\"(.//*[self::input+|+self::textarea+|+self::select][not(./@type+=+'submit'+or+./@type+=+'image'+or+./@type+=+'hidden')][(((./@id+=+'knplabs-translator-value'+or+./@name+=+'knplabs-translator-value')+or+./@id+=+//label[contains(normalize-space(string(.)),+'knplabs-translator-value')]/@for)+or+./@placeholder+=+'knplabs-translator-value')]+|+.//label[contains(normalize
<?php
use Symfony\Component\HttpKernel\Kernel;
use Symfony\Component\Config\Loader\LoaderInterface;
use Symfony\Component\Finder\Finder;
class SmartKernel extends Kernel
{
public function registerBundles()
{
<?php
use Symfony\Component\HttpKernel\Event\GetResponseForExceptionEvent;
/**
* a vim exception handler
*
* Commands a remote vim instance to display the stacktrace in a quickfix list
*
* @author Florian Klein <florian.klein@free.fr>
<!DOCTYPE html>
<html>
<head>
<script src="video-js/video.js" type="text/javascript" charset="utf-8"></script>
<link rel="stylesheet" href="video-js/video-js.css" type="text/css" media="screen" title="Video JS" charset="utf-8" />
</head>
<body>
<!-- Begin VideoJS -->
<div class="video-js-box">
<!-- Using the Video for Everybody Embed Code http://camendesign.com/code/video_for_everybody -->
@docteurklein
docteurklein / extract.sh
Created December 2, 2011 16:43
extract non translated sentences in twig templates
find . -type f -name "*.html.twig" | xargs perl -pi -e "s/>([^\s<{>].*?)</>{{ '\1'|trans }}</g"
@docteurklein
docteurklein / PropelCollectionType.php
Created December 19, 2011 16:55
avoid errors when binding empty propel collection to a symfony2 form
<?php
$callback = function($data = null) {
if (empty($data)) {
return new \PropelObjectCollection();
}
return $data;
};
$builder
->appendClientTransformer(new CallbackTransformer($callback, $callback));