26 lines
722 B
Python
26 lines
722 B
Python
from secrets import token_urlsafe
|
|
|
|
from django.conf import settings
|
|
from django.urls import reverse
|
|
|
|
# #############################################################################
|
|
# Fonctions universelles
|
|
# #############################################################################
|
|
|
|
|
|
def choices_length(choices):
|
|
"""Renvoie la longueur maximale des choix de choices"""
|
|
m = 0
|
|
for c in choices:
|
|
m = max(m, len(c[0]))
|
|
return m
|
|
|
|
|
|
def token_generator():
|
|
"""Renvoie un token aléatoire pouvant être utilisé dans une url"""
|
|
return token_urlsafe(36)
|
|
|
|
|
|
def full_url(name, *args, **kwargs):
|
|
url = reverse(name, args=args, kwargs=kwargs)
|
|
return f"https://{settings.SERVER_DOMAIN}{url}"
|