qrurls/views.py
author Tero Marttila <terom@fixme.fi>
Mon, 15 Jul 2013 23:29:23 +0300
changeset 16 523b3e9eddfa
parent 12 7605af83cb14
child 19 0742539e94c3
permissions -rw-r--r--
fixbug modelget item upcoming
2
e838dda048a6 qrurls: basic functionality
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
     1
from django.http import HttpResponse, HttpResponseRedirect, Http404
12
7605af83cb14 add qrurls index
Tero Marttila <terom@fixme.fi>
parents: 7
diff changeset
     2
from django.shortcuts import render
2
e838dda048a6 qrurls: basic functionality
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
     3
e838dda048a6 qrurls: basic functionality
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
     4
from qrurls.models import URL, URLItem
e838dda048a6 qrurls: basic functionality
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
     5
12
7605af83cb14 add qrurls index
Tero Marttila <terom@fixme.fi>
parents: 7
diff changeset
     6
def index (request) :
7605af83cb14 add qrurls index
Tero Marttila <terom@fixme.fi>
parents: 7
diff changeset
     7
    urls = URL.objects.all()
7605af83cb14 add qrurls index
Tero Marttila <terom@fixme.fi>
parents: 7
diff changeset
     8
    return render(request, 'qrurls/index.html', dict(
7605af83cb14 add qrurls index
Tero Marttila <terom@fixme.fi>
parents: 7
diff changeset
     9
        urls    = urls,
7605af83cb14 add qrurls index
Tero Marttila <terom@fixme.fi>
parents: 7
diff changeset
    10
    ))
7605af83cb14 add qrurls index
Tero Marttila <terom@fixme.fi>
parents: 7
diff changeset
    11
2
e838dda048a6 qrurls: basic functionality
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    12
def shorturl (request, shorturl) :
e838dda048a6 qrurls: basic functionality
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    13
    shorturl = shorturl.strip(' /')
e838dda048a6 qrurls: basic functionality
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    14
    try :
e838dda048a6 qrurls: basic functionality
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    15
        url = URL.objects.get(shorturl=shorturl)
e838dda048a6 qrurls: basic functionality
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    16
    except URL.DoesNotExist :
e838dda048a6 qrurls: basic functionality
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    17
        raise Http404()
e838dda048a6 qrurls: basic functionality
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    18
16
523b3e9eddfa fixbug modelget item upcoming
Tero Marttila <terom@fixme.fi>
parents: 12
diff changeset
    19
    # most recent
523b3e9eddfa fixbug modelget item upcoming
Tero Marttila <terom@fixme.fi>
parents: 12
diff changeset
    20
    url_item = url.active_item()
523b3e9eddfa fixbug modelget item upcoming
Tero Marttila <terom@fixme.fi>
parents: 12
diff changeset
    21
    
523b3e9eddfa fixbug modelget item upcoming
Tero Marttila <terom@fixme.fi>
parents: 12
diff changeset
    22
    if not url_item :
2
e838dda048a6 qrurls: basic functionality
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    23
        raise Http404()
e838dda048a6 qrurls: basic functionality
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    24
    
e838dda048a6 qrurls: basic functionality
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    25
    return HttpResponseRedirect(url_item.get_absolute_url())
e838dda048a6 qrurls: basic functionality
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    26