Ignore:
Timestamp:
07/11/12 08:23:37 (7 years ago)
Author:
mnagni
Message:

Does not use HTTPResponseRedirect but a "meta refresh" from the logged_in.html page

File:
1 edited

Legend:

Unmodified
Added
Removed
  • mauRepo/dj_security/trunk/dj_security/views/my_view.py

    r8673 r8674  
    88from dj_security.login_form import LoginForm 
    99from django.core.context_processors import csrf 
    10 from django.http import HttpResponseRedirect 
    11 from paste.auth.auth_tkt import AuthTicket 
    12 from django.conf import settings 
    1310import logging 
    1411 
     
    3330            if user is not None: 
    3431                if user.is_active: 
    35                     remote_ip = _calculate_remote_ip(request) 
    36                     # Redirect to a success page. 
    37                     login(request, user)               
    38                     token = AuthTicket( 
    39                         getattr(settings, 'SHARED_SECRET', 'sharedsecret'),  
    40                         username,  
    41                         remote_ip) 
    42                     res = HttpResponseRedirect(request.GET.get('r', 'accounts/profile/')) 
    43                     res.set_cookie('auth_tkt', token.cookie_value()) 
    44                     logger.info("Logging %s from %s" % (username, remote_ip)) 
    45                     return res 
     32                    login(request, user) 
     33                    context['r'] = request.GET.get('r', '') 
     34                    return render_to_response('logged_in.html', context)             
    4635                else: 
    4736                    # Return a 'disabled account' error message 
     
    6150        context.update(csrf(request)) 
    6251        return render_to_response('login.html', context) 
    63  
    64 def _calculate_remote_ip(request): 
    65     import urlparse 
    66     import socket 
    67     remote_url = urlparse.urlparse(request.GET.get('r', '')) 
    68     if remote_url.netloc != '': 
    69         return socket.gethostbyname_ex(remote_url.netloc).split(':')[0][2][1] 
    70     return '127.0.0.1' 
Note: See TracChangeset for help on using the changeset viewer.