def strava_access_obtained(request): logger.info("[{}] --- Fetch athlete".format(get_client_ip(request))) code = request.GET['code'] # The code is in GET params athlete = update_or_create_athlete(code) logger.info("[{}] --- Athlete updated {}".format(get_client_ip(request), athlete.username)) return render(request, 'StravaAnalyzer/athlete.html', { 'title': "Datapuisto - uusi Strava-urheilija", 'athlete': athlete })
def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context['courses'] = self.object.course_set.order_by('-begin') context['all_series'] = Puistoserie.objects.order_by('-id')[:7] logger.info("[{}] --------- View Puistoserie {}".format( get_client_ip(self.request), self.object)) return context
def get_success_url(self): logger.info("[{}] --------- Update race {}".format( get_client_ip(self.request), self.object)) # handles both url and file inputs results = get_raw_results_for_update(self.object) if 'race' in results: # Download was successful is_success = upload_analysis_from_raw_JSON(results) return reverse('race', args=[self.object.id])
def get_object(self): id_ = self.kwargs.get('id') logger.info("[{}] --------- SummaryReport {}".format( get_client_ip(self.request), id_)) if id_: return self.queryset.get(id=id_) else: return self.queryset.latest('dt_start')
def json_flat(request, raceid): logger.info("[{}] --- Serializing race {}".format(get_client_ip(request), raceid)) results = serialize('json', Results_flat.objects.filter(race_id=raceid)) response = HttpResponse(results, content_type="text/json") response['Content-Disposition'] \ = 'attachment; filename="results_flat_{}.json"'.format(raceid) return response
def get(self, request): #def get(self, request, *args, **kwargs): logger.info("[{}] --- Serializing MatchNames".format( get_client_ip(request))) matchnames = json.dumps( list(MatchName.objects.values_list('name', flat=True))) response = HttpResponse(matchnames, content_type="application/json") response["Access-Control-Allow-Origin"] = '*' return response
def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) req = self.request race = self.object logger.info("[{}] --- Display race settings {}".format( get_client_ip(req), race)) context['title'] = f"Datapuisto - kilpailuasetukset - {race.id}" return context
def get_success_url(self): user = self.request.user logger.info("[{}] -----{} updating race {}".format( get_client_ip(self.request), user.username, self.object)) # handles both url and file inputs ext_input = self.object.get_raw_results_for_update(user) if ext_input: # Download was successful self.object.update_raceresults_from_ext_input(ext_input) return reverse('race', args=[self.object.id])
def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) req = self.request result = self.object logger.info("[{}] --- Display result settings {}".format( get_client_ip(req), result)) context['title'] = f"Datapuisto - tulosasetukset - {result.id}" return context
def upload_race(request): logger.info("[{}] --- Upload race".format(get_client_ip(request))) if request.method == 'POST': form = UploadRaceForm(request.POST) if form.is_valid(): logger.info("[{}] ---+++--- {} uploading url {}".format( get_client_ip(request), request.user.username, request.POST['url'])) results = get_raw_results(request.POST, request.user) if 'race' in results: # Download was successful is_success = upload_analysis_from_raw_JSON(results) if is_success: form = UploadRaceForm() else: return send_upload_race_response(request, form, results['status']) else: form = UploadRaceForm() return send_upload_race_response(request, form, "")
def get(self, request): logger.info("[{}] --- Starting cron job check {}".format( get_client_ip(request), request.headers.get('X-Appengine-Cron'), )) # This is according to Google cloud instrctions if (request.headers.get('X-Appengine-Cron') and get_client_ip(request) == '0.1.0.1'): logger.info("[{}] --- Check passed, starting cron jobs".format( get_client_ip(request))) fetch_all_activities() update_or_create_activity_summaries() update_or_create_summaryreports() response = HttpResponse('[]', content_type="application/json") return response
def get_success_url(self): logger.info("[{}] --------- Update course {}".format( get_client_ip(self.request), self.object)) if self.object.puistoserie: # Updates several objects in puistoserie.py delete_course_from_puistoseries(self.object) calculate_puistoserie(self.object.puistoserie) return reverse('puistoserie', args=[self.object.puistoserie.id]) else: delete_course_from_puistoseries(self.object) return reverse('race', args=[self.object.race.id])
def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) req = self.request race = self.object viewmode = req.GET.get('viewmode') if not viewmode or viewmode == "-1": viewmode = "0" context['viewmode'] = viewmode logger.info("[{}] --- Display race {} in mode {}".format( get_client_ip(req), race, viewmode)) context['title'] = f"{race.serie} - {race.name}" return context
def result_settings(request, resid): r = get_object_or_404(Result, id=resid) logger.info("[{}] --- Display result settings {}".format( get_client_ip(request), r)) return render( request, 'NavigantAnalyzer/result_settings.html', { 'title': "DataPuisto - tulos", 'result': r, }, )
def race_settings(request, raceid): r = get_object_or_404(Race, id=raceid) logger.info("[{}] --- Display race settings {}".format( get_client_ip(request), r)) return render( request, 'NavigantAnalyzer/race_settings.html', { 'title': "DataPuisto - kilpailu", 'race': r, }, )
def get_success_url(self): logger.info("[{}] --------- {} assigns to puistoserie {}".format( get_client_ip(self.request), self.request.user.username, self.object)) if self.object.puistoserie: # Updates several objects in puistoserie.py self.object.delete_self_from_puistoserie() self.object.puistoserie.update_puistoserie() return reverse('puistoserie', args=[self.object.puistoserie.id]) else: self.object.delete_self_from_puistoserie() return reverse('race', args=[self.object.race.id])
def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) req = self.request result = self.object viewmode = req.GET.get('viewmode') if not viewmode or viewmode == "-1": viewmode = "0" context['viewmode'] = viewmode logger.info("[{}] --- Display result {}".format( get_client_ip(req), result)) context['title'] = f"Datapuisto tulos {result.name}" return context
def race(request, raceid): r = get_object_or_404(Race, id=raceid) logger.info("[{}] --- Display race {}".format(get_client_ip(request), r)) raceheader = "{} - {}".format(r.serie, r.name) viewmode = request.GET.get('viewmode') # -1 when nothing is selected from dropdown list if not viewmode or viewmode == "-1": viewmode = "0" return render(request, "NavigantAnalyzer/race.html", { 'title': "Datapuisto " + raceheader, 'race': r, 'viewmode': viewmode })
def result(request, resid): r = get_object_or_404(Result, id=resid) logger.info("[{}] --- Display result {}".format(get_client_ip(request), r)) resheader = r.name viewmode = request.GET.get('viewmode') # -1 when nothing is selected from dropdown list if not viewmode or viewmode == "-1": viewmode = "0" return render( request, "NavigantAnalyzer/result.html", { 'title': "Datapuisto tulos " + resheader, 'result': r, 'viewmode': viewmode })
def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) viewmode = self.request.GET.get('viewmode') if not viewmode or viewmode == "-1": viewmode = "0" context['viewmode'] = viewmode order_qs = self.object.puistoseriescore_set.all() if viewmode == "0": context['seriescores'] = order_qs.order_by('-score') else: context['seriescores'] = order_qs.order_by('-score_alt') context['courses'] = self.object.course_set.order_by('-begin') context['all_series'] = Puistoserie.objects.order_by('-id')[:7] context['title'] = f"DataPuisto - Puistosarja - {self.object.name}" logger.info("[{}] --------- View Puistoserie {}".format( get_client_ip(self.request), self.object)) return context
def get_object(self): id_ = self.kwargs.get('id') r = get_object_or_404(Race, id=id_) logger.info("[{}] --------- Delete race {}".format( get_client_ip(self.request), r)) return r
def get_success_url(self): logger.info("[{}] !!! ----- Delete race DONE {}".format( get_client_ip(self.request), self.kwargs.get('id'))) return reverse('delete_race_done')
def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) logger.info("[{}] --- Delete race {}".format( get_client_ip(self.request), self.object)) return context