|
|
|
|
@ -3,16 +3,31 @@ 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 import_export import resources |
|
|
|
|
from jet.filters import RelatedFieldAjaxListFilter, DateRangeFilter |
|
|
|
|
|
|
|
|
|
from accounts_ext.forms import UserChangeForm, UserCreationForm |
|
|
|
|
from core.admin import SafeModelAdmin |
|
|
|
|
from .models import Profile, Company, UserPoints |
|
|
|
|
from .models import Profile, Company, UserPoints, Group |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class CustomUserResource(resources.ModelResource): |
|
|
|
|
class Meta: |
|
|
|
|
model = get_user_model() |
|
|
|
|
fields = ('id', 'username', 'email', 'status',) |
|
|
|
|
export_order = ( |
|
|
|
|
'id', 'username', 'email', 'status' |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@admin.register(get_user_model()) |
|
|
|
|
class UserAdmin(SafeModelAdmin,BaseUserAdmin): |
|
|
|
|
class UserAdmin(SafeModelAdmin, BaseUserAdmin): |
|
|
|
|
inlines = [ |
|
|
|
|
# @TODO: ADD INLINE ADMIN FOR REFERRALS |
|
|
|
|
] |
|
|
|
|
|
|
|
|
|
fieldsets = ( |
|
|
|
|
(None, {'fields': ('email','username', 'password')}), |
|
|
|
|
(None, {'fields': ('email', 'username', 'password')}), |
|
|
|
|
(_('Permissions'), {'fields': ('status', 'is_superuser', |
|
|
|
|
'groups', 'user_permissions')}), |
|
|
|
|
(_('Important dates'), {'fields': ('last_login', 'confirmed_at')}), |
|
|
|
|
@ -23,23 +38,31 @@ class UserAdmin(SafeModelAdmin,BaseUserAdmin): |
|
|
|
|
'fields': ('username', 'password1', 'password2'), |
|
|
|
|
}), |
|
|
|
|
) |
|
|
|
|
list_display = ('username', 'email', 'status') |
|
|
|
|
list_display = ('email', 'username', 'status') |
|
|
|
|
list_filter = ( |
|
|
|
|
'status', 'is_superuser', 'groups', |
|
|
|
|
('confirmed_at', DateRangeFilter) |
|
|
|
|
('confirmed_at', DateRangeFilter), |
|
|
|
|
('create_at', DateRangeFilter), |
|
|
|
|
('updated_at', DateRangeFilter), |
|
|
|
|
) |
|
|
|
|
search_fields = ('username', 'first_name', 'last_name', 'email') |
|
|
|
|
ordering = ('username',) |
|
|
|
|
filter_horizontal = ('groups', 'user_permissions',) |
|
|
|
|
list_editable = ('status',) |
|
|
|
|
filter_horizontal = () |
|
|
|
|
form = UserChangeForm |
|
|
|
|
add_form = UserCreationForm |
|
|
|
|
|
|
|
|
|
resource_class = CustomUserResource |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@admin.register(Profile) |
|
|
|
|
class ProfileAdmin(SafeModelAdmin, admin.ModelAdmin): |
|
|
|
|
search_fields = ('first_name','last_name','phone') |
|
|
|
|
list_display = ('first_name','last_name','phone') |
|
|
|
|
class ProfileAdmin(admin.ModelAdmin): |
|
|
|
|
search_fields = ('first_name', 'last_name', 'phone') |
|
|
|
|
list_display = ('user', 'first_name', 'last_name', 'phone') |
|
|
|
|
list_filter = ( |
|
|
|
|
('birthday', DateRangeFilter), |
|
|
|
|
) |
|
|
|
|
readonly_fields = ('first_name', 'last_name', 'phone',) |
|
|
|
|
exclude = ('status',) |
|
|
|
|
|
|
|
|
|
def has_delete_permission(self, request, obj=None): |
|
|
|
|
@ -50,10 +73,11 @@ class ProfileAdmin(SafeModelAdmin, admin.ModelAdmin): |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@admin.register(Company) |
|
|
|
|
class CompanyAdmin(SafeModelAdmin, admin.ModelAdmin): |
|
|
|
|
list_display = ('id','company_name','status') |
|
|
|
|
search_fields = ('company_name','inn','ogrn'), |
|
|
|
|
list_filter = ('status',) |
|
|
|
|
class CompanyAdmin(admin.ModelAdmin): |
|
|
|
|
search_fields = ('company_name', 'inn', 'ogrn'), |
|
|
|
|
list_display = ('user', 'company_name', 'type') |
|
|
|
|
list_filter = ('type',) |
|
|
|
|
readonly_fields = ('company_name', 'inn', 'ogrn', 'type') |
|
|
|
|
|
|
|
|
|
def has_delete_permission(self, request, obj=None): |
|
|
|
|
return False |
|
|
|
|
@ -63,3 +87,8 @@ class CompanyAdmin(SafeModelAdmin, admin.ModelAdmin): |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin.site.unregister(GroupBase) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@admin.register(Group) |
|
|
|
|
class GroupAdmin(GroupAdmin): |
|
|
|
|
pass |
|
|
|
|
|