qrurls/views.py
author Tero Marttila <terom@fixme.fi>
Wed, 14 Aug 2013 23:39:43 +0300
changeset 28 d1733c82c278
parent 19 0742539e94c3
child 33 b714115da724
permissions -rw-r--r--
migration for previous commit
from django.http import HttpResponse, HttpResponseRedirect, Http404
from django.shortcuts import render

from qrurls.models import URL, URLItem

def index (request) :
    urls = URL.objects.all()
    return render(request, 'qrurls/index.html', dict(
        urls    = urls,
    ))

def shorturl (request, shorturl=None, shorturl_id=None) :
    if shorturl :
        shorturl = shorturl.strip(' /')
        try :
            url = URL.objects.get(shorturl=shorturl)
        except URL.DoesNotExist :
            raise Http404()
    elif shorturl_id :
        shorturl_id = int(shorturl_id.strip(' /'))
        try :
            url = URL.objects.get(id=shorturl_id)
        except URL.DoesNotExist :
            raise Http404()
    else :
        raise Http404()

    # most recent
    url_item = url.active_item()
    
    if not url_item :
        raise Http404()
    
    return HttpResponseRedirect(url_item.get_absolute_url())