Add a continious upload V0
This commit is contained in:
parent
9ca3a71fc3
commit
5fac72bb46
2 changed files with 130 additions and 13 deletions
|
|
@ -12,6 +12,7 @@ from django.contrib.auth.mixins import LoginRequiredMixin, PermissionRequiredMix
|
|||
from django.core.mail import mail_admins
|
||||
from django.db import IntegrityError
|
||||
from django.http import HttpResponse
|
||||
from django.http import JsonResponse
|
||||
from django.shortcuts import redirect
|
||||
from django.urls import reverse_lazy
|
||||
from django.utils.text import slugify
|
||||
|
|
@ -189,7 +190,17 @@ class GalleryUpload(PermissionRequiredMixin, FormView):
|
|||
|
||||
def form_valid(self, form):
|
||||
# Get or create gallery
|
||||
|
||||
if form.data.get("reptype","")=="json":
|
||||
response_json = True
|
||||
finish_json = form.data.get("end","")=="end"
|
||||
else :
|
||||
response_json = False
|
||||
|
||||
gallery = form.get_or_create_gallery()
|
||||
|
||||
jsondata = {"galleryID":gallery.id,"code":200}
|
||||
|
||||
gallery_year = Path(str(gallery.date_start.year))
|
||||
gallery_dir = gallery_year / gallery.slug
|
||||
|
||||
|
|
@ -207,6 +218,8 @@ class GalleryUpload(PermissionRequiredMixin, FormView):
|
|||
messages.error(
|
||||
self.request, f"{photo_file.name} was not recognized as an image"
|
||||
)
|
||||
jsondata["code"]=400
|
||||
jsondata["error"] = f"{photo_file.name} was not recognized as an image"
|
||||
continue
|
||||
|
||||
title = f"{gallery.title} - {photo_file.name}"
|
||||
|
|
@ -228,24 +241,38 @@ class GalleryUpload(PermissionRequiredMixin, FormView):
|
|||
|
||||
uploaded_photo_name.append(photo_file.name)
|
||||
|
||||
|
||||
# Notify user then managers
|
||||
n_success = len(uploaded_photo_name)
|
||||
if already_exists:
|
||||
messages.success(
|
||||
self.request,
|
||||
f"{n_success} photo(s) uploaded, {already_exists} photo(s) skipped as they already exist in this gallery.",
|
||||
)
|
||||
else:
|
||||
messages.success(self.request, f"{n_success} photo(s) uploaded.")
|
||||
if not response_json :
|
||||
if already_exists:
|
||||
messages.success(
|
||||
self.request,
|
||||
f"{n_success} photo(s) uploaded, {already_exists} photo(s) skipped as they already exist in this gallery.",
|
||||
)
|
||||
else:
|
||||
messages.success(self.request, f"{n_success} photo(s) uploaded.")
|
||||
|
||||
|
||||
# Notify administrators on new uploads
|
||||
gallery_url = reverse_lazy("photologue:pl-gallery", args=[gallery.slug])
|
||||
gallery_url = self.request.build_absolute_uri(gallery_url)
|
||||
if uploaded_photo_name:
|
||||
if uploaded_photo_name and (not response_json):
|
||||
photos = ", ".join(uploaded_photo_name)
|
||||
mail_admins(
|
||||
subject=f"New upload from {self.request.user.username}",
|
||||
message=f"{self.request.user.username} has uploaded in <{gallery_url}>:\n{photos}",
|
||||
)
|
||||
|
||||
return super().form_valid(form)
|
||||
elif response_json and finish_json :
|
||||
photos = ", ".join(uploaded_photo_name)
|
||||
mail_admins(
|
||||
subject=f"New continious upload from {self.request.user.username}",
|
||||
message=f"{self.request.user.username} has uploaded multiples photo with continious upload in <{gallery_url}>",
|
||||
)
|
||||
if response_json :
|
||||
jsondata["uploadeds"] = uploaded_photo_name
|
||||
return JsonResponse(jsondata)
|
||||
|
||||
else :
|
||||
return super().form_valid(form)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue