]> gitweb.fperrin.net Git - djsite.git/blob - quotes/views.py
Add a massimport page
[djsite.git] / quotes / views.py
1 from django.shortcuts import render
2
3 from random import randint
4
5 from quotes.models import Author, Work, Quote, QuoteTag
6 import quotes.search as search
7 import quotes.tagcloud as tagcloud
8 from quotes.massimport import domassimport
9
10 # create your views here.
11 def index(request):
12     return render(request, 'quotes/index.html')
13
14 def onequote(request, quote_id):
15     q = Quote.objects.get(id=quote_id)
16     q.incr_display()
17     context = { 'quote' : q }
18     return render(request, 'quotes/onequote.html', context)
19
20 def random(request):
21     count = Quote.objects.count()
22     return onequote(request, randint(1, count))
23
24 def tags(request, tag_id):
25     tag = QuoteTag.objects.get(id=tag_id)
26     context = { 'tag' : tag }
27     return render(request, 'quotes/tag.html', context)
28
29 def author(request, author_id):
30     author = Author.objects.get(id=author_id)
31     author.incr_display()
32     context = { 'author' : author }
33     return render(request, 'quotes/author.html', context)
34
35 def work(request, work_id):
36     work = Work.objects.get(id=work_id)
37     work.incr_display()
38     context = { 'work': work }
39     return render(request, 'quotes/work.html', context)
40
41 def all(request):
42     quotes = Quote.objects.all()
43     context = { 'quotes' : quotes }
44     return render(request, 'quotes/all.html', context)
45
46 def searchpage(request):
47     results = {}
48     if 'q' in request.POST:
49         results = search.search(request.POST['q'])
50     return render(request, 'quotes/search.html', results)
51
52 def cloud(request):
53     clouddata = tagcloud.build_cloud()
54     return render(request, 'quotes/cloud.html', { 'cloud': clouddata })
55
56 def massimport(request):
57     if 'quotes' in request.POST:
58         resultcontext = domassimport(request.POST['quotes'])
59         return render(request, 'quotes/domassimport.html', resultcontext)
60     else:
61         return render(request, 'quotes/massimport.html', {})