Django

Code

Changeset 2887

Show
Ignore:
Timestamp:
05/09/06 23:30:25 (2 years ago)
Author:
jkocherhans
Message:

multi-auth: Updated auth views to use new api.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/branches/multi-auth/django/contrib/auth/forms.py

    r2809 r2887  
    11from django.contrib.auth.models import User 
     2from django.contrib.auth import authenticate 
    23from django.contrib.sites.models import Site 
    34from django.template import Context, loader 
     
    2122            forms.TextField(field_name="username", length=15, maxlength=30, is_required=True, 
    2223                validator_list=[self.isValidUser, self.hasCookiesEnabled]), 
    23             forms.PasswordField(field_name="password", length=15, maxlength=30, is_required=True, 
    24                 validator_list=[self.isValidPasswordForUser]), 
     24            forms.PasswordField(field_name="password", length=15, maxlength=30, is_required=True), 
    2525        ] 
    2626        self.user_cache = None 
     
    3131 
    3232    def isValidUser(self, field_data, all_data): 
    33         try: 
    34             self.user_cache = User.objects.get(username=field_data) 
    35         except User.DoesNotExist: 
    36             raise validators.ValidationError, _("Please enter a correct username and password. Note that both fields are case-sensitive.") 
    37  
    38     def isValidPasswordForUser(self, field_data, all_data): 
    39         if self.user_cache is not None and not self.user_cache.check_password(field_data): 
    40             self.user_cache = None 
     33        username = field_data 
     34        password = all_data.get('password', None) 
     35        self.user_cache = authenticate(username=username, password=password) 
     36        if self.user_cache is None: 
    4137            raise validators.ValidationError, _("Please enter a correct username and password. Note that both fields are case-sensitive.") 
    4238 
  • django/branches/multi-auth/django/contrib/auth/views.py

    r2809 r2887  
    44from django.shortcuts import render_to_response 
    55from django.template import RequestContext 
    6 from django.contrib.auth.models import SESSION_KEY 
    76from django.contrib.sites.models import Site 
    87from django.http import HttpResponse, HttpResponseRedirect 
     
    2019            if not redirect_to or '://' in redirect_to or ' ' in redirect_to: 
    2120                redirect_to = '/accounts/profile/' 
    22             request.session[SESSION_KEY] = manipulator.get_user_id() 
     21            from django.contrib.auth import login 
     22            login(request, manipulator.get_user()) 
    2323            request.session.delete_test_cookie() 
    2424            return HttpResponseRedirect(redirect_to) 
     
    3434def logout(request, next_page=None): 
    3535    "Logs out the user and displays 'You are logged out' message." 
     36    from django.contrib.auth import logout 
    3637    try: 
    37         del request.session[SESSION_KEY] 
     38        logout(request) 
    3839    except KeyError: 
    3940        return render_to_response('registration/logged_out.html', {'title': 'Logged out'}, context_instance=RequestContext(request))