Init implementation of an user deletion system

This commit is contained in:
Götz 2019-05-15 03:12:59 +02:00
parent 2dd8a0d4df
commit 60462cdeee
3 changed files with 15 additions and 3 deletions

View File

@ -1,5 +1,6 @@
from django.contrib import admin
from .models import Realm
from .models import Realm, DeletedUser
# Register your models here.
admin.site.register(Realm)
admin.site.register(DeletedUser)

View File

@ -1,4 +1,4 @@
from django.contrib.auth.models import Group
from django.contrib.auth.models import Group, User
from django.db import models
@ -12,3 +12,11 @@ class Realm(models.Model):
def __str__(self):
return f'{self.name} - {self.ldap_base_dn}'
class DeletedUser(models.Model):
deletion_date = models.DateField(auto_now=True)
user = models.ForeignKey(User, on_delete=models.CASCADE)
def __str__(self):
return f'{self.user.username} - {self.deletion_date}'

View File

@ -12,7 +12,7 @@ from django.shortcuts import render, redirect
from django.utils.translation import gettext as _
from ldap import ALREADY_EXISTS, OBJECT_CLASS_VIOLATION
from account_helper.models import Realm
from account_helper.models import Realm, DeletedUser
from account_manager.forms import AddLDAPUserForm, UserDeleteListForm, UpdateLDAPUserForm, AdminUpdateLDAPUserForm, \
UserGroupListForm
from account_manager.main_views import is_realm_admin
@ -460,6 +460,9 @@ def user_delete_controller(ldap_user, realm):
try:
django_user = User.objects.get(username=ldap_user.username)
django_user.delete()
# TODO user deletion cron
# DeletedUser.objects.create(user=django_user)
except ObjectDoesNotExist:
pass
return