Merge branch 'bugfix/stravaexport' into develop
This commit is contained in:
@@ -104,8 +104,14 @@ def summaryfromsplitdata(splitdata,data,filename,sep='|'):
|
|||||||
totaldist = data['distance']
|
totaldist = data['distance']
|
||||||
totaltime = data['time']/10.
|
totaltime = data['time']/10.
|
||||||
spm = data['stroke_rate']
|
spm = data['stroke_rate']
|
||||||
|
try:
|
||||||
resttime = data['rest_time']/10.
|
resttime = data['rest_time']/10.
|
||||||
|
except KeyError:
|
||||||
|
resttime = 0
|
||||||
|
try:
|
||||||
restdistance = data['rest_distance']
|
restdistance = data['rest_distance']
|
||||||
|
except keyError:
|
||||||
|
restdistance = 0
|
||||||
try:
|
try:
|
||||||
avghr = data['heart_rate']['average']
|
avghr = data['heart_rate']['average']
|
||||||
except KeyError:
|
except KeyError:
|
||||||
|
|||||||
@@ -315,7 +315,6 @@ def get_userid(access_token):
|
|||||||
except KeyError:
|
except KeyError:
|
||||||
res = ''
|
res = ''
|
||||||
|
|
||||||
print res,'userID'
|
|
||||||
return str(res)
|
return str(res)
|
||||||
|
|
||||||
def workout_runkeeper_upload(user,w):
|
def workout_runkeeper_upload(user,w):
|
||||||
|
|||||||
@@ -257,11 +257,12 @@ def createstravaworkoutdata(w):
|
|||||||
with gzip.GzipFile(gzfilename,'wb') as outF:
|
with gzip.GzipFile(gzfilename,'wb') as outF:
|
||||||
outF.write(s)
|
outF.write(s)
|
||||||
os.remove(tcxfilename)
|
os.remove(tcxfilename)
|
||||||
return gzfilename
|
return gzfilename,""
|
||||||
except:
|
except:
|
||||||
|
message = str(sys.exc_info()[0])
|
||||||
tcxfilename = 0
|
tcxfilename = 0
|
||||||
|
|
||||||
return tcxfilename
|
return tcxfilename,message
|
||||||
|
|
||||||
# Upload the TCX file to Strava and set the workout activity type
|
# Upload the TCX file to Strava and set the workout activity type
|
||||||
# to rowing on Strava
|
# to rowing on Strava
|
||||||
@@ -282,8 +283,8 @@ def handle_stravaexport(f2,workoutname,stravatoken,description=''):
|
|||||||
if res:
|
if res:
|
||||||
act = client.update_activity(res.id,activity_type='Rowing',description=description,device_name='Rowsandall.com')
|
act = client.update_activity(res.id,activity_type='Rowing',description=description,device_name='Rowsandall.com')
|
||||||
else:
|
else:
|
||||||
message = 'Strava upload timed out.'
|
message = 'Strava activity update timed out.'
|
||||||
return (0,message)
|
return (res.id,message)
|
||||||
|
|
||||||
return (res.id,message)
|
return (res.id,message)
|
||||||
|
|
||||||
@@ -299,7 +300,7 @@ def workout_strava_upload(user,w):
|
|||||||
else:
|
else:
|
||||||
if (checkworkoutuser(user,w)):
|
if (checkworkoutuser(user,w)):
|
||||||
try:
|
try:
|
||||||
tcxfile = createstravaworkoutdata(w)
|
tcxfile,tcxmesg = createstravaworkoutdata(w)
|
||||||
if tcxfile:
|
if tcxfile:
|
||||||
with open(tcxfile,'rb') as f:
|
with open(tcxfile,'rb') as f:
|
||||||
res,mes = handle_stravaexport(f,w.name,
|
res,mes = handle_stravaexport(f,w.name,
|
||||||
@@ -326,7 +327,7 @@ def workout_strava_upload(user,w):
|
|||||||
stravaid = res
|
stravaid = res
|
||||||
return message,stravaid
|
return message,stravaid
|
||||||
else:
|
else:
|
||||||
message = "Strava Upload error"
|
message = "Strava TCX data error "+tcxmesg
|
||||||
w.uploadedtostrava = -1
|
w.uploadedtostrava = -1
|
||||||
stravaid = -1
|
stravaid = -1
|
||||||
w.save()
|
w.save()
|
||||||
|
|||||||
@@ -1060,9 +1060,9 @@ def workout_tcxemail_view(request,id=0):
|
|||||||
raise Http404("Workout doesn't exist")
|
raise Http404("Workout doesn't exist")
|
||||||
if (checkworkoutuser(request.user,w)):
|
if (checkworkoutuser(request.user,w)):
|
||||||
try:
|
try:
|
||||||
tcxfile = stravastuff.createstravaworkoutdata(w)
|
tcxfile,tcxmessg = stravastuff.createstravaworkoutdata(w)
|
||||||
if tcxfile == 0:
|
if tcxfile == 0:
|
||||||
message = "Something went wrong (TCX export)"
|
message = "Something went wrong (TCX export) "+tcxmessg
|
||||||
messages.error(request,message)
|
messages.error(request,message)
|
||||||
url = reverse(workout_export_view,
|
url = reverse(workout_export_view,
|
||||||
kwargs = {
|
kwargs = {
|
||||||
@@ -1179,7 +1179,7 @@ def workout_csvtoadmin_view(request,id=0):
|
|||||||
|
|
||||||
successmessage = "The CSV file was sent to the site admin per email"
|
successmessage = "The CSV file was sent to the site admin per email"
|
||||||
messages.info(request,successmessage)
|
messages.info(request,successmessage)
|
||||||
url = reverse(workout_export_view,
|
url = reverse(workout_view,
|
||||||
kwargs = {
|
kwargs = {
|
||||||
'id':str(w.id),
|
'id':str(w.id),
|
||||||
})
|
})
|
||||||
@@ -1263,7 +1263,7 @@ def workout_strava_upload_view(request,id=0):
|
|||||||
raise Http404("Workout doesn't exist")
|
raise Http404("Workout doesn't exist")
|
||||||
if (checkworkoutuser(request.user,w)):
|
if (checkworkoutuser(request.user,w)):
|
||||||
try:
|
try:
|
||||||
tcxfile = stravastuff.createstravaworkoutdata(w)
|
tcxfile,tcxmessg = stravastuff.createstravaworkoutdata(w)
|
||||||
if tcxfile:
|
if tcxfile:
|
||||||
with open(tcxfile,'rb') as f:
|
with open(tcxfile,'rb') as f:
|
||||||
res,mes = stravastuff.handle_stravaexport(f,w.name,
|
res,mes = stravastuff.handle_stravaexport(f,w.name,
|
||||||
@@ -1287,7 +1287,11 @@ def workout_strava_upload_view(request,id=0):
|
|||||||
try:
|
try:
|
||||||
w.uploadedtostrava = res
|
w.uploadedtostrava = res
|
||||||
w.save()
|
w.save()
|
||||||
|
try:
|
||||||
os.remove(tcxfile)
|
os.remove(tcxfile)
|
||||||
|
except WindowsError:
|
||||||
|
print tcxfile
|
||||||
|
pass
|
||||||
url = "/rowers/workout/"+str(w.id)+"/edit"
|
url = "/rowers/workout/"+str(w.id)+"/edit"
|
||||||
|
|
||||||
messages.info(request,mes)
|
messages.info(request,mes)
|
||||||
@@ -1299,8 +1303,8 @@ def workout_strava_upload_view(request,id=0):
|
|||||||
errorlog.write("views.py line 826\r\n")
|
errorlog.write("views.py line 826\r\n")
|
||||||
message = 'Error: '+errorstring
|
message = 'Error: '+errorstring
|
||||||
messages.error(request,message)
|
messages.error(request,message)
|
||||||
else:
|
else: # No tcxfile
|
||||||
message = "Strava Upload error"
|
message = "Strava Data error "+tcxmessg
|
||||||
messages.error(request,message)
|
messages.error(request,message)
|
||||||
w.uploadedtostrava = -1
|
w.uploadedtostrava = -1
|
||||||
w.save()
|
w.save()
|
||||||
|
|||||||
Reference in New Issue
Block a user