Django

Code

Changeset 6811

Show
Ignore:
Timestamp:
12/01/07 14:51:53 (1 year ago)
Author:
jkocherhans
Message:

newforms-admin: Moved some views to contrib.auth. Based largely on a patch by Honza Kral.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/branches/newforms-admin/django/contrib/admin/sites.py

    r6797 r6811  
    172172        Handles the "user change password" task 
    173173        """ 
    174         from django.contrib.admin.views.auth import user_change_password 
     174        from django.contrib.auth.views import user_change_password 
    175175        return user_change_password(request, id) 
    176176 
  • django/branches/newforms-admin/django/contrib/auth/models.py

    r6426 r6811  
    367367 
    368368# Register the admin options for these models. 
    369 # TODO: Maybe this should live in a separate module admin.py, but how would we 
    370 # ensure that module was loaded? 
    371  
    372 from django.contrib import admin 
    373  
    374 class GroupAdmin(admin.ModelAdmin): 
    375     search_fields = ('name',) 
    376     filter_horizontal = ('permissions',) 
    377  
    378 class UserAdmin(admin.ModelAdmin): 
    379     fieldsets = ( 
    380         (None, {'fields': ('username', 'password')}), 
    381         (_('Personal info'), {'fields': ('first_name', 'last_name', 'email')}), 
    382         (_('Permissions'), {'fields': ('is_staff', 'is_active', 'is_superuser', 'user_permissions')}), 
    383         (_('Important dates'), {'fields': ('last_login', 'date_joined')}), 
    384         (_('Groups'), {'fields': ('groups',)}), 
    385     ) 
    386     list_display = ('username', 'email', 'first_name', 'last_name', 'is_staff') 
    387     list_filter = ('is_staff', 'is_superuser') 
    388     search_fields = ('username', 'first_name', 'last_name', 'email') 
    389     filter_horizontal = ('user_permissions',) 
    390  
    391     def add_view(self, request): 
    392         from django.contrib.admin.views.auth import user_add_stage 
    393         return user_add_stage(request) 
    394  
    395 admin.site.register(Group, GroupAdmin) 
    396 admin.site.register(User, UserAdmin) 
     369from django.contrib.auth import admin 
  • django/branches/newforms-admin/django/contrib/auth/views.py

    r6342 r6811  
    11from django.contrib.auth.forms import AuthenticationForm 
    2 from django.contrib.auth.forms import PasswordResetForm, PasswordChangeForm 
     2from django.contrib.auth.forms import PasswordResetForm, PasswordChangeForm, AdminPasswordChangeForm 
     3from django.core.exceptions import PermissionDenied 
    34from django import oldforms 
    4 from django.shortcuts import render_to_response 
     5from django.shortcuts import render_to_response, get_object_or_404 
    56from django.template import RequestContext 
    67from django.contrib.sites.models import Site, RequestSite 
     
    89from django.contrib.auth.decorators import login_required 
    910from django.contrib.auth import REDIRECT_FIELD_NAME 
     11from django.utils.html import escape 
    1012from django.utils.translation import ugettext as _ 
     13from django.contrib.auth.models import User 
    1114 
    1215def login(request, template_name='registration/login.html', redirect_field_name=REDIRECT_FIELD_NAME): 
     
    98101def password_change_done(request, template_name='registration/password_change_done.html'): 
    99102    return render_to_response(template_name, context_instance=RequestContext(request)) 
     103 
     104def user_change_password(request, id): 
     105    if not request.user.has_perm('auth.change_user'): 
     106        raise PermissionDenied 
     107    user = get_object_or_404(User, pk=id) 
     108    manipulator = AdminPasswordChangeForm(user) 
     109    if request.method == 'POST': 
     110        new_data = request.POST.copy() 
     111        errors = manipulator.get_validation_errors(new_data) 
     112        if not errors: 
     113            new_user = manipulator.save(new_data) 
     114            msg = _('Password changed successfully.') 
     115            request.user.message_set.create(message=msg) 
     116            return HttpResponseRedirect('..') 
     117    else: 
     118        errors = new_data = {} 
     119    form = oldforms.FormWrapper(manipulator, new_data, errors) 
     120    return render_to_response('admin/auth/user/change_password.html', { 
     121        'title': _('Change password: %s') % escape(user.username), 
     122        'form': form, 
     123        'is_popup': '_popup' in request.REQUEST, 
     124        'add': True, 
     125        'change': False, 
     126        'has_delete_permission': False, 
     127        'has_change_permission': True, 
     128        'has_absolute_url': False, 
     129        'opts': User._meta, 
     130        'original': user, 
     131        'show_save': True, 
     132    }, context_instance=RequestContext(request))