diff --git a/accounts_ext/admin.py b/accounts_ext/admin.py index 45eb74e..15b4cc6 100644 --- a/accounts_ext/admin.py +++ b/accounts_ext/admin.py @@ -1,26 +1,59 @@ from django.contrib import admin -from .models import Profile - -# def delete_model(modeladmin, request, queryset): -# for obj in queryset: -# user_profile = obj.user.profile -# if user_profile.user_points >= obj.points: -# user_profile.user_points -= obj.points -# user_profile.save() -# obj.delete() -# -# delete_model.short_description = "Удалить как исполненный" - -# class PickUpRequestAdmin(admin.ModelAdmin): -# list_display = [field.name for field in PickUpRequest._meta.fields] -# actions = [delete_model] -# class Meta: -# model = PickUpRequest -# -# class UserProfileAdmin(admin.ModelAdmin): -# list_display = [field.name for field in Profile._meta.fields] -# class Meta: -# model = Profile - -# admin.site.register(Profile, UserProfileAdmin) -# admin.site.register(PickUpRequest, PickUpRequestAdmin) +from django.contrib.auth import get_user_model +from django.contrib.auth.models import Group as GroupBase +from django.contrib.auth.admin import UserAdmin as BaseUserAdmin, GroupAdmin +from django.utils.translation import ugettext_lazy as _ +from jet.filters import RelatedFieldAjaxListFilter, DateRangeFilter + +from core.admin import SafeModelAdmin +from .models import Profile, Company, PickUpRequest + + +@admin.register(get_user_model()) +class UserAdmin(SafeModelAdmin,BaseUserAdmin): + fieldsets = ( + (None, {'fields': ('email','username', 'password')}), + (_('Permissions'), {'fields': ('status', 'is_superuser', + 'groups', 'user_permissions')}), + (_('Important dates'), {'fields': ('last_login', 'confirmed_at')}), + ) + add_fieldsets = ( + (None, { + 'classes': ('wide',), + 'fields': ('username', 'password1', 'password2'), + }), + ) + list_display = ('username', 'email', 'status') + list_filter = ( + 'status', 'is_superuser', 'groups', + ('confirmed_at', DateRangeFilter) + ) + search_fields = ('username', 'first_name', 'last_name', 'email') + ordering = ('username',) + filter_horizontal = ('groups', 'user_permissions',) + + +@admin.register(Profile) +class ProfileAdmin(SafeModelAdmin, admin.ModelAdmin): + search_fields = ('first_name','last_name','patronymic','phone') + list_display = ('first_name','last_name','phone') + exclude = ('status',) + + def has_add_permission(self, request): + return False + + +@admin.register(Company) +class CompanyAdmin(SafeModelAdmin, admin.ModelAdmin): + list_display = ('company_name','inn','ogrn','status') + + def has_add_permission(self, request): + return False + + +@admin.register(PickUpRequest) +class PickUpRequestAdmin(admin.ModelAdmin): + list_display = ('points','requisites') + + +admin.site.unregister(GroupBase) diff --git a/accounts_ext/apps.py b/accounts_ext/apps.py index c708551..86d3fbf 100644 --- a/accounts_ext/apps.py +++ b/accounts_ext/apps.py @@ -4,4 +4,4 @@ from django.utils.translation import ugettext_lazy as _ class AccountsExtConfig(AppConfig): name = 'accounts_ext' - verbose_name = _("Authentication and Authorization") + verbose_name = _("Пользователи")