diff --git a/beat/web/accounts/management/commands/postpone_users_validation.py b/beat/web/accounts/management/commands/postpone_users_validation.py index 3cf31ef2307d94e6d31546d04a9be218153868f0..646ba48d9196d43e58843d0c054f8f2f0e251b32 100644 --- a/beat/web/accounts/management/commands/postpone_users_validation.py +++ b/beat/web/accounts/management/commands/postpone_users_validation.py @@ -75,33 +75,22 @@ class Command(BaseCommand): postpone_count = 0 now = datetime.datetime.now() - for invalid_profile in invalid_userprofiles_new_users: - user = invalid_profile.user - expiration_date_delta = datetime.timedelta( - days=settings.ACCOUNT_ACTIVATION_DAYS - ) - if user.profile.registration_date + expiration_date_delta <= now: - count += 1 - user.delete() - invalid_profile.delete() - SupervisionTrack.objects.filter( - supervision_key=invalid_profile.supervision_key - ).delete() - RegistrationProfile.objects.filter(user=invalid_profile.user).delete() + expiration_date_delta_new_users = datetime.timedelta( + days=settings.ACCOUNT_ACTIVATION_DAYS + ) - for invalid_profile in invalid_userprofiles_waiting_validation: - user = invalid_profile.user - expiration_date_delta = datetime.timedelta( - days=settings.ACCOUNT_ACTIVATION_DAYS_FROM_SUPERVISOR - ) - if user.profile.registration_date + expiration_date_delta <= now: - count += 1 - user.delete() - invalid_profile.delete() - SupervisionTrack.objects.filter( - supervision_key=invalid_profile.supervision_key - ).delete() - RegistrationProfile.objects.filter(user=invalid_profile.user).delete() + expiration_date_delta_waiting_validation = datetime.timedelta( + days=settings.ACCOUNT_ACTIVATION_DAYS_FROM_SUPERVISOR + ) + + count += self.check_invalid_profiles( + invalid_userprofiles_new_users, expiration_date_delta_new_users, now + ) + count += self.check_invalid_profiles( + invalid_userprofiles_waiting_validation, + expiration_date_delta_waiting_validation, + now, + ) supervisiontracks = SupervisionTrack.objects.all() expiration_date_delta = datetime.timedelta( @@ -140,6 +129,25 @@ class Command(BaseCommand): ) ) + def check_invalid_profiles(self, invalid_profiles_list, expiration_date_delta, now): + """ + Override this method if you want to customize data inputs or + """ + count_updated_users = 0 + for invalid_profile in invalid_profiles_list: + user = invalid_profile.user + + if user.profile.registration_date + expiration_date_delta <= now: + count_updated_users += 1 + user.delete() + invalid_profile.delete() + SupervisionTrack.objects.filter( + supervision_key=invalid_profile.supervision_key + ).delete() + RegistrationProfile.objects.filter(user=invalid_profile.user).delete() + + return count_updated_users + def get_input_data(self, message, default=None): """ Override this method if you want to customize data inputs or