|
5 | 5 |
|
6 | 6 | from django.contrib.gis.db import models
|
7 | 7 | from django.conf import settings
|
8 |
| -from django.core.urlresolvers import reverse |
| 8 | +from django.urls import reverse |
9 | 9 | from django.utils.translation import ugettext_lazy as _
|
10 | 10 | from django.core.signing import Signer
|
11 | 11 | from django.contrib import messages
|
@@ -135,14 +135,14 @@ class Map(NamedModel):
|
135 | 135 | default=get_default_licence
|
136 | 136 | )
|
137 | 137 | modified_at = models.DateTimeField(auto_now=True)
|
138 |
| - tilelayer = models.ForeignKey(TileLayer, blank=True, null=True, related_name="maps", verbose_name=_("background")) |
139 |
| - owner = models.ForeignKey(settings.AUTH_USER_MODEL, blank=True, null=True, related_name="owned_maps", verbose_name=_("owner")) |
| 138 | + tilelayer = models.ForeignKey(TileLayer, blank=True, null=True, related_name="maps", verbose_name=_("background"), on_delete=models.PROTECT) |
| 139 | + owner = models.ForeignKey(settings.AUTH_USER_MODEL, blank=True, null=True, related_name="owned_maps", verbose_name=_("owner"), on_delete=models.PROTECT) |
140 | 140 | editors = models.ManyToManyField(settings.AUTH_USER_MODEL, blank=True, verbose_name=_("editors"))
|
141 | 141 | edit_status = models.SmallIntegerField(choices=EDIT_STATUS, default=OWNER, verbose_name=_("edit status"))
|
142 | 142 | share_status = models.SmallIntegerField(choices=SHARE_STATUS, default=PUBLIC, verbose_name=_("share status"))
|
143 | 143 | settings = DictField(blank=True, null=True, verbose_name=_("settings"))
|
144 | 144 |
|
145 |
| - objects = models.GeoManager() |
| 145 | + objects = models.Manager() |
146 | 146 | public = PublicManager()
|
147 | 147 |
|
148 | 148 | def get_absolute_url(self):
|
@@ -174,15 +174,15 @@ def can_edit(self, user=None, request=None):
|
174 | 174 | if (getattr(settings, "LEAFLET_STORAGE_ALLOW_ANONYMOUS", False)
|
175 | 175 | and self.is_anonymous_owner(request)):
|
176 | 176 | can = True
|
177 |
| - if user and user.is_authenticated(): |
| 177 | + if user and user.is_authenticated: |
178 | 178 | # if user is authenticated, attach as owner
|
179 | 179 | self.owner = user
|
180 | 180 | self.save()
|
181 | 181 | msg = _("Your anonymous map has been attached to your account %s" % user)
|
182 | 182 | messages.info(request, msg)
|
183 | 183 | if self.edit_status == self.ANONYMOUS:
|
184 | 184 | can = True
|
185 |
| - elif not user.is_authenticated(): |
| 185 | + elif not user.is_authenticated: |
186 | 186 | pass
|
187 | 187 | elif user == self.owner:
|
188 | 188 | can = True
|
@@ -253,7 +253,7 @@ class DataLayer(NamedModel):
|
253 | 253 | """
|
254 | 254 | Layer to store Features in.
|
255 | 255 | """
|
256 |
| - map = models.ForeignKey(Map) |
| 256 | + map = models.ForeignKey(Map, on_delete=models.CASCADE) |
257 | 257 | description = models.TextField(
|
258 | 258 | blank=True,
|
259 | 259 | null=True,
|
|
0 commit comments