X-Git-Url: http://gitweb.fperrin.net/?a=blobdiff_plain;f=quotes%2Fviews.py;h=642cb433581d953dcd1fced549bd7a784ebd394d;hb=09e61e917b545fa8c39105285d4b82e95307151c;hp=9bed533b045f73e0385f32c934e5c780d3cc2b70;hpb=0b43566359216637a28247d7f9ab4121931843ed;p=djsite.git diff --git a/quotes/views.py b/quotes/views.py index 9bed533..642cb43 100644 --- a/quotes/views.py +++ b/quotes/views.py @@ -2,17 +2,27 @@ from django.shortcuts import render from random import randint -from .models import Author, Work, Quote, QuoteTag +from quotes.models import Author, Work, Quote, QuoteTag +from quotes import search +from quotes import tagcloud + +# create your views here. +def index(request): + return render(request, 'quotes/index.html') -# Create your views here. def onequote(request, quote_id): q = Quote.objects.get(id=quote_id) - context = { 'quote' : q } - return render(request, 'quotes/onequote.html', context) + return _onequote(request, q) def random(request): count = Quote.objects.count() - return onequote(request, randint(1, count)) + q = Quote.objects.all()[randint(0, count-1)] + return _onequote(request, q) + +def _onequote(request, q): + q.incr_display() + context = { 'quote' : q } + return render(request, 'quotes/onequote.html', context) def tags(request, tag_id): tag = QuoteTag.objects.get(id=tag_id) @@ -21,11 +31,13 @@ def tags(request, tag_id): def author(request, author_id): author = Author.objects.get(id=author_id) + author.incr_display() context = { 'author' : author } return render(request, 'quotes/author.html', context) def work(request, work_id): work = Work.objects.get(id=work_id) + work.incr_display() context = { 'work': work } return render(request, 'quotes/work.html', context) @@ -33,3 +45,13 @@ def all(request): quotes = Quote.objects.all() context = { 'quotes' : quotes } return render(request, 'quotes/all.html', context) + +def searchpage(request): + results = {} + if 'q' in request.POST: + results = search.search(request.POST['q']) + return render(request, 'quotes/search.html', results) + +def cloud(request): + clouddata = tagcloud.build_cloud() + return render(request, 'quotes/cloud.html', clouddata)