diff --git a/umap/forms.py b/umap/forms.py index 5fb2ed78..cff7150b 100644 --- a/umap/forms.py +++ b/umap/forms.py @@ -40,8 +40,7 @@ class AnonymousMapPermissionsForm(forms.ModelForm): def __init__(self, *args, **kwargs): super(AnonymousMapPermissionsForm, self).__init__(*args, **kwargs) - full_secret_link = "%s%s" % (settings.SITE_URL, self.instance.get_anonymous_edit_url()) - help_text = _('Secret edit link is %s') % full_secret_link + help_text = _('Secret edit link is %s') % self.instance.get_anonymous_edit_url() self.fields['edit_status'].help_text = _(help_text) STATUS = ( diff --git a/umap/management/commands/anonymous_edit_url.py b/umap/management/commands/anonymous_edit_url.py index f23d0f56..41c4c0a4 100644 --- a/umap/management/commands/anonymous_edit_url.py +++ b/umap/management/commands/anonymous_edit_url.py @@ -1,7 +1,6 @@ import sys from django.core.management.base import BaseCommand -from django.conf import settings from umap.models import Map @@ -25,4 +24,4 @@ class Command(BaseCommand): self.abort('Map with pk {} not found'.format(pk)) if map_.owner: self.abort('Map is not anonymous (owner: {})'.format(map_.owner)) - print(settings.SITE_URL + map_.get_anonymous_edit_url()) + print(map_.get_anonymous_edit_url()) diff --git a/umap/models.py b/umap/models.py index 6613a25c..fc9b8c40 100644 --- a/umap/models.py +++ b/umap/models.py @@ -162,7 +162,8 @@ class Map(NamedModel): def get_anonymous_edit_url(self): signer = Signer() signature = signer.sign(self.pk) - return reverse("map_anonymous_edit_url", kwargs={"signature": signature}) + path = reverse("map_anonymous_edit_url", kwargs={"signature": signature}) + return settings.SITE_URL + path def is_anonymous_owner(self, request): if self.owner: diff --git a/umap/tests/test_map_views.py b/umap/tests/test_map_views.py index 7a8f2f49..93d44a0c 100644 --- a/umap/tests/test_map_views.py +++ b/umap/tests/test_map_views.py @@ -45,8 +45,7 @@ def test_create(client, user, post_data): 'url': '/en/user/Joe/' }, 'editors': [], - 'anonymous_edit_url': ('http://umap.org' - + created_map.get_anonymous_edit_url()) + 'anonymous_edit_url': created_map.get_anonymous_edit_url() } diff --git a/umap/views.py b/umap/views.py index 22ef4111..c1ef32bd 100644 --- a/umap/views.py +++ b/umap/views.py @@ -466,13 +466,9 @@ class PermissionsMixin: for editor in self.object.editors.all() ] if not self.object.owner and self.object.is_anonymous_owner(self.request): - permissions["anonymous_edit_url"] = self.get_anonymous_edit_url() + permissions["anonymous_edit_url"] = self.object.get_anonymous_edit_url() return permissions - def get_anonymous_edit_url(self): - anonymous_url = self.object.get_anonymous_edit_url() - return settings.SITE_URL + anonymous_url - class MapView(MapDetailMixin, PermissionsMixin, DetailView): def get(self, request, *args, **kwargs): @@ -541,7 +537,7 @@ class MapCreate(FormLessEditMixin, PermissionsMixin, CreateView): if self.request.user.is_authenticated: form.instance.owner = self.request.user self.object = form.save() - anonymous_url = self.get_anonymous_edit_url() + anonymous_url = self.object.get_anonymous_edit_url() if not self.request.user.is_authenticated: msg = _( "Your map has been created! If you want to edit this map from " @@ -676,7 +672,7 @@ class MapClone(PermissionsMixin, View): msg = _( "Your map has been cloned! If you want to edit this map from " "another computer, please use this link: %(anonymous_url)s" - % {"anonymous_url": self.get_anonymous_edit_url()} + % {"anonymous_url": self.object.get_anonymous_edit_url()} ) else: msg = _("Congratulations, your map has been cloned!")