55 lines
1.3 KiB
Python
55 lines
1.3 KiB
Python
from django.contrib import admin
|
|
from django.contrib.auth.admin import UserAdmin as BaseUserAdmin
|
|
from django.template.defaultfilters import filesizeformat
|
|
|
|
from .forms import UserChangeForm
|
|
from .models import FriendRequest, Invitation, User
|
|
|
|
|
|
@admin.register(User)
|
|
class UserAdmin(BaseUserAdmin):
|
|
ordering = ["pk"]
|
|
# add_form = UserCreationForm
|
|
form = UserChangeForm
|
|
fieldsets = BaseUserAdmin.fieldsets + (
|
|
["Custom Fields", {"fields": ["max_size", "friends"]}],
|
|
)
|
|
list_display = [
|
|
"username",
|
|
"email",
|
|
"is_superuser",
|
|
"is_active",
|
|
"is_staff",
|
|
"display_max_size",
|
|
"size_used",
|
|
]
|
|
add_fieldsets = (
|
|
(
|
|
None,
|
|
{
|
|
"classes": ("wide",),
|
|
"fields": ("username", "email", "max_size", "password1", "password2"),
|
|
},
|
|
),
|
|
)
|
|
|
|
def display_max_size(self, obj: User):
|
|
return filesizeformat(obj.max_size)
|
|
|
|
display_max_size.short_description = "Max size"
|
|
|
|
def size_used(self, obj: User):
|
|
return filesizeformat(obj.size_used)
|
|
|
|
size_used.short_description = "Size used"
|
|
|
|
|
|
@admin.register(Invitation)
|
|
class InvitationAdmin(admin.ModelAdmin):
|
|
pass
|
|
|
|
|
|
@admin.register(FriendRequest)
|
|
class FriendRequestAdmin(admin.ModelAdmin):
|
|
pass
|