2020-02-02 03:45:16 +01:00
|
|
|
from django.shortcuts import render
|
|
|
|
from django.http import HttpResponse
|
2020-06-15 00:32:25 +02:00
|
|
|
from .forms import PhotoForm
|
2020-06-20 04:01:22 +02:00
|
|
|
from .forms import SearchForm
|
2020-06-20 06:20:00 +02:00
|
|
|
from .forms import ChangeForm
|
|
|
|
from .forms import ChangeIDForm
|
2020-06-15 00:32:25 +02:00
|
|
|
from django.http import HttpResponseRedirect
|
2020-02-02 03:45:16 +01:00
|
|
|
|
2020-06-18 20:38:44 +02:00
|
|
|
from .models import PhotoManager
|
|
|
|
from .models import Photo
|
2020-06-19 00:42:33 +02:00
|
|
|
from .models import Competitions
|
2020-06-20 04:01:22 +02:00
|
|
|
from .models import PhotoMeta
|
2020-06-18 20:38:44 +02:00
|
|
|
|
2020-06-20 04:01:22 +02:00
|
|
|
from .functions import findNumber
|
2020-06-18 20:38:44 +02:00
|
|
|
|
2020-02-02 03:45:16 +01:00
|
|
|
|
|
|
|
# Create your views here.
|
|
|
|
def index(request):
|
2020-06-15 00:32:25 +02:00
|
|
|
return render(request, 'index.html', {})
|
|
|
|
# return HttpResponse("Hello, world. This is imageUploader")
|
|
|
|
|
|
|
|
|
|
|
|
def uploadPhotos(request):
|
|
|
|
if request.method == 'POST':
|
|
|
|
form = PhotoForm(request.POST, request.FILES)
|
2020-06-19 00:42:33 +02:00
|
|
|
comp = request.POST['zawody']
|
2020-06-18 20:38:44 +02:00
|
|
|
files = request.FILES.getlist('file_field')
|
2020-06-15 00:32:25 +02:00
|
|
|
if form.is_valid():
|
2020-06-18 20:38:44 +02:00
|
|
|
for f in files:
|
2020-06-19 00:42:33 +02:00
|
|
|
zawody = Competitions.objects.get(comp_slug=comp)
|
|
|
|
|
2020-06-20 04:01:22 +02:00
|
|
|
# photo = Photo.objects.create_photo(zawody,comp+"_"+f,f)
|
|
|
|
file_name = comp+"_"+f.name
|
|
|
|
photo = Photo(comp_id=zawody, name=file_name, image=f)
|
|
|
|
photo.save(force_insert=True)
|
|
|
|
# print("URL of photo: "+photo.image.url)
|
|
|
|
numbers = findNumber(photo.image.url)
|
|
|
|
|
|
|
|
for nr in numbers:
|
|
|
|
pm = PhotoMeta(comp_id=zawody, photo_id=photo, meta_key="detect_number", meta_value=nr)
|
|
|
|
pm.save(force_insert=True)
|
2020-06-18 20:38:44 +02:00
|
|
|
# return self.form_valid(form)
|
2020-06-20 04:01:22 +02:00
|
|
|
return HttpResponseRedirect('/success/')
|
2020-06-18 20:38:44 +02:00
|
|
|
else:
|
|
|
|
# return self.form_invalid(form)
|
|
|
|
# form.save()
|
|
|
|
# return render(request, print(request.FILES['file_field']))
|
2020-06-20 04:01:22 +02:00
|
|
|
return HttpResponseRedirect('/failed/')
|
2020-06-15 00:32:25 +02:00
|
|
|
else:
|
|
|
|
form = PhotoForm()
|
|
|
|
return render(request, 'upload.html', {'form': form})
|
|
|
|
# return HttpResponse("Hello, world. This is imageUploader")
|
2020-06-20 04:01:22 +02:00
|
|
|
|
|
|
|
|
|
|
|
def searchPhotos(request):
|
|
|
|
if request.method == 'POST':
|
|
|
|
form = SearchForm(request.POST)
|
|
|
|
comp = request.POST['zawody']
|
|
|
|
numer = request.POST['numer']
|
2020-06-20 06:20:00 +02:00
|
|
|
# print(request)
|
2020-06-20 04:01:22 +02:00
|
|
|
|
|
|
|
if form.is_valid():
|
|
|
|
allFotos = []
|
|
|
|
imgUrls = []
|
|
|
|
zawody = Competitions.objects.get(comp_slug=comp)
|
|
|
|
try:
|
|
|
|
zdjecia = PhotoMeta.objects.filter(comp_id=zawody, meta_value=numer)
|
|
|
|
except PhotoMeta.DoesNotExist:
|
|
|
|
zdjecia = None
|
|
|
|
if( zdjecia ):
|
|
|
|
for zdjecie in zdjecia:
|
|
|
|
# allFotos.append(Photo.objects.get(id=zdjecie.photo_id))
|
|
|
|
imgUrls.append(zdjecie.photo_id.image.name)
|
|
|
|
|
|
|
|
# for fotos in allFotos:
|
|
|
|
# imgUrls.append(fotos.image.url)
|
|
|
|
|
|
|
|
return render(request, 'search.html', {'foto': imgUrls})
|
|
|
|
else:
|
|
|
|
print('no ni ma')
|
2020-06-20 06:20:00 +02:00
|
|
|
return HttpResponseRedirect('/failed/')
|
2020-06-20 04:01:22 +02:00
|
|
|
|
|
|
|
return HttpResponseRedirect('/success/')
|
|
|
|
else:
|
|
|
|
|
|
|
|
return HttpResponseRedirect('/failed/')
|
|
|
|
else:
|
|
|
|
form = SearchForm()
|
|
|
|
return render(request, 'search.html', {'form': form})
|
|
|
|
# return HttpResponse("Hello, world. This is imageUploader")
|
2020-06-20 06:20:00 +02:00
|
|
|
|
|
|
|
|
|
|
|
def changePhotos(request):
|
|
|
|
if request.method == 'POST':
|
|
|
|
form = ChangeForm(request.POST)
|
|
|
|
comp = request.POST['zawody']
|
|
|
|
imgMeta = []
|
|
|
|
if form.is_valid():
|
|
|
|
zawody = Competitions.objects.get(comp_slug=comp)
|
|
|
|
try:
|
|
|
|
zdjecia = Photo.objects.filter(
|
|
|
|
comp_id=zawody)
|
|
|
|
except Photo.DoesNotExist:
|
|
|
|
zdjecia = None
|
|
|
|
|
|
|
|
if( zdjecia ):
|
|
|
|
for zdjecie in zdjecia:
|
|
|
|
meta = []
|
|
|
|
pm = PhotoMeta.objects.filter(photo_id=zdjecie)
|
|
|
|
meta.append(zdjecie.image.name)
|
|
|
|
numery = []
|
|
|
|
for numer in pm:
|
|
|
|
numery.append(numer.meta_value)
|
|
|
|
meta.append(numery)
|
2020-06-20 07:48:31 +02:00
|
|
|
meta.append(zdjecie.id)
|
2020-06-20 06:20:00 +02:00
|
|
|
imgMeta.append(meta)
|
|
|
|
|
|
|
|
return render(request, 'change.html', {'meta': imgMeta})
|
|
|
|
else:
|
|
|
|
print('no ni ma')
|
|
|
|
return HttpResponseRedirect('/failed/')
|
|
|
|
|
|
|
|
else:
|
|
|
|
return HttpResponseRedirect('/failed/')
|
|
|
|
else:
|
|
|
|
form = ChangeForm()
|
|
|
|
|
|
|
|
return render(request, 'change.html', {'form': form})
|
|
|
|
|
|
|
|
|
|
|
|
def changePhotoID(request, photo):
|
|
|
|
if request.method == 'POST':
|
|
|
|
form = ChangeIDForm(request.POST)
|
|
|
|
meta = request.POST['numerki']
|
|
|
|
numerki = meta.split(',')
|
|
|
|
zdjecie = Photo.objects.get(pk=photo)
|
|
|
|
|
|
|
|
PhotoMeta.objects.filter(photo_id=zdjecie).delete()
|
|
|
|
for n in numerki:
|
|
|
|
n = n.strip()
|
|
|
|
pm = PhotoMeta(comp_id=zdjecie.comp_id, photo_id=zdjecie,
|
|
|
|
meta_key="detect_number", meta_value=n)
|
|
|
|
pm.save(force_insert=True)
|
|
|
|
|
|
|
|
return render(request, 'changeid.html')
|
|
|
|
else:
|
|
|
|
form = ChangeIDForm()
|
|
|
|
try:
|
|
|
|
zdjecie = Photo.objects.get(pk=photo)
|
|
|
|
except Photo.DoesNotExist:
|
|
|
|
zdjecie = None
|
|
|
|
|
|
|
|
if(zdjecie):
|
|
|
|
pm = PhotoMeta.objects.filter(photo_id=zdjecie)
|
|
|
|
foto = zdjecie.image.url
|
|
|
|
numery = []
|
|
|
|
for nr in pm:
|
|
|
|
numery.append(nr.meta_value)
|
|
|
|
else:
|
|
|
|
print('no ni ma')
|
|
|
|
return HttpResponseRedirect('/failed/')
|
|
|
|
|
|
|
|
return render(request, 'changeid.html', {'photoid':photo,'foto': foto, 'numery': numery, 'form': form})
|
2020-06-20 07:48:31 +02:00
|
|
|
|
|
|
|
def ss(request):
|
|
|
|
|
|
|
|
return render(request, 'sukces.html')
|
|
|
|
|
|
|
|
|
|
|
|
def ff(request):
|
|
|
|
|
|
|
|
return render(request, 'failed.html')
|