process warn GET argument on login page
authorAlex Kamedov <alex@kamedov.ru>
Sun, 24 Apr 2011 14:02:36 +0000 (20:02 +0600)
committerAlex Kamedov <alex@kamedov.ru>
Sun, 24 Apr 2011 14:02:36 +0000 (20:02 +0600)
cas_provider/templates/cas/warn.html [new file with mode: 0644]
cas_provider/views.py

diff --git a/cas_provider/templates/cas/warn.html b/cas_provider/templates/cas/warn.html
new file mode 100644 (file)
index 0000000..58f4ed8
--- /dev/null
@@ -0,0 +1,15 @@
+{% extends "base.html" %}
+
+{% block title %}
+Warning
+{% endblock %}
+
+{% block content %}
+  <form action='.' method='get'>
+    <fieldset>
+      <legend>Confirm to log in to {{ service }}</legend>
+         <input type="hidden" name="service" value="{{ service }}">
+      <p><input type="submit" value="Login"/></p>
+    </fieldset>
+  </form>
+{% endblock %}
index eca61ba..8a6e4bf 100644 (file)
@@ -23,10 +23,16 @@ ERROR_MESSAGES = (
 
 
 def login(request, template_name='cas/login.html', \
 
 
 def login(request, template_name='cas/login.html', \
-                success_redirect=settings.LOGIN_REDIRECT_URL):
+                success_redirect=settings.LOGIN_REDIRECT_URL,
+                warn_template_name='cas/warn.html'):
     service = request.GET.get('service', None)
     if request.user.is_authenticated():
         if service is not None:
     service = request.GET.get('service', None)
     if request.user.is_authenticated():
         if service is not None:
+            if request.GET.get('warn', False):
+                return render_to_response(warn_template_name, {
+                    'service': service,
+                    'warn': False
+                }, context_instance=RequestContext(request))
             ticket = ServiceTicket.objects.create(service=service, user=request.user)
             return HttpResponseRedirect(ticket.get_redirect_url())
         else:
             ticket = ServiceTicket.objects.create(service=service, user=request.user)
             return HttpResponseRedirect(ticket.get_redirect_url())
         else: