added record of workout origin
This commit is contained in:
@@ -342,6 +342,7 @@ def timedeltaconv(x):
|
|||||||
# Processes painsled CSV file to database
|
# Processes painsled CSV file to database
|
||||||
def save_workout_database(f2,r,dosmooth=True,workouttype='rower',
|
def save_workout_database(f2,r,dosmooth=True,workouttype='rower',
|
||||||
dosummary=True,title='Workout',
|
dosummary=True,title='Workout',
|
||||||
|
workoutsource='unknown',
|
||||||
notes='',totaldist=0,totaltime=0,
|
notes='',totaldist=0,totaltime=0,
|
||||||
summary='',
|
summary='',
|
||||||
makeprivate=False,
|
makeprivate=False,
|
||||||
@@ -468,6 +469,7 @@ def save_workout_database(f2,r,dosmooth=True,workouttype='rower',
|
|||||||
duration=duration,distance=totaldist,
|
duration=duration,distance=totaldist,
|
||||||
weightcategory=r.weightcategory,
|
weightcategory=r.weightcategory,
|
||||||
starttime=workoutstarttime,
|
starttime=workoutstarttime,
|
||||||
|
workoutsource=workoutsource,
|
||||||
csvfilename=f2,notes=notes,summary=summary,
|
csvfilename=f2,notes=notes,summary=summary,
|
||||||
maxhr=maxhr,averagehr=averagehr,
|
maxhr=maxhr,averagehr=averagehr,
|
||||||
startdatetime=workoutstartdatetime,
|
startdatetime=workoutstartdatetime,
|
||||||
@@ -646,6 +648,7 @@ def new_workout_from_file(r,f2,
|
|||||||
workouttype=workouttype,
|
workouttype=workouttype,
|
||||||
makeprivate=makeprivate,
|
makeprivate=makeprivate,
|
||||||
dosummary=dosummary,
|
dosummary=dosummary,
|
||||||
|
workoutsource=fileformat,
|
||||||
summary=summary,
|
summary=summary,
|
||||||
inboard=inboard,oarlength=oarlength,
|
inboard=inboard,oarlength=oarlength,
|
||||||
title=title)
|
title=title)
|
||||||
|
|||||||
@@ -337,6 +337,28 @@ class Workout(models.Model):
|
|||||||
('other','Other'),
|
('other','Other'),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
workoutsources = (
|
||||||
|
('strava','strava'),
|
||||||
|
('concept2','concept2'),
|
||||||
|
('sporttracks','sporttracks'),
|
||||||
|
('runkeeper','runkeeper'),
|
||||||
|
('mapmyfitness','mapmyfitness'),
|
||||||
|
('csv','painsled'),
|
||||||
|
('tcx','tcx'),
|
||||||
|
('rp','rp'),
|
||||||
|
('mystery','mystery'),
|
||||||
|
('tcxnohr','tcx (no HR)'),
|
||||||
|
('rowperfect3','rowperfect3'),
|
||||||
|
('ergdata','ergdata'),
|
||||||
|
('boatcoach','boatcoach'),
|
||||||
|
('bcmike','boatcoach (develop)'),
|
||||||
|
('painsleddesktop','painsleddesktop'),
|
||||||
|
('speedcoach','speedcoach'),
|
||||||
|
('speedcoach2','speedcoach2'),
|
||||||
|
('ergstick','ergstick'),
|
||||||
|
('fit','fit'),
|
||||||
|
('unknown','unknown'))
|
||||||
|
|
||||||
boattypes = (
|
boattypes = (
|
||||||
('1x', '1x (single)'),
|
('1x', '1x (single)'),
|
||||||
('2x', '2x (double)'),
|
('2x', '2x (double)'),
|
||||||
@@ -356,6 +378,8 @@ class Workout(models.Model):
|
|||||||
name = models.CharField(max_length=150)
|
name = models.CharField(max_length=150)
|
||||||
date = models.DateField()
|
date = models.DateField()
|
||||||
workouttype = models.CharField(choices=workouttypes,max_length=50)
|
workouttype = models.CharField(choices=workouttypes,max_length=50)
|
||||||
|
workoutsource = models.CharField(choices=workoutsources,max_length=100,
|
||||||
|
default='unknown')
|
||||||
boattype = models.CharField(choices=boattypes,max_length=50,
|
boattype = models.CharField(choices=boattypes,max_length=50,
|
||||||
default='1x (single)',
|
default='1x (single)',
|
||||||
verbose_name = 'Boat Type')
|
verbose_name = 'Boat Type')
|
||||||
|
|||||||
@@ -381,7 +381,8 @@ def checkworkoutuser(user,workout):
|
|||||||
# Create workout data from Strava or Concept2
|
# Create workout data from Strava or Concept2
|
||||||
# data and create the associated Workout object and save it
|
# data and create the associated Workout object and save it
|
||||||
def add_workout_from_strokedata(user,importid,data,strokedata,
|
def add_workout_from_strokedata(user,importid,data,strokedata,
|
||||||
source='c2',splitdata=None):
|
source='c2',splitdata=None,
|
||||||
|
workoutsource='concept2'):
|
||||||
workouttype = data['type']
|
workouttype = data['type']
|
||||||
if workouttype not in [x[0] for x in Workout.workouttypes]:
|
if workouttype not in [x[0] for x in Workout.workouttypes]:
|
||||||
workouttype = 'water'
|
workouttype = 'water'
|
||||||
@@ -538,7 +539,8 @@ def add_workout_from_strokedata(user,importid,data,strokedata,
|
|||||||
workouttype=workouttype,
|
workouttype=workouttype,
|
||||||
title=title,notes=comments,
|
title=title,notes=comments,
|
||||||
totaldist=totaldist,
|
totaldist=totaldist,
|
||||||
totaltime=totaltime)
|
totaltime=totaltime,
|
||||||
|
workoutsource=workoutsource)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -697,6 +699,7 @@ def add_workout_from_runkeeperdata(user,importid,data):
|
|||||||
|
|
||||||
id,message = dataprep.save_workout_database(csvfilename,r,
|
id,message = dataprep.save_workout_database(csvfilename,r,
|
||||||
workouttype=workouttype,
|
workouttype=workouttype,
|
||||||
|
workoutsource='runkeeper',
|
||||||
title=title,
|
title=title,
|
||||||
notes=comments)
|
notes=comments)
|
||||||
|
|
||||||
@@ -863,7 +866,8 @@ def add_workout_from_stdata(user,importid,data):
|
|||||||
id,message = dataprep.save_workout_database(csvfilename,r,
|
id,message = dataprep.save_workout_database(csvfilename,r,
|
||||||
workouttype=workouttype,
|
workouttype=workouttype,
|
||||||
title=title,
|
title=title,
|
||||||
notes=comments)
|
notes=comments,
|
||||||
|
workoutsource='sporttracks')
|
||||||
|
|
||||||
return (id,message)
|
return (id,message)
|
||||||
|
|
||||||
@@ -1029,6 +1033,7 @@ def add_workout_from_underarmourdata(user,importid,data):
|
|||||||
|
|
||||||
id,message = dataprep.save_workout_database(csvfilename,r,
|
id,message = dataprep.save_workout_database(csvfilename,r,
|
||||||
workouttype=workouttype,
|
workouttype=workouttype,
|
||||||
|
workoutsource='mapmyfitness',
|
||||||
title=title,
|
title=title,
|
||||||
notes=comments)
|
notes=comments)
|
||||||
|
|
||||||
@@ -5507,7 +5512,8 @@ def workout_getstravaworkout_view(request,stravaid):
|
|||||||
strokedata = res[1]
|
strokedata = res[1]
|
||||||
data = res[0]
|
data = res[0]
|
||||||
id,message = add_workout_from_strokedata(request.user,stravaid,data,strokedata,
|
id,message = add_workout_from_strokedata(request.user,stravaid,data,strokedata,
|
||||||
source='strava')
|
source='strava',
|
||||||
|
workoutsource='strava')
|
||||||
try:
|
try:
|
||||||
w = Workout.objects.get(id=id)
|
w = Workout.objects.get(id=id)
|
||||||
except Workout.DoesNotExist:
|
except Workout.DoesNotExist:
|
||||||
|
|||||||
Reference in New Issue
Block a user