Private
Public Access
1
0

Merge branch 'release/v14.87'

This commit is contained in:
Sander Roosendaal
2020-12-17 08:49:08 +01:00
2 changed files with 29 additions and 14 deletions

View File

@@ -201,6 +201,7 @@ def create_async_workout(alldata,user,c2id):
verified = data['verified'] verified = data['verified']
startdatetime = iso8601.parse_date(data['date']) startdatetime = iso8601.parse_date(data['date'])
weightclass = data['weight_class'] weightclass = data['weight_class']
weightcategory = 'hwt' weightcategory = 'hwt'
if weightclass == "L": if weightclass == "L":
weightcategory = 'lwt' weightcategory = 'lwt'
@@ -223,13 +224,20 @@ def create_async_workout(alldata,user,c2id):
pytz.timezone(timezone_str) pytz.timezone(timezone_str)
).strftime('%H:%M:%S') ).strftime('%H:%M:%S')
try:
notes = data['comments']
name = notes[:40]
except (KeyError,TypeError):
notes = 'C2 Import Workout from {startdatetime}'.format(startdatetime=startdatetime)
name = notes
r = Rower.objects.get(user=user) r = Rower.objects.get(user=user)
w = Workout( w = Workout(
user=r, user=r,
workouttype = workouttype, workouttype = workouttype,
name = 'C2 Import Workout from {startdatetime}'.format(startdatetime=startdatetime), name = name,
date = workoutdate, date = workoutdate,
starttime = starttime, starttime = starttime,
startdatetime = startdatetime, startdatetime = startdatetime,
@@ -239,7 +247,7 @@ def create_async_workout(alldata,user,c2id):
weightcategory = weightcategory, weightcategory = weightcategory,
uploadedtoc2 = c2id, uploadedtoc2 = c2id,
csvfilename = csvfilename, csvfilename = csvfilename,
notes = 'imported from Concept2 log' notes = notes
) )
w.save() w.save()
@@ -995,10 +1003,15 @@ def add_workout_from_data(user,importid,data,strokedata,
title = "" title = ""
try: try:
t = data['comments'].split('\n', 1)[0] t = data['comments'].split('\n', 1)[0]
title += t[:20] title += t[:40]
except: except:
title = 'Imported' title = 'Imported'
try:
comments = data['comments']
except KeyError:
comments = ''
starttimeunix = arrow.get(rowdatetime).timestamp starttimeunix = arrow.get(rowdatetime).timestamp
res = make_cumvalues(0.1*strokedata['t']) res = make_cumvalues(0.1*strokedata['t'])

View File

@@ -1582,11 +1582,6 @@ def workout_c2import_view(request,page=1,userid=0,message=""):
r = getrequestrower(request,userid=userid) r = getrequestrower(request,userid=userid)
# if r.user != request.user:
# messages.info(request,"You cannot import other people's workouts from Concept2")
# r = getrower(request.user)
try: try:
thetoken = c2_open(request.user) thetoken = c2_open(request.user)
except NoTokenError: except NoTokenError:
@@ -1664,17 +1659,14 @@ importsources = {
@login_required() @login_required()
def workout_getimportview(request,externalid,source = 'c2'): def workout_getimportview(request,externalid,source = 'c2'):
res = importsources[source].get_workout(request.user,externalid) data,strokedata = importsources[source].get_workout(request.user,externalid)
if not res[0]: if not data:
messages.error(request,res[1]) messages.error(request,res[1])
url = reverse('workouts_view') url = reverse('workouts_view')
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
strokedata = res[1]
data = res[0]
try: try:
workouttype = mytypes.c2mappinginv[data['type']] workouttype = mytypes.c2mappinginv[data['type']]
except KeyError: except KeyError:
@@ -1713,6 +1705,8 @@ def workout_getimportview(request,externalid,source = 'c2'):
if timezone_str is None: if timezone_str is None:
timezone_str = 'UTC' timezone_str = 'UTC'
workoutdate = startdatetime.astimezone( workoutdate = startdatetime.astimezone(
pytz.timezone(timezone_str) pytz.timezone(timezone_str)
).strftime('%Y-%m-%d') ).strftime('%Y-%m-%d')
@@ -1720,6 +1714,13 @@ def workout_getimportview(request,externalid,source = 'c2'):
pytz.timezone(timezone_str) pytz.timezone(timezone_str)
).strftime('%H:%M:%S') ).strftime('%H:%M:%S')
try:
notes = data['comments']
name = notes[:40]
except KeyError:
comments = 'C2 Import Workout from {startdatetime}'.format(startdatetime=startdatetime)
name = notes
r = getrower(request.user) r = getrower(request.user)
id, message = dataprep.create_row_df(r, id, message = dataprep.create_row_df(r,
@@ -1730,7 +1731,8 @@ def workout_getimportview(request,externalid,source = 'c2'):
w = Workout.objects.get(id=id) w = Workout.objects.get(id=id)
w.uploadedtoc2 = c2id w.uploadedtoc2 = c2id
w.name = 'Imported from C2' w.name = name
w.notes = notes
w.workouttype = workouttype w.workouttype = workouttype
w.save() w.save()