Private
Public Access
1
0

passes tests now - for what it's worth

This commit is contained in:
Sander Roosendaal
2019-01-03 21:54:34 +01:00
parent f901258b9b
commit 6c20c3ab7f
5 changed files with 165 additions and 152 deletions

View File

@@ -23,7 +23,7 @@ from rowers.mailprocessing import make_new_workout_from_email, send_confirm
import rowers.polarstuff as polarstuff import rowers.polarstuff as polarstuff
import rowers.c2stuff as c2stuff import rowers.c2stuff as c2stuff
import rowers.stravastuff as stravastuff import rowers.stravastuff as stravastuff
from rowers.opaque import encoder
workoutmailbox = Mailbox.objects.get(name='workouts') workoutmailbox = Mailbox.objects.get(name='workouts')
failedmailbox = Mailbox.objects.get(name='Failed') failedmailbox = Mailbox.objects.get(name='Failed')
@@ -82,7 +82,7 @@ def processattachment(rower, fileobj, title, uploadoptions,testing=False):
) )
if uploadoptions and not 'error' in uploadoptions: if uploadoptions and not 'error' in uploadoptions:
workout = Workout.objects.get(id=workoutid[0]) workout = Workout.objects.get(id=encoder.decode_hex(workoutid[0]))
uploads.make_private(workout, uploadoptions) uploads.make_private(workout, uploadoptions)
uploads.set_workouttype(workout, uploadoptions) uploads.set_workouttype(workout, uploadoptions)
uploads.do_sync(workout, uploadoptions) uploads.do_sync(workout, uploadoptions)

View File

@@ -32,6 +32,9 @@ from mock import Mock, patch
from minimocktest import MockTestCase from minimocktest import MockTestCase
import pandas as pd import pandas as pd
import rowers.c2stuff as c2stuff import rowers.c2stuff as c2stuff
from rowers.opaque import encoder
encoded1 = str(encoder.encode_hex(1))
encoded2 = str(encoder.encode_hex(2))
import json import json
import numpy as np import numpy as np
@@ -123,13 +126,13 @@ class C2Objects(DjangoTestCase):
@patch('rowers.c2stuff.requests.post', side_effect=mocked_requests) @patch('rowers.c2stuff.requests.post', side_effect=mocked_requests)
@patch('rowers.c2stuff.requests.get', side_effect=mocked_requests) @patch('rowers.c2stuff.requests.get', side_effect=mocked_requests)
def test_c2_upload(self, mock_get, mock_post): def test_c2_upload(self, mock_get, mock_post):
response = self.c.get('/rowers/workout/1/c2uploadw/') response = self.c.get('/rowers/workout/'+encoded1+'/c2uploadw/')
self.assertRedirects(response, self.assertRedirects(response,
expected_url = '/rowers/workout/1/edit', expected_url = '/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.url, '/rowers/workout/1/edit') self.assertEqual(response.url, '/rowers/workout/'+encoded1+'/edit')
self.assertEqual(response.status_code, 302) self.assertEqual(response.status_code, 302)
@patch('rowers.c2stuff.requests.post', side_effect=mocked_requests) @patch('rowers.c2stuff.requests.post', side_effect=mocked_requests)
@@ -146,7 +149,7 @@ class C2Objects(DjangoTestCase):
response = self.c.get('/rowers/workout/c2import/12/',follow=True) response = self.c.get('/rowers/workout/c2import/12/',follow=True)
self.assertRedirects(response, self.assertRedirects(response,
expected_url='/rowers/workout/2/edit', expected_url='/rowers/workout/'+encoded2+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -294,7 +297,7 @@ class StravaObjects(DjangoTestCase):
response = self.c.get('/rowers/workout/stravaimport/12',follow=True) response = self.c.get('/rowers/workout/stravaimport/12',follow=True)
self.assertRedirects(response, self.assertRedirects(response,
expected_url='/rowers/workout/1/edit', expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=301,target_status_code=200) status_code=301,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -375,13 +378,13 @@ class STObjects(DjangoTestCase):
@patch('rowers.sporttracksstuff.requests.post', side_effect=mocked_requests) @patch('rowers.sporttracksstuff.requests.post', side_effect=mocked_requests)
@patch('rowers.sporttracksstuff.requests.get', side_effect=mocked_requests) @patch('rowers.sporttracksstuff.requests.get', side_effect=mocked_requests)
def test_sporttracks_upload(self, mock_get, mock_post): def test_sporttracks_upload(self, mock_get, mock_post):
response = self.c.get('/rowers/workout/1/sporttracksuploadw/') response = self.c.get('/rowers/workout/'+encoded1+'/sporttracksuploadw/')
self.assertRedirects(response, self.assertRedirects(response,
expected_url = '/rowers/workout/1/edit', expected_url = '/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.url, '/rowers/workout/1/edit') self.assertEqual(response.url, '/rowers/workout/'+encoded1+'/edit')
self.assertEqual(response.status_code, 302) self.assertEqual(response.status_code, 302)
@patch('rowers.sporttracksstuff.requests.get', side_effect=mocked_requests) @patch('rowers.sporttracksstuff.requests.get', side_effect=mocked_requests)
@@ -396,7 +399,7 @@ class STObjects(DjangoTestCase):
response = self.c.get('/rowers/workout/sporttracksimport/12/',follow=True) response = self.c.get('/rowers/workout/sporttracksimport/12/',follow=True)
self.assertRedirects(response, self.assertRedirects(response,
expected_url='/rowers/workout/2/edit', expected_url='/rowers/workout/'+encoded2+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -485,13 +488,13 @@ class RunKeeperObjects(DjangoTestCase):
@patch('rowers.runkeeperstuff.requests.post', side_effect=mocked_requests) @patch('rowers.runkeeperstuff.requests.post', side_effect=mocked_requests)
@patch('rowers.runkeeperstuff.requests.get', side_effect=mocked_requests) @patch('rowers.runkeeperstuff.requests.get', side_effect=mocked_requests)
def test_runkeeper_upload(self, mock_get, mock_post): def test_runkeeper_upload(self, mock_get, mock_post):
response = self.c.get('/rowers/workout/1/runkeeperuploadw/') response = self.c.get('/rowers/workout/'+encoded1+'/runkeeperuploadw/')
self.assertRedirects(response, self.assertRedirects(response,
expected_url = '/rowers/workout/1/edit', expected_url = '/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.url, '/rowers/workout/1/edit') self.assertEqual(response.url, '/rowers/workout/'+encoded1+'/edit')
self.assertEqual(response.status_code, 302) self.assertEqual(response.status_code, 302)
@patch('rowers.runkeeperstuff.requests.get', side_effect=mocked_requests) @patch('rowers.runkeeperstuff.requests.get', side_effect=mocked_requests)
@@ -506,7 +509,7 @@ class RunKeeperObjects(DjangoTestCase):
response = self.c.get('/rowers/workout/runkeeperimport/12/',follow=True) response = self.c.get('/rowers/workout/runkeeperimport/12/',follow=True)
self.assertRedirects(response, self.assertRedirects(response,
expected_url='/rowers/workout/2/edit', expected_url='/rowers/workout/'+encoded2+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -587,13 +590,13 @@ class UAObjects(DjangoTestCase):
@patch('rowers.underarmourstuff.requests.post', side_effect=mocked_requests) @patch('rowers.underarmourstuff.requests.post', side_effect=mocked_requests)
@patch('rowers.underarmourstuff.requests.get', side_effect=mocked_requests) @patch('rowers.underarmourstuff.requests.get', side_effect=mocked_requests)
def test_underarmour_upload(self, mock_get, mock_post): def test_underarmour_upload(self, mock_get, mock_post):
response = self.c.get('/rowers/workout/1/underarmouruploadw/') response = self.c.get('/rowers/workout/'+encoded1+'/underarmouruploadw/')
self.assertRedirects(response, self.assertRedirects(response,
expected_url = '/rowers/workout/1/edit', expected_url = '/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.url, '/rowers/workout/1/edit') self.assertEqual(response.url, '/rowers/workout/'+encoded1+'/edit')
self.assertEqual(response.status_code, 302) self.assertEqual(response.status_code, 302)
@patch('rowers.underarmourstuff.requests.get', side_effect=mocked_requests) @patch('rowers.underarmourstuff.requests.get', side_effect=mocked_requests)
@@ -609,7 +612,7 @@ class UAObjects(DjangoTestCase):
response = self.c.get('/rowers/workout/underarmourimport/12/',follow=True) response = self.c.get('/rowers/workout/underarmourimport/12/',follow=True)
self.assertRedirects(response, self.assertRedirects(response,
expected_url='/rowers/workout/2/edit', expected_url='/rowers/workout/'+encoded2+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -689,13 +692,15 @@ class TPObjects(DjangoTestCase):
@patch('rowers.tpstuff.requests.post', side_effect=mocked_requests) @patch('rowers.tpstuff.requests.post', side_effect=mocked_requests)
@patch('rowers.tpstuff.requests.get', side_effect=mocked_requests) @patch('rowers.tpstuff.requests.get', side_effect=mocked_requests)
def test_tp_upload(self, mock_get, mock_post): def test_tp_upload(self, mock_get, mock_post):
response = self.c.get('/rowers/workout/1/tpuploadw/') url = '/rowers/workout/'+encoded1+'/tpuploadw/'
response = self.c.get(url)
self.assertRedirects(response, self.assertRedirects(response,
expected_url = '/rowers/workout/1/edit', expected_url = '/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.url, '/rowers/workout/1/edit') self.assertEqual(response.url, '/rowers/workout/'+encoded1+'/edit')
self.assertEqual(response.status_code, 302) self.assertEqual(response.status_code, 302)

View File

@@ -2,6 +2,9 @@
import pytest import pytest
pytestmark = pytest.mark.django_db pytestmark = pytest.mark.django_db
from rowers.opaque import encoder
encoded1 = str(encoder.encode_hex(1))
from bs4 import BeautifulSoup from bs4 import BeautifulSoup
import re import re
@@ -223,52 +226,52 @@ class URLTests(TestCase):
'/rowers/user-multiflex-select/user/1/2016-01-01/2016-12-31', '/rowers/user-multiflex-select/user/1/2016-01-01/2016-12-31',
'/rowers/user-multiflex/', '/rowers/user-multiflex/',
'/rowers/user-multiflex/user/1', '/rowers/user-multiflex/user/1',
'/rowers/workout/1/', '/rowers/workout/'+encoded1+'/',
'/rowers/workout/1/adddistanceplot', '/rowers/workout/'+encoded1+'/adddistanceplot',
'/rowers/workout/1/adddistanceplot2', '/rowers/workout/'+encoded1+'/adddistanceplot2',
'/rowers/workout/1/addotwpowerplot', '/rowers/workout/'+encoded1+'/addotwpowerplot',
'/rowers/workout/1/addpiechart', '/rowers/workout/'+encoded1+'/addpiechart',
'/rowers/workout/1/addpowerpiechart', '/rowers/workout/'+encoded1+'/addpowerpiechart',
'/rowers/workout/1/addstatic', '/rowers/workout/'+encoded1+'/addstatic',
'/rowers/workout/1/addstatic/3', '/rowers/workout/'+encoded1+'/addstatic/3',
'/rowers/workout/1/addtimeplot', '/rowers/workout/'+encoded1+'/addtimeplot',
'/rowers/workout/1/addtimeplot2', '/rowers/workout/'+encoded1+'/addtimeplot2',
'/rowers/workout/1/comment', '/rowers/workout/'+encoded1+'/comment',
'/rowers/workout/1/darkskywind', '/rowers/workout/'+encoded1+'/darkskywind',
'/rowers/workout/1/data', '/rowers/workout/'+encoded1+'/data',
'/rowers/workout/1/edit', '/rowers/workout/'+encoded1+'/edit',
'/rowers/workout/1/editintervals', '/rowers/workout/'+encoded1+'/editintervals',
'/rowers/workout/1/flexchart', '/rowers/workout/'+encoded1+'/flexchart',
'/rowers/workout/1/flexchart/spm/hr/None', '/rowers/workout/'+encoded1+'/flexchart/spm/hr/None',
'/rowers/workout/1/flexchart/spm/hr/None/scatter', '/rowers/workout/'+encoded1+'/flexchart/spm/hr/None/scatter',
'/rowers/workout/1/flexchart/spm/hr/None/scatter/', '/rowers/workout/'+encoded1+'/flexchart/spm/hr/None/scatter/',
'/rowers/workout/1/forcecurve', '/rowers/workout/'+encoded1+'/forcecurve',
'/rowers/workout/1/get-testscript', '/rowers/workout/'+encoded1+'/get-testscript',
'/rowers/workout/1/get-thumbnails', '/rowers/workout/'+encoded1+'/get-thumbnails',
'/rowers/workout/1/histo', '/rowers/workout/'+encoded1+'/histo',
'/rowers/workout/1/image', '/rowers/workout/'+encoded1+'/image',
'/rowers/workout/1/instroke', '/rowers/workout/'+encoded1+'/instroke',
'/rowers/workout/1/interactiveotwplot', '/rowers/workout/'+encoded1+'/interactiveotwplot',
'/rowers/workout/1/map', '/rowers/workout/'+encoded1+'/map',
'/rowers/workout/1/otwsetpower', '/rowers/workout/'+encoded1+'/otwsetpower',
'/rowers/workout/1/recalcsummary/', '/rowers/workout/'+encoded1+'/recalcsummary/',
'/rowers/workout/1/restore', '/rowers/workout/'+encoded1+'/restore',
'/rowers/workout/1/smoothenpace', '/rowers/workout/'+encoded1+'/smoothenpace',
'/rowers/workout/1/split', '/rowers/workout/'+encoded1+'/split',
'/rowers/workout/1/stats', '/rowers/workout/'+encoded1+'/stats',
'/rowers/workout/1/stream', '/rowers/workout/'+encoded1+'/stream',
'/rowers/workout/1/task', '/rowers/workout/'+encoded1+'/task',
'/rowers/workout/1/test_strokedata', '/rowers/workout/'+encoded1+'/test_strokedata',
'/rowers/workout/1/toggle-ranking', '/rowers/workout/'+encoded1+'/toggle-ranking',
'/rowers/workout/1/undosmoothenpace', '/rowers/workout/'+encoded1+'/undosmoothenpace',
'/rowers/workout/1/unsubscribe', '/rowers/workout/'+encoded1+'/unsubscribe',
'/rowers/workout/1/updatecp', '/rowers/workout/'+encoded1+'/updatecp',
'/rowers/workout/1/view', '/rowers/workout/'+encoded1+'/view',
'/rowers/workout/1/wind', '/rowers/workout/'+encoded1+'/wind',
'/rowers/workout/1/workflow', '/rowers/workout/'+encoded1+'/workflow',
'/rowers/workout/compare/1/2016-01-01/2016-12-31', '/rowers/workout/compare/'+encoded1+'/2016-01-01/2016-12-31',
'/rowers/workout/fusion/1/', '/rowers/workout/fusion/'+encoded1+'/',
'/rowers/workout/fusion/1/2016-01-01/2016-12-31', '/rowers/workout/fusion/'+encoded1+'/2016-01-01/2016-12-31',
'/rowers/workout/upload/', '/rowers/workout/upload/',
'/rowers/workout/upload/team/', '/rowers/workout/upload/team/',
'/rowers/workouts-join', '/rowers/workouts-join',

View File

@@ -41,6 +41,10 @@ from rowers.views import error500_view,error404_view,error400_view,error403_view
from rowers.dataprep import delete_strokedata from rowers.dataprep import delete_strokedata
from rowers.opaque import encoder
encoded1 = str(encoder.encode_hex(1))
from redis import StrictRedis from redis import StrictRedis
redis_connection = StrictRedis() redis_connection = StrictRedis()
@@ -429,22 +433,22 @@ class ViewTest(TestCase):
f.close() f.close()
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
response = self.c.get('/rowers/workout/1/', form_data, follow=True) response = self.c.get('/rowers/workout/'+encoded1+'/', form_data, follow=True)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
response = self.c.get('/rowers/workout/1/edit', form_data, follow=True) response = self.c.get('/rowers/workout/'+encoded1+'/edit', form_data, follow=True)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
response = self.c.get('/rowers/workout/1/histo', form_data, follow=True) response = self.c.get('/rowers/workout/'+encoded1+'/histo', form_data, follow=True)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
response = self.c.get('/rowers/workout/1/workflow', response = self.c.get('/rowers/workout/'+encoded1+'/workflow',
follow=True) follow=True)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -465,7 +469,7 @@ class ViewTest(TestCase):
} }
form = WorkoutForm(data=form_data) form = WorkoutForm(data=form_data)
self.assertTrue(form.is_valid()) self.assertTrue(form.is_valid())
response = self.c.post('/rowers/workout/1/edit', form_data, follow=True) response = self.c.post('/rowers/workout/'+encoded1+'/edit', form_data, follow=True)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -518,12 +522,12 @@ class ViewTest(TestCase):
f.close() f.close()
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
response = self.c.get('/rowers/workout/1/', form_data, follow=True) response = self.c.get('/rowers/workout/'+encoded1+'/', form_data, follow=True)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -560,7 +564,7 @@ class ViewTest(TestCase):
f.close() f.close()
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -629,7 +633,7 @@ class ViewTest(TestCase):
response = self.c.post('/rowers/workout/upload/', form_data, follow=True) response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
f.close() f.close()
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -640,7 +644,7 @@ class ViewTest(TestCase):
form_data = {} form_data = {}
form = CNsummaryForm(form_data,file_data) form = CNsummaryForm(form_data,file_data)
response = self.c.post('rowers/workout/1/crewnerdsummary', response = self.c.post('rowers/workout/'+encoded1+'/crewnerdsummary',
form_data, form_data,
follow=True) follow=True)
@@ -679,7 +683,7 @@ class ViewTest(TestCase):
response = self.c.post('/rowers/workout/upload/', form_data, follow=True) response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
f.close() f.close()
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -716,7 +720,7 @@ class ViewTest(TestCase):
response = self.c.post('/rowers/workout/upload/', form_data, follow=True) response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
f.close() f.close()
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -755,7 +759,7 @@ class ViewTest(TestCase):
response = self.c.post('/rowers/workout/upload/', form_data, follow=True) response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
f.close() f.close()
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -791,7 +795,7 @@ class ViewTest(TestCase):
response = self.c.post('/rowers/workout/upload/', form_data, follow=True) response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
f.close() f.close()
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -828,7 +832,7 @@ class ViewTest(TestCase):
response = self.c.post('/rowers/workout/upload/', form_data, follow=True) response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
f.close() f.close()
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -867,7 +871,7 @@ class ViewTest(TestCase):
response = self.c.post('/rowers/workout/upload/', form_data, follow=True) response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
f.close() f.close()
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -903,7 +907,7 @@ class ViewTest(TestCase):
form = DocumentsForm(form_data,file_data) form = DocumentsForm(form_data,file_data)
response = self.c.post('/rowers/workout/upload/', form_data, follow=True) response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -936,7 +940,7 @@ class ViewTest(TestCase):
form = DocumentsForm(form_data,file_data) form = DocumentsForm(form_data,file_data)
response = self.c.post('/rowers/workout/upload/', form_data, follow=True) response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -969,7 +973,7 @@ class ViewTest(TestCase):
form = DocumentsForm(form_data,file_data) form = DocumentsForm(form_data,file_data)
response = self.c.post('/rowers/workout/upload/', form_data, follow=True) response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -1002,7 +1006,7 @@ class ViewTest(TestCase):
form = DocumentsForm(form_data,file_data) form = DocumentsForm(form_data,file_data)
response = self.c.post('/rowers/workout/upload/', form_data, follow=True) response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -1036,7 +1040,7 @@ class ViewTest(TestCase):
form = DocumentsForm(form_data,file_data) form = DocumentsForm(form_data,file_data)
response = self.c.post('/rowers/workout/upload/', form_data, follow=True) response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -1068,7 +1072,7 @@ class ViewTest(TestCase):
form = DocumentsForm(form_data,file_data) form = DocumentsForm(form_data,file_data)
response = self.c.post('/rowers/workout/upload/', form_data, follow=True) response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -1100,7 +1104,7 @@ class ViewTest(TestCase):
form = DocumentsForm(form_data,file_data) form = DocumentsForm(form_data,file_data)
response = self.c.post('/rowers/workout/upload/', form_data, follow=True) response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -1132,7 +1136,7 @@ class ViewTest(TestCase):
form = DocumentsForm(form_data,file_data) form = DocumentsForm(form_data,file_data)
response = self.c.post('/rowers/workout/upload/', form_data, follow=True) response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
self.assertRedirects(response, expected_url='/rowers/workout/1/edit', self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -1169,7 +1173,7 @@ class ViewTest(TestCase):
# form_data, follow=True, # form_data, follow=True,
# format='multipart') # format='multipart')
# f.close() # f.close()
# self.assertRedirects(response, expected_url='/rowers/workout/1/edit', # self.assertRedirects(response, expected_url='/rowers/workout/'+encoded1+'/edit',
# status_code=302,target_status_code=200) # status_code=302,target_status_code=200)
# self.assertEqual(response.status_code, 200) # self.assertEqual(response.status_code, 200)

View File

@@ -1551,7 +1551,7 @@ def rower_register_view(request):
response = dataprep.new_workout_from_file(therower,f2, response = dataprep.new_workout_from_file(therower,f2,
title='New User Sample Data', title='New User Sample Data',
notes='This is an example workout to get you started') notes='This is an example workout to get you started')
newworkoutid = response[0] newworkoutid = encoder.decode_hex(response[0])
w = Workout.objects.get(id=newworkoutid) w = Workout.objects.get(id=newworkoutid)
w.startdatetime = timezone.now() w.startdatetime = timezone.now()
w.save() w.save()
@@ -1878,7 +1878,7 @@ def workout_tcxemail_view(request,id=0):
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':int(id) 'id':encoder.encode_hex(id)
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -1891,7 +1891,7 @@ def workout_tcxemail_view(request,id=0):
messages.error(request,message) messages.error(request,message)
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':int(id) 'id':encoder.encode_hex(id)
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
if tcxfile: if tcxfile:
@@ -1909,7 +1909,7 @@ def workout_tcxemail_view(request,id=0):
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':int(id) 'id':encoder.encode_hex(id)
}) })
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -1918,7 +1918,7 @@ def workout_tcxemail_view(request,id=0):
messages.error(request,message) messages.error(request,message)
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':int(id) 'id':encoder.encode_hex(id)
}) })
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -2038,7 +2038,7 @@ def workout_gpxemail_view(request,id=0):
messages.error(request, message) messages.error(request, message)
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':int(id) 'id':encoder.encode_hex(id)
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -2062,7 +2062,7 @@ def workout_gpxemail_view(request,id=0):
messages.info(request,successmessage) messages.info(request,successmessage)
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':int(id) 'id':encoder.encode_hex(id)
}) })
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -2072,7 +2072,7 @@ def workout_gpxemail_view(request,id=0):
messages.error(request,message) messages.error(request,message)
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
}) })
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -2086,10 +2086,7 @@ def workouts_summaries_email_view(request):
message = "Please check your email address first. Email to this address bounced." message = "Please check your email address first. Email to this address bounced."
messages.error(request, message) messages.error(request, message)
return HttpResponseRedirect( return HttpResponseRedirect(
reverse(r.defaultlandingpage, reverse(workouts_view)
kwargs = {
'id':str(w.id),
})
) )
if request.method == 'POST': if request.method == 'POST':
@@ -2132,7 +2129,7 @@ def workout_csvemail_view(request,id=0):
return HttpResponseRedirect( return HttpResponseRedirect(
reverse(r.defaultlandingpage, reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
}) })
) )
@@ -2150,7 +2147,7 @@ def workout_csvemail_view(request,id=0):
messages.info(request,successmessage) messages.info(request,successmessage)
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
}) })
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -2159,7 +2156,7 @@ def workout_csvemail_view(request,id=0):
messages.error(request,message) messages.error(request,message)
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
}) })
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -2186,7 +2183,7 @@ def workout_csvtoadmin_view(request,id=0):
messages.info(request,successmessage) messages.info(request,successmessage)
url = reverse(workout_view, url = reverse(workout_view,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
}) })
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -2243,7 +2240,7 @@ def workout_tp_upload_view(request,id=0):
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -2299,7 +2296,7 @@ def workout_strava_upload_view(request,id=0):
pass pass
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
}) })
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
return response return response
@@ -2330,14 +2327,14 @@ def workout_strava_upload_view(request,id=0):
w.save() w.save()
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
}) })
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
} }
) )
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -2349,7 +2346,7 @@ def workout_strava_upload_view(request,id=0):
os.remove(tcxfile) os.remove(tcxfile)
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
}) })
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -2377,7 +2374,7 @@ def workout_c2_upload_view(request,id=0):
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':int(id) 'id':encoder.encode_hex(id)
}) })
@@ -2407,7 +2404,7 @@ def workout_runkeeper_upload_view(request,id=0):
messages.error(request,message) messages.error(request,message)
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -2430,7 +2427,7 @@ def workout_runkeeper_upload_view(request,id=0):
runkeeperid = runkeeperstuff.getidfromresponse(response) runkeeperid = runkeeperstuff.getidfromresponse(response)
w.uploadedtorunkeeper = runkeeperid w.uploadedtorunkeeper = runkeeperid
w.save() w.save()
url = reverse(workout_edit_view, kwargs={'id':w.id}) url = reverse(workout_edit_view, kwargs={'id':encoder.encode_hex(w.id)})
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
else: else:
@@ -2444,7 +2441,7 @@ def workout_runkeeper_upload_view(request,id=0):
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -2471,7 +2468,7 @@ def workout_underarmour_upload_view(request,id=0):
messages.error(request,message) messages.error(request,message)
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -2496,7 +2493,8 @@ def workout_underarmour_upload_view(request,id=0):
underarmourid = underarmourstuff.getidfromresponse(response) underarmourid = underarmourstuff.getidfromresponse(response)
w.uploadedtounderarmour = underarmourid w.uploadedtounderarmour = underarmourid
w.save() w.save()
url = reverse(workout_edit_view,kwargs={'id':w.id}) url = reverse(workout_edit_view,
kwargs={'id':encoder.encode_hex(w.id)})
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
else: else:
@@ -2509,7 +2507,7 @@ def workout_underarmour_upload_view(request,id=0):
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -2537,7 +2535,7 @@ def workout_sporttracks_upload_view(request,id=0):
messages.error(request,message) messages.error(request,message)
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -2564,7 +2562,8 @@ def workout_sporttracks_upload_view(request,id=0):
message = "Upload to SportTracks was successful" message = "Upload to SportTracks was successful"
messages.info(request,message) messages.info(request,message)
url = reverse(workout_edit_view,kwargs={'id':w.id}) url = reverse(workout_edit_view,
kwargs={'id':encoder.encode_hex(w.id)})
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
else: else:
s = response s = response
@@ -2576,7 +2575,7 @@ def workout_sporttracks_upload_view(request,id=0):
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':str(w.id), 'id':encoder.encode_hex(w.id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -3643,7 +3642,7 @@ def workout_test_task_view(request,id=0):
url = reverse(workout_edit_view, url = reverse(workout_edit_view,
kwargs = { kwargs = {
'id':int(id), 'id':encoder.encode_hex(id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -5622,14 +5621,14 @@ def workout_recalcsummary_view(request,id=0):
messages.info(request,successmessage) messages.info(request,successmessage)
url = reverse(workout_edit_view, url = reverse(workout_edit_view,
kwargs = { kwargs = {
'id':int(id), 'id':encoder.encode_hex(id),
}) })
else: else:
message = "Something went wrong. Could not update summary" message = "Something went wrong. Could not update summary"
messages.error(request,message) messages.error(request,message)
url = reverse(workout_edit_view, url = reverse(workout_edit_view,
kwargs = { kwargs = {
'id':int(id), 'id':encoder.encode_hex(id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -5663,7 +5662,7 @@ def workout_makepublic_view(request,id,
url = reverse(workout_edit_view, url = reverse(workout_edit_view,
kwargs = { kwargs = {
'id':int(id), 'id':encoder.encode_hex(id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -5692,7 +5691,7 @@ def workout_setprivate_view(request,id,
url = reverse(workout_edit_view, url = reverse(workout_edit_view,
kwargs = { kwargs = {
'id':int(id), 'id':encoder.encode_hex(id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -5731,7 +5730,7 @@ def workouts_join_view(request):
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':int(id), 'id':encoder.encode_hex(id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -6306,6 +6305,8 @@ def plannedsession_compare_view(request,id=0,userid=0):
# Team comparison # Team comparison
@login_required() @login_required()
def multi_compare_view(request,id=0,userid=0): def multi_compare_view(request,id=0,userid=0):
if id != 0:
id = encoder.decode_hex(id)
promember=0 promember=0
if not request.user.is_anonymous(): if not request.user.is_anonymous():
r = getrower(request.user) r = getrower(request.user)
@@ -8170,7 +8171,7 @@ def workout_crewnerd_summary_view(request,id=0,message="",successmessage=""):
messages.info(request,successmessage) messages.info(request,successmessage)
url = reverse(workout_edit_view, url = reverse(workout_edit_view,
kwargs = { kwargs = {
'id':int(id), 'id':encoder.encode_hex(id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -8183,7 +8184,7 @@ def workout_crewnerd_summary_view(request,id=0,message="",successmessage=""):
messages.error(request,message) messages.error(request,message)
url = reverse(workout_edit_view, url = reverse(workout_edit_view,
kwargs = { kwargs = {
'id':int(id), 'id':encoder.encode_hex(id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
else: else:
@@ -8261,7 +8262,7 @@ def workout_downloadwind_view(request,id=0,
messages.info(request,message) messages.info(request,message)
kwargs = { kwargs = {
'id':int(id)} 'id':encoder.encode_hex(id)}
url = reverse(workout_wind_view,kwargs=kwargs) url = reverse(workout_wind_view,kwargs=kwargs)
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -8269,7 +8270,7 @@ def workout_downloadwind_view(request,id=0,
message = "No latitude/longitude data" message = "No latitude/longitude data"
messages.error(request,message) messages.error(request,message)
kwargs = { kwargs = {
'id':int(id) 'id':encoder.encode_hex(id)
} }
url = reverse(workout_wind_view,kwargs=kwargs) url = reverse(workout_wind_view,kwargs=kwargs)
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -8328,7 +8329,7 @@ def workout_downloadmetar_view(request,id=0,
messages.info(request,message) messages.info(request,message)
kwargs = { kwargs = {
'id':int(id)} 'id':encoder.encode_hex(id)}
url = reverse(workout_wind_view,kwargs=kwargs) url = reverse(workout_wind_view,kwargs=kwargs)
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -8336,7 +8337,7 @@ def workout_downloadmetar_view(request,id=0,
message = "No latitude/longitude data" message = "No latitude/longitude data"
messages.error(request,message) messages.error(request,message)
kwargs = { kwargs = {
'id':int(id) 'id':encoder.encode_hex(id)
} }
url = reverse(workout_wind_view,kwargs=kwargs) url = reverse(workout_wind_view,kwargs=kwargs)
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -8441,7 +8442,7 @@ def workout_wind_view(request,id=0,message="",successmessage=""):
message = "Invalid Form" message = "Invalid Form"
messages.error(request,message) messages.error(request,message)
kwargs = { kwargs = {
'id':int(id) 'id':encoder.encode_hex(id)
} }
url = reverse(workout_wind_view,kwargs=kwargs) url = reverse(workout_wind_view,kwargs=kwargs)
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -8529,7 +8530,7 @@ def workout_stream_view(request,id=0,message="",successmessage=""):
message = "Invalid Form" message = "Invalid Form"
messages.error(request,message) messages.error(request,message)
kwargs = { kwargs = {
'id':int(id)} 'id':encoder.encode_hex(id)}
url = reverse(workout_wind_view,kwargs=kwargs) url = reverse(workout_wind_view,kwargs=kwargs)
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -8653,7 +8654,7 @@ def workout_otwsetpower_view(request,id=0,message="",successmessage=""):
successmessage = 'Your calculations have been submitted. You will receive an email when they are done. You can check the status of your calculations <a href="/rowers/jobs-status/" target="_blank">here</a>' successmessage = 'Your calculations have been submitted. You will receive an email when they are done. You can check the status of your calculations <a href="/rowers/jobs-status/" target="_blank">here</a>'
messages.info(request,successmessage) messages.info(request,successmessage)
kwargs = { kwargs = {
'id':int(id)} 'id':encoder.encode_hex(id)}
try: try:
url = request.session['referer'] url = request.session['referer']
@@ -8667,7 +8668,7 @@ def workout_otwsetpower_view(request,id=0,message="",successmessage=""):
message = "Invalid Form" message = "Invalid Form"
messages.error(request,message) messages.error(request,message)
kwargs = { kwargs = {
'id':int(id)} 'id':encoder.encode_hex(id)}
url = reverse(workout_otwsetpower_view,kwargs=kwargs) url = reverse(workout_otwsetpower_view,kwargs=kwargs)
response = HttpResponseRedirect(url) response = HttpResponseRedirect(url)
@@ -11201,7 +11202,7 @@ def workout_uploadimage_view(request,id):
messages.error(request,message) messages.error(request,message)
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':int(id), 'id':encoder.encode_hex(id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -11359,7 +11360,7 @@ def workout_add_chart_view(request,id,plotnr=1):
request.session['async_tasks'] = [(jobid,'make_plot')] request.session['async_tasks'] = [(jobid,'make_plot')]
url = reverse(r.defaultlandingpage,kwargs={'id':str(w.id)}) url = reverse(r.defaultlandingpage,kwargs={'id':encoder.encode_hex(w.id)})
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -11917,7 +11918,7 @@ def workout_getimportview(request,externalid,source = 'c2'):
startdatetime, startdatetime,
workouttype=workouttype) workouttype=workouttype)
w = Workout.objects.get(id=id) w = Workout.objects.get(id=encoder.decode_hex(id))
w.uploadedtoc2 = c2id w.uploadedtoc2 = c2id
w.name = 'Imported from C2' w.name = 'Imported from C2'
w.workouttype = workouttype w.workouttype = workouttype
@@ -11927,7 +11928,7 @@ def workout_getimportview(request,externalid,source = 'c2'):
messages.info(request,message) messages.info(request,message)
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':int(id), 'id':encoder.encode_hex(w.id),
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -11940,7 +11941,7 @@ def workout_getimportview(request,externalid,source = 'c2'):
source=source, source=source,
workoutsource=source) workoutsource=source)
w = get_workout(id) w = get_workout(encoder.decode_hex(id))
if 'workout' in data: if 'workout' in data:
if 'splits' in data['workout']: if 'splits' in data['workout']:
@@ -11996,7 +11997,7 @@ def workout_getimportview(request,externalid,source = 'c2'):
url = reverse(r.defaultlandingpage, url = reverse(r.defaultlandingpage,
kwargs = { kwargs = {
'id':int(id) 'id':id
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -12947,7 +12948,7 @@ def workout_summary_restore_view(request,id,message="",successmessage=""):
messages.info(request,'Original Interval Data Restored') messages.info(request,'Original Interval Data Restored')
url = reverse(workout_summary_edit_view, url = reverse(workout_summary_edit_view,
kwargs={ kwargs={
'id':int(id), 'id':encoder.encode_hex(id),
} }
) )
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -14652,13 +14653,13 @@ def rower_update_empower_view(
message = "You can only alter your own workouts" message = "You can only alter your own workouts"
messages.error(request,message) messages.error(request,message)
if 'x' in w.boattype and w.oarlength is not None and w.oarlength > 3.30: if 'x' in w.boattype and w.oarlength is not None and w.oarlength > 3.30:
message = "Oarlength and boat type mismatch for workout "+str(w.id)+". Skipping workout" message = "Oarlength and boat type mismatch for workout "+encoder.encode_hex(w.id)+". Skipping workout"
messages.error(request,message) messages.error(request,message)
elif 'x' not in w.boattype and w.oarlength is not None and w.oarlength <= 3.30: elif 'x' not in w.boattype and w.oarlength is not None and w.oarlength <= 3.30:
message = "Oarlength and boat type mismatch for workout "+str(w.id)+". Skipping workout" message = "Oarlength and boat type mismatch for workout "+encoder.encode_hex(w.id)+". Skipping workout"
messages.error(request,message) messages.error(request,message)
elif w.oarlength is None: elif w.oarlength is None:
message = "Incorrect oarlength in workout "+str(w.id)+". Skipping workout" message = "Incorrect oarlength in workout "+encoder.encode_hex(w.id)+". Skipping workout"
messages.error(request,message) messages.error(request,message)
else: else:
@@ -18751,7 +18752,7 @@ class GraphDelete(DeleteView):
def get_success_url(self): def get_success_url(self):
w = self.object.workout w = self.object.workout
return reverse(workout_edit_view,kwargs={'id':str(w.id)}) return reverse(workout_edit_view,kwargs={'id':encoder.encode_hex(w.id)})
def get_object(self, *args, **kwargs): def get_object(self, *args, **kwargs):
obj = super(GraphDelete, self).get_object(*args, **kwargs) obj = super(GraphDelete, self).get_object(*args, **kwargs)