X-Git-Url: http://git.ithinksw.org/~kgodey/maayanwich.git/blobdiff_plain/0ee52e2ec5e267a0c73092202902707176f96e2e..d4c7020dea9dfb1de97b9048b70d168c52022d79:/views.py diff --git a/views.py b/views.py index 49f1c68..efced1f 100644 --- a/views.py +++ b/views.py @@ -1,13 +1,14 @@ from django.http import HttpResponse -from forms import SandwichForm, IngredientForm, ArtistForm +from forms import SandwichForm, IngredientForm from django.shortcuts import render_to_response from django.core.files.uploadedfile import SimpleUploadedFile -from django.template.defaultfilters import slugify -from models import Sandwich, Artist, Ingredient +from models import Sandwich, Ingredient +from django.http import Http404 +from django.contrib.auth import authenticate, login +from django.contrib.auth.forms import AuthenticationForm import datetime - def add_sandwich(request): if request.method == 'POST': # If the form has been submitted... form = SandwichForm(request.POST, request.FILES) # A form bound to the POST data @@ -20,8 +21,8 @@ def add_sandwich(request): form = SandwichForm() # An unbound form return render_to_response('sandwich.html', {'sform': form,}) - - + + def add_ingredient(request): if request.method == 'POST': # If the form has been submitted... form = IngredientForm(request.POST) # A form bound to the POST data @@ -35,3 +36,57 @@ def add_ingredient(request): return render_to_response('ingredient.html', {'iform': form,}) + +def all_sandwich(request): + try: + sandwiches = Sandwich.objects.all() + except Sandwich.DoesNotExist: + raise Http404 + return render_to_response('allsandwiches.html', {'sandwiches': sandwiches,}) + + +def newsandwiches(request): + try: + if Sandwich.objects.count() > 5: + sandwiches = Sandwich.objects.order_by('date_made')[:5] + else: + sandwiches = Sandwich.objects.order_by('date_made') + except Sandwich.DoesNotExist: + raise Http404 + return render_to_response('allsandwiches.html', {'sandwiches': sandwiches,}) + +def sandwich_month(request, year, month): + try: + sandwiches = Sandwich.objects.filter(date_made__month=month, date_made__year=year) + except Sandwich.DoesNotExist: + raise Http404 + return render_to_response('allsandwiches.html', {'sandwiches': sandwiches,}) + + +def specific_sandwich(request, slug): + try: + sandwiches = Sandwich.objects.get(slug=slug) + except Sandwich.DoesNotExist: + raise Http404 + return render_to_response('onesandwich.html', {'s': sandwiches,}) + + +def login_view(request): + try: + username = request.POST['username'] + password = request.POST['password'] + user = authenticate(username=username, password=password) + if user is not None: + if user.is_active: + login(request, user) + thankshtml = "

You have been logged in

" + return HttpResponse(thankshtml) + else: + thankshtml = "

Disabled account. Sorry.

" + return HttpResponse(thankshtml) + else: + thankshtml = "

Invalid login!

" + return HttpResponse(thankshtml) + except KeyError: + aform = AuthenticationForm() + return render_to_response('login.html', {'aform': aform,}) \ No newline at end of file