# -*- coding: utf-8 -*- # Copyright: (c) 2008, Jarek Zgoda __revision__ = '$Id: views.py 21 2008-12-05 09:21:03Z jarek.zgoda $' from django.template import RequestContext from django.conf import settings from confirmation.models import Confirmation from zephyr.lib.response import render_to_response def confirm(request, confirmation_key): confirmation_key = confirmation_key.lower() obj = Confirmation.objects.confirm(confirmation_key) confirmed = True if not obj: # confirmation failed confirmed = False try: # try to get the object we was supposed to confirm obj = Confirmation.objects.get(confirmation_key=confirmation_key) except Confirmation.DoesNotExist: pass ctx = { 'object': obj, 'confirmed': confirmed, 'days': getattr(settings, 'EMAIL_CONFIRMATION_DAYS', 10), 'key': confirmation_key, 'gafyd_name': request.GET.get("gafyd_name", None), } templates = [ 'confirmation/confirm.html', ] if obj: # if we have an object, we can use specific template templates.insert(0, 'confirmation/confirm_%s.html' % obj._meta.module_name) return render_to_response(templates, ctx, context_instance=RequestContext(request))