From 30677c9468aeab46684c06daaa48837fac419576 Mon Sep 17 00:00:00 2001
From: Tom Teichler <tom.teichler@teckids.org>
Date: Sun, 12 Dec 2021 16:18:13 +0100
Subject: [PATCH] Add helper function to generate random code

---
 aleksis/core/util/core_helpers.py | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/aleksis/core/util/core_helpers.py b/aleksis/core/util/core_helpers.py
index 53ad87a6e..3b3c934a8 100644
--- a/aleksis/core/util/core_helpers.py
+++ b/aleksis/core/util/core_helpers.py
@@ -13,6 +13,7 @@ from django.db.models import Model, QuerySet
 from django.http import HttpRequest
 from django.shortcuts import get_object_or_404
 from django.utils import timezone
+from django.utils.crypto import get_random_string
 from django.utils.functional import lazy
 from django.utils.module_loading import import_string
 
@@ -279,6 +280,11 @@ def queryset_rules_filter(
     return queryset.filter(pk__in=wanted_objects)
 
 
+def generate_random_code(length, packet_size) -> str:
+    """Generate random code for e.g. invitations."""
+    return get_random_string(packet_size * length).lower()
+
+
 def unread_notifications_badge(request: HttpRequest) -> int:
     """Generate badge content with the number of unread notifications."""
     return request.user.person.unread_notifications_count
-- 
GitLab