diff --git a/scipost_django/common/utils/urls.py b/scipost_django/common/utils/urls.py new file mode 100644 index 0000000000000000000000000000000000000000..9f3cfad6be8f6559d8faadb2fcc11fbd3eec5ab6 --- /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}"