Handle already existing pictures
This commit is contained in:
parent
f29719ef78
commit
73f80de794
1 changed files with 10 additions and 9 deletions
|
|
@ -193,6 +193,7 @@ class GalleryUpload(PermissionRequiredMixin, FormView):
|
|||
gallery_year = Path(str(gallery.date_start.year))
|
||||
gallery_dir = gallery_year / gallery.slug
|
||||
failed_upload = 0
|
||||
already_exists = 0
|
||||
for photo_file in files:
|
||||
# Check that we have a valid image
|
||||
try:
|
||||
|
|
@ -214,21 +215,21 @@ class GalleryUpload(PermissionRequiredMixin, FormView):
|
|||
owner=self.request.user,
|
||||
)
|
||||
photo_name = str(gallery_dir / photo_file.name)
|
||||
photo.image.save(photo_name, photo_file)
|
||||
photo.save()
|
||||
photo.galleries.set([gallery])
|
||||
|
||||
# Save to disk after successful database edit
|
||||
photo.image.save(photo_name, photo_file)
|
||||
except IntegrityError:
|
||||
messages.error(
|
||||
self.request,
|
||||
f"{photo_file.name} was not uploaded. Maybe the photo was already uploaded.",
|
||||
)
|
||||
failed_upload += 1
|
||||
already_exists += 1
|
||||
|
||||
# Notify user then managers
|
||||
if not failed_upload:
|
||||
messages.success(self.request, "All photos has been successfully uploaded.")
|
||||
n_success = len(files) - failed_upload - already_exists
|
||||
if already_exists:
|
||||
messages.success(self.request, f"{n_success} photos has been successfully uploaded, {already_exists} photos were skipped as they already exist in this gallery.")
|
||||
elif not failed_upload:
|
||||
messages.success(self.request, f"All {n_success} photos has been successfully uploaded.")
|
||||
else:
|
||||
n_success = len(files) - failed_upload
|
||||
messages.warning(
|
||||
self.request, f"Only {n_success} photos were successfully uploaded !"
|
||||
)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue