]> gitweb.fperrin.net Git - djsite.git/blobdiff - quotes/views.py
Add a massimport page
[djsite.git] / quotes / views.py
index 981af054515b7817efb40daae2138b7d34de0b1a..a0969c113699c57724ff5ed1ca2223f9dbc87001 100644 (file)
@@ -1,14 +1,19 @@
 from django.shortcuts import render
-from django.http import HttpResponse
-from django.template import loader
 
 from random import randint
 
-from .models import Author, Quote, Tag
+from quotes.models import Author, Work, Quote, QuoteTag
+import quotes.search as search
+import quotes.tagcloud as tagcloud
+from quotes.massimport import domassimport
+
+# 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)
+    q.incr_display()
     context = { 'quote' : q }
     return render(request, 'quotes/onequote.html', context)
 
@@ -17,16 +22,40 @@ def random(request):
     return onequote(request, randint(1, count))
 
 def tags(request, tag_id):
-    tag = Tag.objects.get(id=tag_id)
+    tag = QuoteTag.objects.get(id=tag_id)
     context = { 'tag' : tag }
     return render(request, 'quotes/tag.html', context)
 
 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)
+
 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', { 'cloud': clouddata })
+
+def massimport(request):
+    if 'quotes' in request.POST:
+        resultcontext = domassimport(request.POST['quotes'])
+        return render(request, 'quotes/domassimport.html', resultcontext)
+    else:
+        return render(request, 'quotes/massimport.html', {})