cri_models.admin module

class cri_models.admin.CRIAccountAdmin(model, admin_site)[source]

Bases: cri_models.import_export.ExportMixin, django.contrib.auth.admin.UserAdmin

add_fieldsets = ((None, {'fields': ('username',)}), ('Account', {'fields': ('uid', 'primary_group', 'old_account')}), ('Personal info', {'fields': ('first_name', 'last_name', 'legal_first_name', 'legal_last_name', 'birthdate', 'phone')}), ('Extra info', {'fields': ('nickname', 'callsign')}))
add_form

alias of django.contrib.auth.forms.UserChangeForm

autocomplete_fields = ('primary_group', 'primary_principal', 'old_account')
fieldsets = ((None, {'fields': ('username', 'password')}), ('Account', {'fields': ('uid', 'ldap_dn', 'primary_group', 'primary_principal', 'old_account')}), ('Personal info', {'fields': ('first_name', 'last_name', 'legal_first_name', 'legal_last_name', 'birthdate', 'phone')}), ('Extra info', {'fields': ('nickname', 'callsign')}), ('Emails', {'fields': ('email', 'mail_aliases', 'group_mail_aliases')}), ('Permissions', {'fields': ('is_active', 'is_staff', 'is_superuser', 'groups', 'user_permissions')}), ('Important dates', {'fields': ('last_login', 'date_joined')}))
filter_horizontal = ('mail_aliases', 'groups', 'user_permissions')
get_queryset(*args, **kwargs)[source]

Return a QuerySet of all model instances that can be edited by the admin site. This is used by changelist_view.

get_readonly_fields(request, obj=None)[source]

Hook for specifying custom readonly fields.

group_mail_aliases(obj)[source]
inlines = (<class 'cri_models.admin.CRIMembershipInline'>, <class 'cri_models.admin.KerberosPrincipalInline'>, <class 'cri_models.admin.SSHPublicKeyInline'>, <class 'cri_models.admin.CRIPhotoInline'>)
property media
readonly_fields = ('group_mail_aliases',)
resource_class

alias of cri_models.import_export.CRIUserMoodleResource

class cri_models.admin.CRIComputedMembershipAdmin(model, admin_site)[source]

Bases: cri_models.admin.CRIMembershipAdmin

has_add_permission(request)[source]

Return True if the given request has permission to add an object. Can be overridden by the user in subclasses.

has_change_permission(request, obj=None)[source]

Return True if the given request has permission to change the given Django model instance, the default implementation doesn’t examine the obj parameter.

Can be overridden by the user in subclasses. In such case it should return True if the given request has permission to change the obj model instance. If obj is None, this should return True if the given request has permission to change any object of the given type.

has_delete_permission(request, obj=None)[source]

Return True if the given request has permission to change the given Django model instance, the default implementation doesn’t examine the obj parameter.

Can be overridden by the user in subclasses. In such case it should return True if the given request has permission to delete the obj model instance. If obj is None, this should return True if the given request has permission to delete any object of the given type.

property media
class cri_models.admin.CRIGroupAdmin(model, admin_site)[source]

Bases: django.contrib.admin.options.ModelAdmin

autocomplete_fields = ('next_group',)
filter_horizontal = ('children', 'managers', 'mail_aliases')
get_computed_parents(obj)[source]
get_ldap_dn(obj)[source]
list_display = ('name', 'slug', 'kind', 'gid', 'private')
list_filter = ('private', 'kind')
property media
radio_fields = {'kind': 1}
readonly_fields = ('get_computed_parents', 'computed_children', 'get_ldap_dn')
search_fields = ('name', 'slug', 'kind', 'gid')
class cri_models.admin.CRIMembershipAdmin(model, admin_site)[source]

Bases: django.contrib.admin.options.ModelAdmin

date_hierarchy = 'begin_at'
list_display = ('group', 'user', 'graduation_year', 'begin_at', 'end_at')
list_filter = ('graduation_year',)
property media
search_fields = ('group__name', 'user__username')
class cri_models.admin.CRIMembershipInline(parent_model, admin_site)[source]

Bases: django.contrib.admin.options.TabularInline

autocomplete_fields = ('group', 'user')
extra = 0
property media
model

alias of cri_models.models.crigroup.CRIMembership

class cri_models.admin.CRIPhoto(model, admin_site)[source]

Bases: django.contrib.admin.options.ModelAdmin

autocomplete_fields = ('user',)
list_display = ('user', 'kind', 'priority')
list_filter = ('kind__name',)
property media
search_fields = ('user__username',)
class cri_models.admin.CRIPhotoInline(parent_model, admin_site)[source]

Bases: django.contrib.admin.options.TabularInline

autocomplete_fields = ('user',)
extra = 0
property media
model

alias of cri_models.models.criuser.CRIPhoto

class cri_models.admin.CRIPhotoKind(model, admin_site)[source]

Bases: django.contrib.admin.options.ModelAdmin

list_display = ('priority', 'name')
list_editable = ('priority',)
property media
ordering_field = 'priority'
ordering_field_hide_input = True
class cri_models.admin.CRIServiceAccountAdmin(model, admin_site)[source]

Bases: cri_models.admin.CRIAccountAdmin

add_fieldsets = ((None, {'fields': ('owner',)}), ('Account', {'fields': ('username', 'uid', 'primary_group', 'last_name')}), ('Extra info', {'fields': ('nickname', 'callsign')}))
autocomplete_fields = ('primary_group', 'primary_principal', 'old_account', 'owner')
fieldsets = ((None, {'fields': ('owner', 'username', 'password')}), ('Account', {'fields': ('uid', 'ldap_dn', 'primary_group', 'primary_principal')}), ('Personal info', {'classes': ('collapse',), 'fields': ('first_name', 'last_name', 'legal_first_name', 'legal_last_name', 'birthdate', 'phone')}), ('Emails', {'fields': ('email', 'mail_aliases', 'group_mail_aliases')}), ('Permissions', {'fields': ('is_active', 'is_staff', 'is_superuser', 'groups', 'user_permissions')}), ('Important dates', {'fields': ('last_login', 'date_joined')}))
get_queryset(*args, **kwargs)[source]

Return a QuerySet of all model instances that can be edited by the admin site. This is used by changelist_view.

list_display = ('owner', 'username', 'email', 'is_active', 'uid')
property media
readonly_fields = ('group_mail_aliases', 'is_staff', 'is_superuser')
class cri_models.admin.CRIUserCreationRequestAdmin(model, admin_site)[source]

Bases: import_export.admin.ImportExportModelAdmin

actions = ['create']
autocomplete_fields = ('primary_group', 'old_account')
create(request, queryset)[source]
get_readonly_fields(request, obj=None)[source]

Hook for specifying custom readonly fields.

has_create_permission(request)[source]
has_delete_permission(request, obj=None)[source]

Return True if the given request has permission to change the given Django model instance, the default implementation doesn’t examine the obj parameter.

Can be overridden by the user in subclasses. In such case it should return True if the given request has permission to delete the obj model instance. If obj is None, this should return True if the given request has permission to delete any object of the given type.

list_display = ('created_user', 'username', 'email', 'first_name', 'last_name', 'primary_group', 'uid')
list_filter = ('primary_group', ('created_at', <class 'django.contrib.admin.filters.EmptyFieldListFilter'>))
property media
resource_class

alias of cri_models.import_export.CRIUserCreationRequestResource

search_fields = ('username', 'email', 'first_name', 'last_name', 'uid')
tmp_storage_class

alias of import_export.tmp_storages.CacheStorage

view_on_site(obj)[source]

bool(x) -> bool

Returns True when the argument x is true, False otherwise. The builtins True and False are the only two instances of the class bool. The class bool is a subclass of the class int, and cannot be subclassed.

class cri_models.admin.CRIUserInline(parent_model, admin_site)[source]

Bases: django.contrib.admin.options.TabularInline

autocomplete_fields = ('criuser',)
extra = 0
is_active(obj)[source]
is_staff(obj)[source]
property media
model

alias of cri_models.models.criuser.CRIUser_groups

readonly_fields = ('is_staff', 'is_active')
class cri_models.admin.CRIUserNote(model, admin_site)[source]

Bases: django.contrib.admin.options.ModelAdmin

autocomplete_fields = ('user', 'author', 'scope')
date_hierarchy = 'created_at'
filter_horizontal = ('labels',)
list_display = ('user', 'author', 'event_title', 'event_kind', 'event_date', 'created_at', 'updated_at', 'scope', 'secret')
list_filter = ('event_kind', 'scope', 'labels', 'secret')
property media
radio_fields = {'event_kind': 1}
readonly_fields = ('created_at', 'updated_at', 'updated_by')
class cri_models.admin.CRIUserNoteLabel(model, admin_site)[source]

Bases: django.contrib.admin.options.ModelAdmin

property media
class cri_models.admin.CRIUserNoteScope(model, admin_site)[source]

Bases: django.contrib.admin.options.ModelAdmin

filter_horizontal = ('readers', 'writers')
property media
search_fields = ('name',)
class cri_models.admin.CampusAdmin(model, admin_site)[source]

Bases: django.contrib.admin.options.ModelAdmin

list_display = ('group',)
property media
search_fields = ('group__name', 'group__slug')
class cri_models.admin.KerberosPrincipalAdmin(model, admin_site)[source]

Bases: django.contrib.admin.options.ModelAdmin

autocomplete_fields = ('user',)
list_display = ('principal', 'user', 'out_of_date')
list_filter = ('out_of_date',)
property media
search_fields = ('principal', 'user__username')
class cri_models.admin.KerberosPrincipalInline(parent_model, admin_site)[source]

Bases: django.contrib.admin.options.TabularInline

extra = 0
property media
model

alias of cri_models.models.criuser.KerberosPrincipal

class cri_models.admin.MailAliasAdmin(model, admin_site)[source]

Bases: django.contrib.admin.options.ModelAdmin

get_readonly_fields(request, obj=None)[source]

Hook for specifying custom readonly fields.

groups(obj)[source]
list_display = ('email', 'users', 'groups')
property media
search_fields = ('email', 'criuser__username', 'crigroup__slug', 'crigroup__name')
users(obj)[source]
class cri_models.admin.SSHPublicKeyAdmin(model, admin_site)[source]

Bases: django.contrib.admin.options.ModelAdmin

autocomplete_fields = ('user',)
get_readonly_fields(request, obj=None)[source]

Hook for specifying custom readonly fields.

list_display = ('user', 'title', 'key_type', 'key_length')
list_filter = ('key_type', 'key_length')
property media
search_fields = ('user__username', 'title', 'key')
class cri_models.admin.SSHPublicKeyInline(parent_model, admin_site)[source]

Bases: django.contrib.admin.options.TabularInline

extra = 0
get_readonly_fields(request, obj=None)[source]

Hook for specifying custom readonly fields.

property media
model

alias of cri_models.models.criuser.SSHPublicKey