fix
This commit is contained in:
@@ -10,6 +10,9 @@ import collections
|
||||
from django.views.generic.edit import CreateView
|
||||
from boatmovers.models import Athlete, Crew, Race, Result
|
||||
import boatmovers.tasks as tasks
|
||||
from boatmovers.forms import CsvForm
|
||||
from boatmovers.scrapers import *
|
||||
#from rowers.rows import handle_uploaded_file
|
||||
import django_rq
|
||||
queue = django_rq.get_queue('high')
|
||||
|
||||
@@ -55,6 +58,24 @@ class ResultCreateView(CreateView):
|
||||
|
||||
success_url = '/boatmovers/'
|
||||
|
||||
def athlete_view(request,id=0):
|
||||
athlete = get_object_or_404(Athlete, pk=id)
|
||||
crews = athlete.athlete_crews
|
||||
resultslist = []
|
||||
|
||||
for crew in crews.values():
|
||||
c = Crew.objects.get(id=crew['id'])
|
||||
results = Result.objects.filter(crew=c)
|
||||
for result in results:
|
||||
resultslist.append(result)
|
||||
|
||||
return render(request,
|
||||
'athlete.html',
|
||||
{
|
||||
'athlete':athlete,
|
||||
'results':resultslist,
|
||||
})
|
||||
|
||||
def boatmovers_view(request):
|
||||
athletes = Athlete.objects.filter(trueskill_exposed__gt=0,
|
||||
dummy=False).order_by('-trueskill_exposed','-birth_year','last_name','first_name')
|
||||
@@ -116,6 +137,48 @@ def race_verify(request, id=0):
|
||||
|
||||
return HttpResponseRedirect(reverse('race_view',kwargs={'id':race.id}))
|
||||
|
||||
def handle_uploaded_file(f):
|
||||
with open('media/results.csv', 'wb+') as destination:
|
||||
for chunk in f.chunks():
|
||||
destination.write(chunk)
|
||||
|
||||
def race_add_csv(request, id=0):
|
||||
race = get_object_or_404(Race, pk=id)
|
||||
if race.verified or race.processed:
|
||||
messages.error(request,"Cannot upload CSV file for processed or verified race")
|
||||
url = reverse("race_view",kwargs={'id':id})
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
form = CsvForm()
|
||||
if request.method == 'POST':
|
||||
|
||||
form = CsvForm(request.POST, request.FILES)
|
||||
|
||||
if form.is_valid():
|
||||
handle_uploaded_file(request.FILES['file'])
|
||||
if race.crew_size == 1:
|
||||
bankjes = ['Slag']
|
||||
elif race.crew_size == 2:
|
||||
bankjes = ['Slag','Boeg']
|
||||
elif race.crew_size == 4:
|
||||
bankjes = ['Slag','2','3','Boeg']
|
||||
elif race.crew_size == 8:
|
||||
bankjes = ['Slag','2','3','4','5','6','7','Boeg']
|
||||
|
||||
csv_reader('media/results.csv',race.id,bankjes=bankjes,gender=race.gender)
|
||||
|
||||
url = reverse('race_view',kwargs={'id':race.id})
|
||||
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
|
||||
return render(request,
|
||||
'csvform.html',
|
||||
{
|
||||
'race':race,
|
||||
'form':form,
|
||||
})
|
||||
|
||||
def race_process(request, id=0):
|
||||
race = get_object_or_404(Race, pk=id)
|
||||
job = queue.enqueue(tasks.race_process,race.id)
|
||||
|
||||
Reference in New Issue
Block a user