Login

DiggBarMiddleware

Author:
teepark
Posted:
April 9, 2009
Language:
Python
Version:
1.0
Score:
3 (after 3 ratings)

give diggbar users something to think about

(http://daringfireball.net/2009/04/how_to_block_the_diggbar)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
import re

from django.http import HttpResponseRedirect


class DiggBarMiddleware(object):
    diggbar_regex = re.compile("http://digg.com/\w{1,8}/?")
    rickroll = "http://www.youtube.com/watch?v=oHg5SJYRHA0"

    def process_request(self, request):
        if self.diggbar_regex.match(request.META.get('HTTP_REFERER', '')):
            return HttpResponseRedirect(self.rickroll)

More like this

  1. Template tag - list punctuation for a list of items by shapiromatron 2 months ago
  2. JSONRequestMiddleware adds a .json() method to your HttpRequests by cdcarter 2 months, 1 week ago
  3. Serializer factory with Django Rest Framework by julio 9 months, 1 week ago
  4. Image compression before saving the new model / work with JPG, PNG by Schleidens 9 months, 4 weeks ago
  5. Help text hyperlinks by sa2812 10 months, 3 weeks ago

Comments

webology (on April 9, 2009):

Fantastic idea!

#

romain-hardouin (on April 10, 2009):

diggbar is a kinda "back to the future", it just sucks.

Nice snippet but what the hell is this song ! lol

#

izibi (on April 10, 2009):

The code is wrong!

Line 11 should be:

if 'HTTP_REFERER' in request.META and self.diggbar_regex.match(request.META['HTTP_REFERER']):

#

teepark (on April 10, 2009):

nice catch izibi, thanks. fixed

#

Please login first before commenting.