Private
Public Access
1
0

fix for multiple users with same strava ID

This commit is contained in:
Sander Roosendaal
2021-11-07 10:08:12 +01:00
parent 635499ca8a
commit 1e873ea95a

View File

@@ -1102,52 +1102,34 @@ def strava_webhook_view(request):
try:
stravaid = data['object_id']
except KeyError: # pragma: no cover
timestamp = time.strftime('%b-%d-%Y_%H%M', t)
with open('strava_webhooks.log','a') as f:
f.write('\n')
f.write(timestamp)
f.write(' ')
f.write('KeyError line 1051')
dologging('strava_webhooks.log','KeyError line 1105')
return HttpResponse(status=200)
try:
r = Rower.objects.get(strava_owner_id=strava_owner)
except Rower.DoesNotExist: # pragma: no cover
timestamp = time.strftime('%b-%d-%Y_%H%M', t)
with open('strava_webhooks.log','a') as f:
f.write('\n')
f.write(timestamp)
f.write(' ')
f.write('Rower not found')
dologging('strava_webhooks.log','Rower not found')
return HttpResponse(status=200)
except MultipleObjectsReturned:
s = 'Multiple rowers found for strava ID {id}'.format(id=strava_owner)
dologging('strava_webhooks.log',s)
rs = Rower.objects.filter(strava_owner_id=strava_owner)
r = rs[0]
ws = Workout.objects.filter(uploadedtostrava=stravaid)
if ws.count()==0 and r.strava_auto_import:
job = stravastuff.async_get_workout(r.user,stravaid)
if job == 0: # pragma: no cover
timestamp = time.strftime('%b-%d-%Y_%H%M',t)
with open('strava_webhooks.log','a') as f:
f.write('\n')
f.write(timestamp)
f.write(' ')
f.write('Strava strava_open yielded NoTokenError')
dologging('strava_webhooks.log','Strava strava_open yielded NoTokenError')
else: # pragma: no cover
timestamp = time.strftime('%b-%d-%Y_%H%M', t)
with open('strava_webhooks.log','a') as f:
f.write('\n')
f.write(timestamp)
f.write(' ')
f.write('Workouts already existing:\n ')
for w in ws:
f.write('{w} \n'.format(w=str(w)))
dologging('strava_webhooks.log','Workouts already existing')
for w in ws:
dologging('strava_webhooks.log',str(w))
elif aspect_type == 'delete':
try:
stravaid = data['object_id']
except KeyError: # pragma: no cover
with open('strava_webhooks.log','a') as f:
f.write('\n')
f.write(timestamp)
f.write(' ')
f.write('KeyError line 10576')
dologging('strava_webhooks.log','KeyError line 1132')
try:
ws = Workout.objects.filter(uploadedtostrava=stravaid)
if ws.count() == 0:
@@ -1157,13 +1139,11 @@ def strava_webhook_view(request):
try: # pragma: no cover
r = Rower.objects.get(strava_owner_id=strava_owner)
except Rower.DoesNotExist: # pragma: no cover
timestamp = time.strftime('%b-%d-%Y_%H%M', t)
with open('strava_webhooks.log','a') as f:
f.write('\n')
f.write(timestamp)
f.write(' ')
f.write('Rower not found')
dologging('strava_webhooks.log','Rower not found')
return HttpResponse(status=200)
except MultipleObjectsReturned"
rs = Rower.objects.filter(strava_owner_id=strava_owner)
r = rs[0]
if r.strava_auto_delete: # pragma: no cover
for w in ws:
if w.user == r: