diff --git a/src/agenda_culturel/models.py b/src/agenda_culturel/models.py index 09f0d2e..b6bfeed 100644 --- a/src/agenda_culturel/models.py +++ b/src/agenda_culturel/models.py @@ -999,19 +999,25 @@ class Event(models.Model): def download_image(self): # first download file - a = urlparse(self.image) - basename = os.path.basename(a.path) + if str(self.image) != '': + a = urlparse(self.image) + basename = os.path.basename(a.path) - ext = basename.split('.')[-1] - filename = "%s.%s" % (uuid.uuid4(), ext) + try: + basename = basename.decode() + except: + pass - try: - tmpfile, _ = urllib.request.urlretrieve(self.image) - except: - return None + ext = basename.split('.')[-1] + filename = "%s.%s" % (uuid.uuid4(), ext) - # if the download is ok, then create the corresponding file object - self.local_image = File(name=filename, file=open(tmpfile, "rb")) + try: + tmpfile, _ = urllib.request.urlretrieve(self.image) + except: + return None + + # if the download is ok, then create the corresponding file object + self.local_image = File(name=filename, file=open(tmpfile, "rb")) def add_pending_organisers(self, organisers): self.pending_organisers = organisers