Skip to content

Instantly share code, notes, and snippets.

View gregmuellegger's full-sized avatar
🐐

Gregor Müllegger gregmuellegger

🐐
View GitHub Profile

Include Test

---

test_include.sh

@gregmuellegger
gregmuellegger / fields.py
Created April 23, 2014 13:46
A django.db.models.fields.EmailField that forces lower case letters.
'''
Taken from: https://code.djangoproject.com/ticket/17561#comment:7
'''
from django.db import models
class EmailField(models.EmailField):
def get_prep_value(self, value):
value = super(EmailField, self).get_prep_value(value)
@gregmuellegger
gregmuellegger / views.py
Created April 15, 2014 21:50
Easy to use mixin to get a paginated detail page using django's generic views.
from django.db.models import Q
from django.db.models.sql.query import get_order_dir
# Taken from: https://gist.github.com/dokterbob/1004216
def get_next_or_previous(qs, item, next=True):
"""
Get the next or previous object in the queryset, with regards to the
item specified.
"""
@gregmuellegger
gregmuellegger / jquery.formset.js
Created August 6, 2012 14:12
jquery.formset.js
(function ($) {
var updateElementIndex = function(el, prefix, ndx) {
var id_regex = new RegExp("(" + prefix + "-(\\d+|__prefix__))");
var replacement = prefix + "-" + ndx;
if ($(el).attr("for")) {
$(el).attr("for", $(el).attr("for").replace(id_regex, replacement));
}
if (el.id) {
el.id = el.id.replace(id_regex, replacement);
}
@gregmuellegger
gregmuellegger / validators.py
Created July 23, 2012 12:54
FileTypeValidator
import re
from django.core.exceptions import ValidationError
from django.utils.translation import ugettext_lazy as _
class FileTypeValidator(object):
error_message = _(u'Please upload a file of the correct type.')
def __init__(self, regex, error_message=None):
self.regex = re.compile(regex)
wopp = map sayIt [1..]
where woppln n | (mod n 7 == 0) = True
| ('7' `elem` show n) = True
| otherwise = False
sayIt n = (if woppln n then "wopp" else show n, if direction n > 0 then "right" else "left")
direction 1 = 1
direction n | woppln n = (-1) * direction (n-1)
| otherwise = direction (n-1)
main = do
@gregmuellegger
gregmuellegger / email_utils.py
Created April 25, 2012 10:22
send_template_email
# -*- coding: utf-8 -*-
import os
from django.core.mail import get_connection
from django.core.mail.message import EmailMessage
from django.conf import settings
from django.contrib.sites.models import Site
from django.template import Context, RequestContext
from django.template.loader import get_template
@gregmuellegger
gregmuellegger / proposal.rst
Created April 1, 2011 15:46
GSoC 2011 Proposal - Revised form rendering

GSoC 2011 Proposal - Revised form rendering

Hi my name is Gregor Müllegger. I'm a Computer Science student in Germany at the University of Augsburg currently in the fourth year of my studies. I first came to django shortly before 0.96 was released and a lots of awesomeness was introduced with the magic removal branch.

I'm also doing some django freelancing work since 2008 to finance my studies and attended DjangoCon EU in 2010. This year I would like to apply to

from django.core.exceptions import PermissionDenied
from django.contrib import admin
from crm.models import Customer
class ReadPermissionModelAdmin(admin.ModelAdmin):
def has_change_permission(self, request, obj=None):
if getattr(request, 'readonly', False):
return True
return super(ReadPermissionModelAdmin, self).has_change_permission(request, obj)