Private
Public Access
1
0

added auto export for all platforms

This commit is contained in:
Sander Roosendaal
2018-06-06 10:36:30 +02:00
parent a277f71af3
commit 63d52eb42a
8 changed files with 179 additions and 28 deletions

View File

@@ -72,7 +72,7 @@ from rowers.models import (
WorkoutComment,WorkoutCommentForm,RowerExportForm,
CalcAgePerformance,PowerTimeFitnessMetric,PlannedSessionForm,
PlannedSessionFormSmall,GeoCourseEditForm,VirtualRace,
VirtualRaceForm,VirtualRaceResultForm,
VirtualRaceForm,VirtualRaceResultForm,RowerImportExportForm
)
from rowers.models import (
FavoriteForm,BaseFavoriteFormSet,SiteAnnouncement,BasePlannedSessionFormSet
@@ -1234,7 +1234,10 @@ def add_workout_from_strokedata(user,importid,data,strokedata,
# Create CSV file name and save data to CSV file
csvfilename ='media/Import_'+str(importid)+'.csv'
csvfilename ='media/{code}_{importid}.csv'.format(
importid=importid,
code = uuid4().hex[:16]
)
res = df.to_csv(csvfilename+'.gz',index_label='index',
compression='gzip')
@@ -1424,7 +1427,11 @@ def add_workout_from_runkeeperdata(user,importid,data):
timestr = strftime("%Y%m%d-%H%M%S")
csvfilename ='media/Import_'+str(importid)+'.csv'
# csvfilename ='media/Import_'+str(importid)+'.csv'
csvfilename ='media/{code}_{importid}.csv'.format(
importid=importid,
code = uuid4().hex[:16]
)
res = df.to_csv(csvfilename+'.gz',index_label='index',
compression='gzip')
@@ -1590,7 +1597,11 @@ def add_workout_from_stdata(user,importid,data):
timestr = strftime("%Y%m%d-%H%M%S")
csvfilename ='media/Import_'+str(importid)+'.csv'
# csvfilename ='media/Import_'+str(importid)+'.csv'
csvfilename ='media/{code}_{importid}.csv'.format(
importid=importid,
code = uuid4().hex[:16]
)
res = df.to_csv(csvfilename+'.gz',index_label='index',
compression='gzip')
@@ -1757,7 +1768,11 @@ def add_workout_from_underarmourdata(user,importid,data):
timestr = strftime("%Y%m%d-%H%M%S")
csvfilename ='media/Import_'+str(importid)+'.csv'
# csvfilename ='media/Import_'+str(importid)+'.csv'
csvfilename ='media/{code}_{importid}.csv'.format(
importid=importid,
code = uuid4().hex[:16]
)
res = df.to_csv(csvfilename+'.gz',index_label='index',
compression='gzip')
@@ -2612,12 +2627,31 @@ def rower_process_callback(request):
# The imports page
@login_required()
def imports_view(request,successmessage="",message=""):
messages.info(request,successmessage)
messages.error(request,message)
def imports_view(request):
r = getrower(request.user)
if request.method == 'POST':
form = RowerImportExportForm(request.POST)
if form.is_valid():
cd = form.cleaned_data
for attr, value in cd.items():
setattr(r,attr,value)
r.save()
# polar_auto_import = cd['polar_auto_import']
# r.polar_auto_import = polar_auto_import
# r.save()
else:
form = RowerImportExportForm(instance=r)
return render(request,"imports.html",
{
'teams':get_my_teams(request.user),
'form':form,
})
# Just for testing purposes
@@ -9650,12 +9684,22 @@ def workout_underarmourimport_view(request,message=""):
def workout_polarimport_view(request):
exercises = polarstuff.get_polar_workouts(request.user)
workouts = []
try:
a = exercises.status_code
if a == 401:
messages.error(request,'Not authorized. You need to connect to Polar first')
url = reverse(imports_view)
return HttpResponseRedirect(url)
except:
pass
for exercise in exercises:
try:
d = exercise['distance']
except KeyError:
d = 0
i = exercise['id']
transactionid = exercise['transaction-id']
starttime = exercise['start-time']
@@ -9667,6 +9711,7 @@ def workout_polarimport_view(request):
res = dict(zip(keys,values))
workouts.append(res)
return render(request, 'polar_list_import.html',
{
'workouts':workouts,
@@ -10428,7 +10473,7 @@ def workout_upload_view(request,
request.session['async_tasks'] = [(jobid,'make_plot')]
# upload to C2
if (upload_to_c2):
if (upload_to_c2) or (w.user.c2_auto_export):
try:
message,id = c2stuff.workout_c2_upload(request.user,w)
except C2NoTokenError:
@@ -10439,7 +10484,7 @@ def workout_upload_view(request,
else:
messages.error(request,message)
if (upload_to_strava):
if (upload_to_strava) or (w.user.strava_auto_export):
try:
message,id = stravastuff.workout_strava_upload(
request.user,w
@@ -10452,7 +10497,7 @@ def workout_upload_view(request,
else:
messages.error(request,message)
if (upload_to_st):
if (upload_to_st) or (w.user.sporttracks_auto_export):
try:
message,id = sporttracksstuff.workout_sporttracks_upload(
request.user,w
@@ -10465,7 +10510,7 @@ def workout_upload_view(request,
else:
messages.error(request,message)
if (upload_to_rk):
if (upload_to_rk) or (w.user.runkeeper_auto_export):
try:
message,id = runkeeperstuff.workout_runkeeper_upload(
request.user,w
@@ -10480,7 +10525,7 @@ def workout_upload_view(request,
messages.error(request,message)
if (upload_to_ua):
if (upload_to_ua) or (w.user.mapmyfitness_auto_export):
try:
message,id = underarmourstuff.workout_ua_upload(
request.user,w
@@ -10495,7 +10540,7 @@ def workout_upload_view(request,
messages.error(request,message)
if (upload_to_tp):
if (upload_to_tp) or (w.user.trainingpeaks_auto_export):
try:
message,id = tpstuff.workout_tp_upload(
request.user,w