Skip to content

Instantly share code, notes, and snippets.

View leon's full-sized avatar

Leon Radley leon

View GitHub Profile
@leon
leon / slugify.java
Created March 29, 2012 07:54
Slugify
public class Slugify {
public static String slugify(String input) throws UnsupportedEncodingException {
if (input == null || input.length() == 0) return "";
String toReturn = normalize(input);
toReturn = toReturn.replace(" ", "-");
toReturn = toReturn.toLowerCase();
toReturn = URLEncoder.encode(toReturn, "UTF-8");
return toReturn;
}
@leon
leon / user.scala
Created April 20, 2012 04:55
Json mapper with enum
object Availability extends Enumeration {
val Free = Value("free")
val Busy = Value("busy")
val OOF = Value("oof")
val options = values.map(a => (a.toString -> a.toString.capitalize))(collection.breakOut)
}
case class User(
@Key("_id") id: ObjectId = new ObjectId,
@leon
leon / gollum.conf
Created May 9, 2012 11:45
Gollum Upstart script
#
# Install:
# install https://github.com/github/gollum
# in /srv/wiki do a git init
# add this script to /etc/init/gollum.conf
#
# Usage:
# start/stop/restart gollum
#
@leon
leon / TruncateHtmlExtension.php
Created June 2, 2012 11:25
Symfony 2 Twig Extension that truncates html and preserves tags
<?php
/**
Truncate Html string without stripping tags
register in Resources/config/services.yml with:
services:
truncatehtml.twig.extension:
class: Radley\TwigExtensionBundle\Extension\TruncateHtmlExtension
tags:
- { name: twig.extension }
@leon
leon / nginx.conf
Created June 29, 2012 16:34
Nginx PHP-FPM Symfony 2 minimal config
server {
listen 80;
server_name localhost;
root /home/website/web;
rewrite ^/app\.php/?(.*)$ /$1 permanent;
try_files $uri @rewriteapp;
location @rewriteapp {
@leon
leon / akka2spec.scala
Created October 8, 2012 06:35
Akka Specs2 Context
import org.specs2.mutable._
import org.specs2.time.NoTimeConversions
import akka.actor._
import akka.testkit._
import akka.util.duration._
/* A tiny class that can be used as a Specs2 'context'. */
abstract class AkkaTestkitSpecs2Support extends TestKit(ActorSystem())
with After
@leon
leon / index.html
Created November 6, 2012 07:19
RDFa html5
<!DOCTYPE html>
<html version="HTML+RDFa 1.1" lang="en">
@leon
leon / YamlEBeanConstructor.java
Created December 18, 2012 10:28
Play 2 EBean SnakeYaml Constructor
package utils;
import com.avaje.ebean.Ebean;
import org.yaml.snakeyaml.constructor.AbstractConstruct;
import org.yaml.snakeyaml.constructor.CustomClassLoaderConstructor;
import org.yaml.snakeyaml.nodes.Node;
import org.yaml.snakeyaml.nodes.ScalarNode;
import org.yaml.snakeyaml.nodes.Tag;
import java.util.regex.Matcher;
@leon
leon / SGBeanPersistController.java
Last active March 10, 2016 05:58 — forked from domdorn/SGBeanPersistController.java
@PrePersist @PostPersist functionality for EBean and Play Framework
package models.sgcore;
import com.avaje.ebean.event.BeanPersistAdapter;
import com.avaje.ebean.event.BeanPersistRequest;
import javax.annotation.PreDestroy;
import javax.persistence.*;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.HashMap;
@leon
leon / single-element-css3-double-fold-ribbon.css
Created January 30, 2013 12:29
CSS3 Double Fold Ribbon
/*
http://thecodeplayer.com/walkthrough/single-element-pure-css3-double-fold-ribbon
*/
/*Basic reset*/
* {margin: 0; padding: 0;}
html, body {height: 100%;}
body {