qmsk/pngtile/views.py
author Tero Marttila <terom@qmsk.net>
Sat, 04 Oct 2014 15:14:22 +0300
changeset 238 2c62e4d70619
parent 236 4ca68e4eb386
child 115 ac2608e5a0b6
permissions -rw-r--r--
qmsk.pngtile: views.index: show tree in nav, and items in content
from django import http
from django.shortcuts import render, redirect

from qmsk.pngtile import pngtile

import pypngtile

def index (request, name):
    store = pngtile.STORE

    try:
        tree  = store.tree(name)
        items = store.items(name)
    except pngtile.NotFound:
        raise http.Http404
    except pngtile.InvalidImage:
        return http.HttpResponseBadRequest(name)
    except pngtile.UncachedImage:
        return http.HttpResponseBadRequest(name)
    except pngtile.Error as error:
        return http.HttpResponseServerError(str(error))
    except pypngtile.Error as error:
        return http.HttpResponseServerError(str(error))
    
    return render(request, 'qmsk.pngtile/index.html', dict(
        site_name   = u"...",
        name        = name,
        title       = store.title(name),
        breadcrumb  = store.breadcrumb(name),
        index_tree  = tree,
        index_items = sorted(items),
    ))

def image (request, name):
    pass