コード例 #1
0
ファイル: views.py プロジェクト: rikoster/DataPuisto
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
    })
コード例 #2
0
ファイル: views-old.py プロジェクト: rikoster/DataPuisto
 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
コード例 #3
0
ファイル: views-old.py プロジェクト: rikoster/DataPuisto
 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])
コード例 #4
0
ファイル: views.py プロジェクト: rikoster/DataPuisto
 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')
コード例 #5
0
ファイル: views-old.py プロジェクト: rikoster/DataPuisto
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
コード例 #6
0
 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
コード例 #7
0
 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
コード例 #8
0
 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])
コード例 #9
0
 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
コード例 #10
0
ファイル: views-old.py プロジェクト: rikoster/DataPuisto
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, "")
コード例 #11
0
ファイル: views.py プロジェクト: rikoster/DataPuisto
    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
コード例 #12
0
ファイル: views-old.py プロジェクト: rikoster/DataPuisto
 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])
コード例 #13
0
 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
コード例 #14
0
ファイル: views-old.py プロジェクト: rikoster/DataPuisto
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,
        },
    )
コード例 #15
0
ファイル: views-old.py プロジェクト: rikoster/DataPuisto
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,
        },
    )
コード例 #16
0
 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])
コード例 #17
0
    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
コード例 #18
0
ファイル: views-old.py プロジェクト: rikoster/DataPuisto
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
    })
コード例 #19
0
ファイル: views-old.py プロジェクト: rikoster/DataPuisto
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
        })
コード例 #20
0
    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
コード例 #21
0
ファイル: views-old.py プロジェクト: rikoster/DataPuisto
 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
コード例 #22
0
 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')
コード例 #23
0
 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