From c2cac0fbd33fb8e5afd3f0f3ec2eb6a2307f5156 Mon Sep 17 00:00:00 2001 From: George Katsikas <giorgakis.katsikas@gmail.com> Date: Thu, 1 Aug 2024 14:09:37 +0200 Subject: [PATCH] add absolute reverse utility function --- scipost_django/common/utils/urls.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 scipost_django/common/utils/urls.py diff --git a/scipost_django/common/utils/urls.py b/scipost_django/common/utils/urls.py new file mode 100644 index 000000000..9f3cfad6b --- /dev/null +++ b/scipost_django/common/utils/urls.py @@ -0,0 +1,19 @@ +__copyright__ = "Copyright © Stichting SciPost (SciPost Foundation)" +__license__ = "AGPL v3" + + +from django.contrib.auth.models import AnonymousUser +from django.contrib.sites.shortcuts import get_current_site + +from common.utils.models import get_current_domain + + +def absolute_reverse(view_name, args=None, kwargs=None): + """Return the absolute URL of a view, given its name and arguments.""" + from django.urls import reverse + + PROTOCOL = "https" + domain = get_current_domain() + reversed = reverse(view_name, args=args, kwargs=kwargs) + + return f"{PROTOCOL}://{domain}{reversed}" -- GitLab