feat: updated UserModel, changed status to is_online and added is_contact_only
This commit is contained in:
parent
fc40cfa991
commit
6875c92cea
4 changed files with 9 additions and 8 deletions
|
|
@ -4,23 +4,23 @@ from .models import User
|
||||||
|
|
||||||
class UserAdmin(admin.ModelAdmin):
|
class UserAdmin(admin.ModelAdmin):
|
||||||
exclude = ('uId',)
|
exclude = ('uId',)
|
||||||
list_display = ('first_name', 'last_name', 'email', 'phone', 'initials', 'color', 'status', 'last_login', 'is_active', 'is_staff')
|
list_display = ('first_name', 'last_name', 'email', 'phone', 'initials', 'color', 'is_online', 'is_contact_only', 'last_login', 'is_active', 'is_staff')
|
||||||
list_filter = ('status', 'is_active', 'is_staff')
|
list_filter = ('is_contact_only', 'is_online', 'is_active', 'is_staff')
|
||||||
search_fields = ('email', 'first_name', 'last_name')
|
search_fields = ('email', 'first_name', 'last_name')
|
||||||
|
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
(None, {
|
(None, {
|
||||||
'fields': ('first_name', 'last_name', 'email', 'phone', 'password') #Passwort hier beibehalten.
|
'fields': ('first_name', 'last_name', 'email', 'phone', 'password')
|
||||||
}),
|
}),
|
||||||
('Additional Info', {
|
('Additional Info', {
|
||||||
'fields': ('initials', 'color', 'status', 'last_login')
|
'fields': ('initials', 'color', 'is_online', 'is_contact_only', 'last_login')
|
||||||
}),
|
}),
|
||||||
('Permissions', {
|
('Permissions', {
|
||||||
'fields': ('is_active', 'is_staff')
|
'fields': ('is_active', 'is_staff')
|
||||||
}),
|
}),
|
||||||
)
|
)
|
||||||
|
|
||||||
list_editable = ('is_active', 'is_staff', 'status')
|
list_editable = ('is_active', 'is_staff', 'is_online', 'is_contact_only')
|
||||||
ordering = ('last_name',)
|
ordering = ('last_name',)
|
||||||
|
|
||||||
def save_model(self, request, obj, form, change):
|
def save_model(self, request, obj, form, change):
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,8 @@ class User(AbstractBaseUser, PermissionsMixin):
|
||||||
phone = models.CharField(max_length=20, blank=True, null=True)
|
phone = models.CharField(max_length=20, blank=True, null=True)
|
||||||
initials = models.CharField(max_length=10, blank=True)
|
initials = models.CharField(max_length=10, blank=True)
|
||||||
color = models.CharField(max_length=20, blank=True)
|
color = models.CharField(max_length=20, blank=True)
|
||||||
status = models.BooleanField(default=True)
|
is_online = models.BooleanField(default=False)
|
||||||
|
is_contact_only = models.BooleanField(default=False)
|
||||||
last_login = models.DateTimeField(blank=True, null=True)
|
last_login = models.DateTimeField(blank=True, null=True)
|
||||||
|
|
||||||
is_active = models.BooleanField(default=True)
|
is_active = models.BooleanField(default=True)
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ from djangorestframework_camel_case.render import CamelCaseJSONRenderer
|
||||||
class UserSerializer(serializers.ModelSerializer):
|
class UserSerializer(serializers.ModelSerializer):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = User
|
model = User
|
||||||
fields = ['id', 'first_name', 'last_name', 'email', 'phone', 'initials', 'color', 'status', 'last_login']
|
fields = ['id', 'first_name', 'last_name', 'email', 'phone', 'initials', 'color', 'is_online', 'is_contact_only', 'last_login']
|
||||||
|
|
||||||
class UserViewSet(viewsets.ModelViewSet):
|
class UserViewSet(viewsets.ModelViewSet):
|
||||||
serializer_class = UserSerializer
|
serializer_class = UserSerializer
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ from rest_framework import status
|
||||||
class UserViewSet(viewsets.ModelViewSet):
|
class UserViewSet(viewsets.ModelViewSet):
|
||||||
permission_classes = [IsAuthenticated]
|
permission_classes = [IsAuthenticated]
|
||||||
|
|
||||||
queryset = User.objects.all()
|
queryset = User.objects.filter(is_active=True, is_superuser=False)
|
||||||
serializer_class = UserSerializer
|
serializer_class = UserSerializer
|
||||||
|
|
||||||
def retrieve(self, request, pk=None):
|
def retrieve(self, request, pk=None):
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue