Merge branch 'release/v6.66'
This commit is contained in:
@@ -833,7 +833,7 @@ def cp_from_workoutids(workoutids,debug=False):
|
|||||||
|
|
||||||
if df.empty:
|
if df.empty:
|
||||||
# change this
|
# change this
|
||||||
return 2
|
return 0,0,0
|
||||||
|
|
||||||
# df is not empty. We continue
|
# df is not empty. We continue
|
||||||
dfgrouped = df.groupby(['workoutid'])
|
dfgrouped = df.groupby(['workoutid'])
|
||||||
@@ -910,17 +910,21 @@ def handle_updatefitnessmetric(user_id,mode,workoutids,debug=False,
|
|||||||
|
|
||||||
powerfourmin,power2k,powerhour = cp_from_workoutids(workoutids,debug=debug)
|
powerfourmin,power2k,powerhour = cp_from_workoutids(workoutids,debug=debug)
|
||||||
|
|
||||||
mdict = {
|
if powerfourmin > 0 and power2k > 0 and powerhour > 0:
|
||||||
'user_id': user_id,
|
|
||||||
'PowerFourMin': powerfourmin,
|
|
||||||
'PowerTwoK': power2k,
|
|
||||||
'PowerOneHour': powerhour,
|
|
||||||
'workoutmode': mode,
|
|
||||||
'last_workout': max(workoutids),
|
|
||||||
'date': timezone.now().strftime('%Y-%m-%d'),
|
|
||||||
}
|
|
||||||
|
|
||||||
result = fitnessmetric_to_sql(mdict,debug=debug,doclean=True)
|
mdict = {
|
||||||
|
'user_id': user_id,
|
||||||
|
'PowerFourMin': powerfourmin,
|
||||||
|
'PowerTwoK': power2k,
|
||||||
|
'PowerOneHour': powerhour,
|
||||||
|
'workoutmode': mode,
|
||||||
|
'last_workout': max(workoutids),
|
||||||
|
'date': timezone.now().strftime('%Y-%m-%d'),
|
||||||
|
}
|
||||||
|
|
||||||
|
result = fitnessmetric_to_sql(mdict,debug=debug,doclean=True)
|
||||||
|
else:
|
||||||
|
result = 0
|
||||||
|
|
||||||
return result
|
return result
|
||||||
|
|
||||||
@@ -981,6 +985,7 @@ def handle_makeplot(f1, f2, t, hrdata, plotnr, imagename,
|
|||||||
elif (plotnr == 2):
|
elif (plotnr == 2):
|
||||||
fig1 = row.get_metersplot_erg(t)
|
fig1 = row.get_metersplot_erg(t)
|
||||||
elif (plotnr == 3):
|
elif (plotnr == 3):
|
||||||
|
t += ' - Heart Rate Distribution'
|
||||||
fig1 = row.get_piechart(t)
|
fig1 = row.get_piechart(t)
|
||||||
elif (plotnr == 4):
|
elif (plotnr == 4):
|
||||||
if haspower:
|
if haspower:
|
||||||
@@ -993,6 +998,7 @@ def handle_makeplot(f1, f2, t, hrdata, plotnr, imagename,
|
|||||||
else:
|
else:
|
||||||
fig1 = row.get_metersplot_otw(t)
|
fig1 = row.get_metersplot_otw(t)
|
||||||
elif (plotnr == 6):
|
elif (plotnr == 6):
|
||||||
|
t += ' - Heart Rate Distribution'
|
||||||
fig1 = row.get_piechart(t)
|
fig1 = row.get_piechart(t)
|
||||||
elif (plotnr == 7) or (plotnr == 10):
|
elif (plotnr == 7) or (plotnr == 10):
|
||||||
fig1 = row.get_metersplot_erg2(t)
|
fig1 = row.get_metersplot_erg2(t)
|
||||||
@@ -1001,6 +1007,7 @@ def handle_makeplot(f1, f2, t, hrdata, plotnr, imagename,
|
|||||||
elif (plotnr == 9) or (plotnr == 12):
|
elif (plotnr == 9) or (plotnr == 12):
|
||||||
fig1 = row.get_time_otwpower(t)
|
fig1 = row.get_time_otwpower(t)
|
||||||
elif (plotnr == 13) or (plotnr == 16):
|
elif (plotnr == 13) or (plotnr == 16):
|
||||||
|
t += ' - Power Distribution'
|
||||||
fig1 = row.get_power_piechart(t)
|
fig1 = row.get_power_piechart(t)
|
||||||
|
|
||||||
canvas = FigureCanvas(fig1)
|
canvas = FigureCanvas(fig1)
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ import requests
|
|||||||
import requests.auth
|
import requests.auth
|
||||||
import json
|
import json
|
||||||
from django.utils import timezone
|
from django.utils import timezone
|
||||||
from datetime import datetime
|
from datetime import datetime,timedelta
|
||||||
import numpy as np
|
import numpy as np
|
||||||
from dateutil import parser
|
from dateutil import parser
|
||||||
import time
|
import time
|
||||||
@@ -104,7 +104,7 @@ def underarmour_open(user):
|
|||||||
expires_in = res[1]
|
expires_in = res[1]
|
||||||
refresh_token = res[2]
|
refresh_token = res[2]
|
||||||
|
|
||||||
expirydatetime = timezone.now()+datetime.timedelta(seconds=expires_in)
|
expirydatetime = timezone.now()+timedelta(seconds=expires_in)
|
||||||
|
|
||||||
r = getrower(request.user)
|
r = getrower(request.user)
|
||||||
r.underarmourtoken = access_token
|
r.underarmourtoken = access_token
|
||||||
@@ -205,10 +205,12 @@ def get_underarmour_workout_list(user):
|
|||||||
'Api-Key': UNDERARMOUR_CLIENT_KEY,
|
'Api-Key': UNDERARMOUR_CLIENT_KEY,
|
||||||
'user-agent': 'sanderroosendaal',
|
'user-agent': 'sanderroosendaal',
|
||||||
'Content-Type': 'application/json'}
|
'Content-Type': 'application/json'}
|
||||||
url = "https://api.ua.com/v7.1/workout/?user="+str(get_userid(r.underarmourtoken))
|
url = "https://api.ua.com/v7.1/workout/?user="+str(get_userid(r.underarmourtoken))+"&order_by=-start_datetime"
|
||||||
|
|
||||||
|
|
||||||
s = requests.get(url,headers=headers)
|
s = requests.get(url,headers=headers)
|
||||||
|
|
||||||
|
|
||||||
return s
|
return s
|
||||||
|
|
||||||
# Get workout summary data by Underarmour ID
|
# Get workout summary data by Underarmour ID
|
||||||
@@ -408,7 +410,8 @@ def get_userid(access_token):
|
|||||||
'Api-Key': UNDERARMOUR_CLIENT_KEY,
|
'Api-Key': UNDERARMOUR_CLIENT_KEY,
|
||||||
'user-agent': 'sanderroosendaal',
|
'user-agent': 'sanderroosendaal',
|
||||||
'Content-Type': 'application/json'}
|
'Content-Type': 'application/json'}
|
||||||
url = "https://api.ua.com/v7.1/user/self"
|
|
||||||
|
url = "https://api.ua.com/v7.1/user/self/"
|
||||||
response = requests.get(url,headers=headers)
|
response = requests.get(url,headers=headers)
|
||||||
|
|
||||||
me_json = response.json()
|
me_json = response.json()
|
||||||
|
|||||||
@@ -9561,25 +9561,23 @@ def workout_underarmourimport_view(request,message=""):
|
|||||||
workouts = []
|
workouts = []
|
||||||
items = res.json()['_embedded']['workouts']
|
items = res.json()['_embedded']['workouts']
|
||||||
for item in items:
|
for item in items:
|
||||||
if 'has_time_series' in item:
|
s = item['start_datetime']
|
||||||
if item['has_time_series']:
|
i,r = underarmourstuff.get_idfromuri(request.user,item['_links'])
|
||||||
s = item['start_datetime']
|
n = item['name']
|
||||||
i,r = underarmourstuff.get_idfromuri(request.user,item['_links'])
|
try:
|
||||||
n = item['name']
|
d = item['aggregates']['distance_total']
|
||||||
try:
|
except KeyError:
|
||||||
d = item['aggregates']['distance_total']
|
d = 0
|
||||||
except KeyError:
|
try:
|
||||||
d = 0
|
ttot = item['aggregates']['active_time_total']
|
||||||
try:
|
except KeyError:
|
||||||
ttot = item['aggregates']['active_time_total']
|
ttot = 0
|
||||||
except KeyError:
|
|
||||||
ttot = 0
|
|
||||||
|
|
||||||
keys = ['id','distance','duration','starttime','type']
|
keys = ['id','distance','duration','starttime','type']
|
||||||
values = [i,d,ttot,s,r]
|
values = [i,d,ttot,s,r]
|
||||||
thedict = dict(zip(keys,values))
|
thedict = dict(zip(keys,values))
|
||||||
|
|
||||||
workouts.append(thedict)
|
workouts.append(thedict)
|
||||||
|
|
||||||
return render(request,'underarmour_list_import.html',
|
return render(request,'underarmour_list_import.html',
|
||||||
{'workouts':workouts,
|
{'workouts':workouts,
|
||||||
|
|||||||
Reference in New Issue
Block a user