Private
Public Access
1
0

form create changes

This commit is contained in:
Sander Roosendaal
2021-02-13 14:35:55 +01:00
parent 050c31a5c1
commit 3efcc8d042
8 changed files with 112 additions and 77 deletions

View File

@@ -14,6 +14,8 @@ import datetime
import json
from fitparse import FitFile
from django.http import HttpResponse
import requests
@@ -540,3 +542,42 @@ def allsundays(startdate,enddate):
while d<=enddate:
yield d
d += datetime.timedelta(days=7)
def steps_read_fit(filename,name='',sport='Custom'):
fitfile = FitFile(filename,check_crc=False)
records = fitfile.messages
m0 = records[0]
typ = m0.fields[0].value
if typ != 'workout':
raise TypeError("Wrong FIT file type")
steps = []
stepmessages = fitfile.get_messages('workout_step')
steps = []
stepmessages = fitfile.get_messages('workout_step')
for msg in stepmessages:
if msg.name == 'workout_step':
step = {}
for field in msg.fields:
ff = field.as_dict()
step[ff['name']] = ff['value']
steps.append(step)
for msg in fitfile.get_messages('workout'):
if msg.name == 'workout':
for field in msg.fields:
ff = field.as_dict()
if ff['name'] == 'wkt_name':
name = ff['value']
if ff['name'] == 'sport':
sport = ff['value']
d = {}
d['filename'] = filename
d['name'] = name
d['steps'] = steps
d['sport'] = sport
return d