From a8c4057436fcbc9bcd16386df007880c105801e0 Mon Sep 17 00:00:00 2001 From: Haiko Schol Date: Sat, 1 Mar 2025 17:53:38 +0100 Subject: [PATCH] fix upload even more --- photos/static/photos/components/uploader.js | 8 ++++++-- photos/views.py | 12 +++++++++--- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/photos/static/photos/components/uploader.js b/photos/static/photos/components/uploader.js index 83bd5f8..fb86803 100644 --- a/photos/static/photos/components/uploader.js +++ b/photos/static/photos/components/uploader.js @@ -163,8 +163,12 @@ class CoaUploader extends HTMLElement { this.metadata.city = this.city.value this.metadata.country = this.country.value - await this.addPhoto(this.metadata) - Toast(`Uploaded file ${this.metadata.filename} successfully`) + const uploadRes = await this.addPhoto(this.metadata) + if (uploadRes.success) { + Toast(`Uploaded file ${this.metadata.filename} successfully`) + } else { + ErrorToast(`Uploading file ${this.metadata.filename} failed`) + } } populateForm() { diff --git a/photos/views.py b/photos/views.py index dc30e22..ffbb567 100644 --- a/photos/views.py +++ b/photos/views.py @@ -136,11 +136,17 @@ def add_photo(request, metadata: dict[str, object]): coords = Coordinates.objects.filter(point=p).first() if not coords: - loc, _ = Location.objects.get_or_create( + loc = Location.objects.filter( city=pm.city, country=pm.country, - tzoffset=pm.tzoffset, - ) + ).first() + + if not loc: + loc = Location.objects.create( + city=pm.city, + country=pm.country, + tzoffset=pm.tzoffset, # this is probably wrong + ) coords = Coordinates.objects.create( point=p,