Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@jeffkistler
jeffkistler / mock_redis.py
Created October 24, 2012 17:39
Mock Redis
import time
import inspect
from redis.exceptions import ResponseError
class MockRedis(object):
def __init__(self, database=None):
self.database = database or {}
def _set(self, key, value, ttl=None):
self.database[key] = (value, time.time(), ttl)
@jeffkistler
jeffkistler / control_flow.py
Created October 7, 2011 01:24
Control flow graph building visitor for JavaScript.
"""
An abstract syntax tree visitor for building control flow graphs for ECMAScript
programs and functions.
"""
from bigrig.visitor import NodeVisitor
from bigrig.node import Node
from bigrig import ast
from .graph import Digraph
@jeffkistler
jeffkistler / dozer_server.py
Created June 1, 2011 20:40
Django Dozer runserver command.
from django.core.management.commands.runserver import BaseRunserverCommand
from django.conf import settings
from dozer import Dozer
class Command(BaseRunserverCommand):
def get_handler(self, *args, **options):
"""
Returns the normal handler wrapped in a warm Dozer embrace.
"""
@jeffkistler
jeffkistler / filters.py
Created May 25, 2011 05:12
Django Class-Based View Mixins
from django_filters.filterset import FilterSet, FilterSetMetaclass
def filterset_factory(model, filterset=FilterSet, fields=None, exclude=None,
filter_for_field=None):
"""
Build a ``FilterSet`` class for a specified model with the specified
options.
"""
attrs = {'model': model}
if fields is not None:
@jeffkistler
jeffkistler / geojson.py
Created May 11, 2011 20:30
GeoJSON Django GeoQuerySet Serializer
try:
from cStringIO import StringIO
except ImportError:
from StringIO import StringIO
import datetime
import decimal
from django.core.serializers.python import Serializer as PythonSerializer
from django.core.serializers.json import DjangoJSONEncoder
from django.utils.encoding import is_protected_type, smart_unicode
@jeffkistler
jeffkistler / verbatim.py
Created April 15, 2011 01:09
Template tag for passing through template code.
from django import template
register = template.Library()
TOKEN_PAIRS = {
template.TOKEN_VAR: (template.VARIABLE_TAG_START, template.VARIABLE_TAG_END),
template.TOKEN_BLOCK: (template.BLOCK_TAG_START, template.BLOCK_TAG_END),
template.TOKEN_COMMENT: (template.COMMENT_TAG_START, template.COMMENT_TAG_END),
}
@jeffkistler
jeffkistler / translation.py
Created March 10, 2011 20:50
Template translation helpers.
from django import template
from django.conf import settings
if settings.USE_I18N:
from django.utils.translation.trans_real import translation
def get_translation(msgid, lang):
t = translation(lang)
return t.gettext(msgid)
else:
def get_translation(msgid, lang):
@jeffkistler
jeffkistler / login_form.html
Created March 9, 2011 20:39
A generic Django authentication form template.
{% comment %}
Include this template from your site base template like so:
{% if user.is_anonymous %}
{% include "login_form.html" %}
{% endif %}
{% endcomment %}
{% load i18n %}
@jeffkistler
jeffkistler / index.html
Created November 10, 2010 20:28
Highlight some text.
<!DOCTYPE html>
<html>
<head>
<title>Oh snap!</title>
<style>
* {
font: 1em monospace;
}
</style>
</head>