See #152: updated admin interface

This commit is contained in:
Eliot Berriot 2018-05-18 19:18:40 +02:00
parent 4ce6715dc7
commit a57d975183
No known key found for this signature in database
GPG Key ID: DD6965E2476E5C27
2 changed files with 27 additions and 4 deletions

View File

@ -5,6 +5,7 @@ from django import forms
from django.contrib import admin from django.contrib import admin
from django.contrib.auth.admin import UserAdmin as AuthUserAdmin from django.contrib.auth.admin import UserAdmin as AuthUserAdmin
from django.contrib.auth.forms import UserChangeForm, UserCreationForm from django.contrib.auth.forms import UserChangeForm, UserCreationForm
from django.utils.translation import ugettext_lazy as _
from .models import User from .models import User
@ -41,8 +42,22 @@ class UserAdmin(AuthUserAdmin):
'email', 'email',
'date_joined', 'date_joined',
'last_login', 'last_login',
'privacy_level', 'is_staff',
'is_superuser',
] ]
list_filter = [ list_filter = [
'is_superuser',
'is_staff',
'privacy_level', 'privacy_level',
'permission_settings',
'permission_library',
'permission_federation',
] ]
fieldsets = (
(None, {'fields': ('username', 'password', 'privacy_level')}),
(_('Personal info'), {'fields': ('first_name', 'last_name', 'email')}),
(_('Permissions'), {'fields': ('is_active', 'is_staff', 'is_superuser',
'permission_library', 'permission_settings', 'permission_federation')}),
(_('Important dates'), {'fields': ('last_login', 'date_joined')}),
)

View File

@ -46,9 +46,17 @@ class User(AbstractUser):
blank=True, null=True, max_length=255) blank=True, null=True, max_length=255)
# permissions # permissions
permission_federation = models.BooleanField(default=False) permission_federation = models.BooleanField(
permission_library = models.BooleanField(default=False) 'Manage library federation',
permission_settings = models.BooleanField(default=False) help_text='Follow other instances, accept/deny library follow requests...',
default=False)
permission_library = models.BooleanField(
'Manage library',
help_text='Import new content, manage existing content',
default=False)
permission_settings = models.BooleanField(
'Manage instance-level settings',
default=False)
def __str__(self): def __str__(self):
return self.username return self.username