Skip to content

Instantly share code, notes, and snippets.

View jpetitcolas's full-sized avatar

Jonathan Petitcolas jpetitcolas

View GitHub Profile
@jpetitcolas
jpetitcolas / array-manipulation.js
Created November 19, 2013 08:44
Array manipulation in Javascript
// Remove an element at desired index
a.splice(desiredIndex, 1);
// Add an element at given index
a.splice(desiredIndex, 0, "My new element");
@jpetitcolas
jpetitcolas / parse.php
Created October 2, 2013 07:06
Parse XML namespaced elements
$sitemap = new \DOMDocument();
$sitemap->loadXml($feedGenerator->generate());
$xpath = new \DOMXPath($sitemap);
$xpath->registerNamespace('image', 'http://www.google.com/schemas/sitemap-image/1.1');
$image = $xpath->evaluate('//image:image');
@jpetitcolas
jpetitcolas / changeset.php
Created September 19, 2013 08:24
Detecting a property change on Doctrine2 listener
private function updateLastUpdateDate(LifecycleEventArgs $eventArgs)
{
$changeSet = $eventArgs->getEntityManager()->getUnitOfWork()->getEntityChangeSet($this);
if (!array_key_exists('status', $changeSet)) {
return;
}
// $statusBefore = $changeSet['status'][0];
// $statusAfter = $changeSet['status'][1];
}
@jpetitcolas
jpetitcolas / vbox-additions.sh
Created August 28, 2013 10:21
How to install Virtual Box addition tools for Debian?
apt-get install build-essential module-assistant
m-a prepare
# Install Guest Additions from VBox menu
mount /media/cdrom
sh /media/cdrom/VBoxLinuxAdditions.run
@jpetitcolas
jpetitcolas / new_gist_file
Created August 1, 2013 07:35
Remember a passphrase in CLI mode
ssh-agent bash
ssh-add
@jpetitcolas
jpetitcolas / smb.conf
Created July 31, 2013 08:25
Configuration of Samba share for Web dev between VM and host machine. Do not forget to change "guest account" and "dev" path. ;)
#
# Sample configuration file for the Samba suite for Debian GNU/Linux.
#
#
# This is the main Samba configuration file. You should read the
# smb.conf(5) manual page in order to understand the options listed
# here. Samba has a huge number of configurable options most of which
# are not shown in this example
#
# Some options that are often worth tuning have been included as
@jpetitcolas
jpetitcolas / install.sh
Created July 18, 2013 07:04
Install PostGreSQL
# Install PostGreSQL
sudo apt-get install postgresql
# Create user
sudo -i -u postgres
psql
CREATE USER username;
ALTER ROLE username WITH CREATEDB;
# Create database
@jpetitcolas
jpetitcolas / new_gist_file
Created July 15, 2013 18:03
Install Composer in /usr/local/bin
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/
sudo ln -s /usr/local/bin/composer.phar /usr/local/bin/composer
@jpetitcolas
jpetitcolas / gist:5967887
Created July 10, 2013 16:37
Encode/decode a base64 encoded string in PostGreSQL
-- Decoding
SELECT CONVERT_FROM(DECODE(field, 'BASE64'), 'UTF-8') FROM table;
-- Encoding
SELECT ENCODE(CONVERT_TO(field, 'UTF-8'), 'base64') FROM table;
@jpetitcolas
jpetitcolas / gist:5898951
Created July 1, 2013 07:22
Delete GIT merged local branches
git branch --merged | grep -v "\*" | xargs -n 1 git branch -d