@ -3,8 +3,8 @@ from django.contrib.auth.models import Group
from django . contrib . auth . admin import UserAdmin as BaseUserAdmin
from django . contrib . auth . admin import UserAdmin as BaseUserAdmin
from reversion . admin import VersionAdmin
from reversion . admin import VersionAdmin
from . models import User , School , Right , ListRight , ListShell , Ban , Whitelist , Request , LdapUser , LdapUserGroup
from . models import User , ServiceUser , S chool , Right , ListRight , ListShell , Ban , Whitelist , Request , LdapUser , LdapService User , LdapUserGroup
from . forms import UserChangeForm , UserCreationForm
from . forms import UserChangeForm , UserCreationForm , ServiceUserChangeForm , ServiceUserCreationForm
class UserAdmin ( admin . ModelAdmin ) :
class UserAdmin ( admin . ModelAdmin ) :
@ -22,10 +22,15 @@ class UserAdmin(admin.ModelAdmin):
class LdapUserAdmin ( admin . ModelAdmin ) :
class LdapUserAdmin ( admin . ModelAdmin ) :
list_display = ( ' name ' , ' uidNumber ' , ' loginS hell ' )
list_display = ( ' name ' , ' uidNumber ' , ' login_s hell ' )
exclude = ( ' user_password ' , ' sambat_nt_password ' )
exclude = ( ' user_password ' , ' sambat_nt_password ' )
search_fields = ( ' name ' , )
search_fields = ( ' name ' , )
class LdapServiceUserAdmin ( admin . ModelAdmin ) :
list_display = ( ' name ' , )
exclude = ( ' user_password ' , )
search_fields = ( ' name ' , )
class LdapUserGroupAdmin ( admin . ModelAdmin ) :
class LdapUserGroupAdmin ( admin . ModelAdmin ) :
list_display = ( ' name ' , ' members ' , ' gid ' )
list_display = ( ' name ' , ' members ' , ' gid ' )
search_fields = ( ' name ' , )
search_fields = ( ' name ' , )
@ -62,10 +67,11 @@ class UserAdmin(VersionAdmin, BaseUserAdmin):
# These override the definitions on the base UserAdmin
# These override the definitions on the base UserAdmin
# that reference specific fields on auth.User.
# that reference specific fields on auth.User.
list_display = ( ' pseudo ' , ' name ' , ' surname ' , ' email ' , ' school ' , ' is_admin ' , ' shell ' )
list_display = ( ' pseudo ' , ' name ' , ' surname ' , ' email ' , ' school ' , ' is_admin ' , ' shell ' )
list_display = ( ' pseudo ' , )
list_filter = ( )
list_filter = ( )
fieldsets = (
fieldsets = (
( None , { ' fields ' : ( ' pseudo ' , ' password ' ) } ) ,
( None , { ' fields ' : ( ' pseudo ' , ' password ' ) } ) ,
( ' Personal info ' , { ' fields ' : ( ' name ' , ' surname ' , ' email ' , ' school ' , ' shell ' ) } ) ,
( ' Personal info ' , { ' fields ' : ( ' name ' , ' surname ' , ' email ' , ' school ' , ' shell ' , ' uid_number ' ) } ) ,
( ' Permissions ' , { ' fields ' : ( ' is_admin ' , ) } ) ,
( ' Permissions ' , { ' fields ' : ( ' is_admin ' , ) } ) ,
)
)
# add_fieldsets is not a standard ModelAdmin attribute. UserAdmin
# add_fieldsets is not a standard ModelAdmin attribute. UserAdmin
@ -80,9 +86,36 @@ class UserAdmin(VersionAdmin, BaseUserAdmin):
ordering = ( ' pseudo ' , )
ordering = ( ' pseudo ' , )
filter_horizontal = ( )
filter_horizontal = ( )
class ServiceUserAdmin ( VersionAdmin , BaseUserAdmin ) :
# The forms to add and change user instances
form = ServiceUserChangeForm
add_form = ServiceUserCreationForm
# The fields to be used in displaying the User model.
# These override the definitions on the base UserAdmin
# that reference specific fields on auth.User.
list_display = ( ' pseudo ' , )
list_filter = ( )
fieldsets = (
( None , { ' fields ' : ( ' pseudo ' , ' password ' ) } ) ,
)
# add_fieldsets is not a standard ModelAdmin attribute. UserAdmin
# overrides get_fieldsets to use this attribute when creating a user.
add_fieldsets = (
( None , {
' classes ' : ( ' wide ' , ) ,
' fields ' : ( ' pseudo ' , ' password1 ' , ' password2 ' ) }
) ,
)
search_fields = ( ' pseudo ' , )
ordering = ( ' pseudo ' , )
filter_horizontal = ( )
admin . site . register ( User , UserAdmin )
admin . site . register ( User , UserAdmin )
admin . site . register ( ServiceUser , ServiceUserAdmin )
admin . site . register ( LdapUser , LdapUserAdmin )
admin . site . register ( LdapUser , LdapUserAdmin )
admin . site . register ( LdapUserGroup , LdapUserGroupAdmin )
admin . site . register ( LdapUserGroup , LdapUserGroupAdmin )
admin . site . register ( LdapServiceUser , LdapServiceUserAdmin )
admin . site . register ( School , SchoolAdmin )
admin . site . register ( School , SchoolAdmin )
admin . site . register ( Right , RightAdmin )
admin . site . register ( Right , RightAdmin )
admin . site . register ( ListRight , ListRightAdmin )
admin . site . register ( ListRight , ListRightAdmin )
@ -92,7 +125,9 @@ admin.site.register(Whitelist, WhitelistAdmin)
admin . site . register ( Request , RequestAdmin )
admin . site . register ( Request , RequestAdmin )
# Now register the new UserAdmin...
# Now register the new UserAdmin...
admin . site . unregister ( User )
admin . site . unregister ( User )
admin . site . unregister ( ServiceUser )
admin . site . register ( User , UserAdmin )
admin . site . register ( User , UserAdmin )
admin . site . register ( ServiceUser , ServiceUserAdmin )
# ... and, since we're not using Django's built-in permissions,
# ... and, since we're not using Django's built-in permissions,
# unregister the Group model from admin.
# unregister the Group model from admin.
admin . site . unregister ( Group )
admin . site . unregister ( Group )