Date: Mon, 27 Dec 2021 20:06:46 +0100
Subject: [PATCH 09/11] removing tests for ranking
---
rowers/templates/list_workouts.html | 36 -----------------------------
rowers/tests/test_analysis.py | 7 ------
rowers/tests/test_urls.py | 2 --
rowers/views/analysisviews.py | 15 ------------
4 files changed, 60 deletions(-)
diff --git a/rowers/templates/list_workouts.html b/rowers/templates/list_workouts.html
index 19db849e..64aa921e 100644
--- a/rowers/templates/list_workouts.html
+++ b/rowers/templates/list_workouts.html
@@ -12,32 +12,6 @@
type='text/javascript'
src='https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js'>
-
{% endblock %}
@@ -100,16 +74,6 @@
- {% if rankingonly and not team %}
-
- Show All Workouts
-
- {% elif not team %}
-
- Show Only Ranking Pieces
-
- {% endif %}
-
{% if workouts.has_previous %}
diff --git a/rowers/tests/test_analysis.py b/rowers/tests/test_analysis.py
index 819ab6a8..d0025d6a 100644
--- a/rowers/tests/test_analysis.py
+++ b/rowers/tests/test_analysis.py
@@ -298,7 +298,6 @@ class WorkoutCompareTestNew(TestCase):
'includereststrokes':False,
'modality':'all',
'waterboattype':['1x','2x','4x'],
- 'rankingonly':False,
'workouts':[1,2,3]
}
@@ -396,7 +395,6 @@ class WorkoutBoxPlotTestNew(TestCase):
'includereststrokes':False,
'modality':'all',
'waterboattype':['1x','2x','4x'],
- 'rankingonly':False,
'workouts':[1,2,3]
}
@@ -494,7 +492,6 @@ class WorkoutHistoTestNew(TestCase):
'includereststrokes':False,
'modality':'all',
'waterboattype':['1x','2x','4x'],
- 'rankingonly':False,
'workouts':[1,2,3]
}
@@ -779,7 +776,6 @@ class WorkoutFlexallTestNew(TestCase):
'includereststrokes':False,
'modality':'all',
'waterboattype':['1x','2x','4x'],
- 'rankingonly':False,
'workouts':[1,2,3]
}
@@ -884,7 +880,6 @@ class WorkoutStatsTestNew(TestCase):
'includereststrokes':False,
'modality':'all',
'waterboattype':['1x','2x','4x'],
- 'rankingonly':False,
'ids':[1,2,3],
'userid':self.u.id,
}
@@ -947,7 +942,6 @@ class WorkoutStatsTestNew(TestCase):
'includereststrokes':False,
'modality':'all',
'waterboattype':['1x','2x','4x'],
- 'rankingonly':False,
'ids':[1,2,3],
'userid':self.u.id,
'function':'boxplot'
@@ -1019,7 +1013,6 @@ class WorkoutStatsTestNew(TestCase):
'includereststrokes':False,
'modality':'all',
'waterboattype':['1x','2x','4x'],
- 'rankingonly':False,
'workouts':[1,2,3]
}
diff --git a/rowers/tests/test_urls.py b/rowers/tests/test_urls.py
index c34057d8..bd1fc5b1 100644
--- a/rowers/tests/test_urls.py
+++ b/rowers/tests/test_urls.py
@@ -93,7 +93,6 @@ class URLTests(TestCase):
'/rowers/list-graphs/',
'/rowers/list-jobs/',
'/rowers/list-workouts/',
- '/rowers/list-workouts/ranking/',
'/rowers/list-workouts/user/1/',
'/rowers/me/calcdps/',
'/rowers/me/edit/',
@@ -157,7 +156,6 @@ class URLTests(TestCase):
'/rowers/workout/'+encoded1+'/split/',
'/rowers/workout/'+encoded1+'/stats/',
'/rowers/workout/'+encoded1+'/stream/',
- '/rowers/workout/'+encoded1+'/toggle-ranking/',
'/rowers/workout/'+encoded1+'/undosmoothenpace/',
'/rowers/workout/'+encoded1+'/unsubscribe/',
'/rowers/workout/'+encoded1+'/view/',
diff --git a/rowers/views/analysisviews.py b/rowers/views/analysisviews.py
index 9f62d9bf..3323fb9b 100644
--- a/rowers/views/analysisviews.py
+++ b/rowers/views/analysisviews.py
@@ -26,7 +26,6 @@ defaultoptions = {
'includereststrokes': False,
'workouttypes':['rower','dynamic','slides'],
'waterboattype': mytypes.waterboattype,
- 'rankingonly': False,
'function':'boxplot'
}
@@ -78,11 +77,6 @@ def analysis_new(request,userid=0,function='boxplot',teamid=0,id=''):
worldclass = False
- try:
- rankingonly = options['rankingonly']
- except KeyError: # pragma: no cover
- rankingonly = False
-
try:
includereststrokes = options['includereststrokes']
except KeyError: # pragma: no cover
@@ -129,12 +123,6 @@ def analysis_new(request,userid=0,function='boxplot',teamid=0,id=''):
if modality != 'water':
waterboattype = [b[0] for b in mytypes.boattypes]
-
- if 'rankingonly' in optionsform.cleaned_data:
- rankingonly = optionsform.cleaned_data['rankingonly']
- else: # pragma: no cover
- rankingonly = False
-
options['modalities'] = modalities
options['waterboattype'] = waterboattype
try:
@@ -224,8 +212,6 @@ def analysis_new(request,userid=0,function='boxplot',teamid=0,id=''):
).exclude(boattype__in=negtypes)
- if rankingonly: # pragma: no cover
- workouts = workouts.exclude(rankingpiece=False)
query = request.POST.get('q')
if query: # pragma: no cover
@@ -257,7 +243,6 @@ def analysis_new(request,userid=0,function='boxplot',teamid=0,id=''):
optionsform = AnalysisOptionsForm(initial={
'modality':modality,
'waterboattype':waterboattype,
- 'rankingonly':rankingonly,
})
From 3bd9bc9a66636d23e1f65c55d36e0898fd82f0f6 Mon Sep 17 00:00:00 2001
From: Sander Roosendaal
Date: Thu, 30 Dec 2021 12:20:13 +0100
Subject: [PATCH 10/11] new icons working
---
rowers/mytypes.py | 56 +++++++++---------
rowers/templates/__MACOSX/svg/._bike.svg | Bin 0 -> 220 bytes
rowers/templates/__MACOSX/svg/._bike_erg.svg | Bin 0 -> 220 bytes
rowers/templates/__MACOSX/svg/._canoeing.svg | Bin 0 -> 220 bytes
.../__MACOSX/svg/._cross_country_ski.svg | Bin 0 -> 220 bytes
rowers/templates/__MACOSX/svg/._crossfit.svg | Bin 0 -> 220 bytes
rowers/templates/__MACOSX/svg/._hike.svg | Bin 0 -> 220 bytes
.../templates/__MACOSX/svg/._ice_skating.svg | Bin 0 -> 220 bytes
.../templates/__MACOSX/svg/._indoor_rower.svg | Bin 0 -> 220 bytes
.../__MACOSX/svg/._inline_skating.svg | Bin 0 -> 220 bytes
rowers/templates/__MACOSX/svg/._kayaking.svg | Bin 0 -> 220 bytes
rowers/templates/__MACOSX/svg/._other.svg | Bin 0 -> 220 bytes
rowers/templates/__MACOSX/svg/._paddle.svg | Bin 0 -> 220 bytes
rowers/templates/__MACOSX/svg/._rowing.svg | Bin 0 -> 220 bytes
rowers/templates/__MACOSX/svg/._run.svg | Bin 0 -> 220 bytes
rowers/templates/__MACOSX/svg/._ski_erg.svg | Bin 0 -> 220 bytes
.../__MACOSX/svg/._standup_paddling.svg | Bin 0 -> 220 bytes
rowers/templates/__MACOSX/svg/._swim.svg | Bin 0 -> 220 bytes
rowers/templates/__MACOSX/svg/._walk.svg | Bin 0 -> 220 bytes
.../__MACOSX/svg/._weight_training.svg | Bin 0 -> 220 bytes
rowers/templates/__MACOSX/svg/._workout.svg | Bin 0 -> 220 bytes
rowers/templates/__MACOSX/svg/._yoga.svg | Bin 0 -> 220 bytes
rowers/templates/bike.svg | 25 ++++++++
rowers/templates/bike_erg.svg | 32 ++++++++++
rowers/templates/canoeing.svg | 26 ++++++++
rowers/templates/cross_country_ski.svg | 25 ++++++++
rowers/templates/crossfit.svg | 27 +++++++++
rowers/templates/hike.svg | 21 +++++++
rowers/templates/ice_skating.svg | 23 +++++++
rowers/templates/icons/bike.svg | 27 +++++++++
rowers/templates/icons/bike_erg.svg | 32 ++++++++++
rowers/templates/icons/canoeing.svg | 26 ++++++++
rowers/templates/icons/cross_country_ski.svg | 25 ++++++++
rowers/templates/icons/crossfit.svg | 29 +++++++++
rowers/templates/icons/hike.svg | 21 +++++++
rowers/templates/icons/ice_skating.svg | 23 +++++++
rowers/templates/icons/indoor_rower.svg | 24 ++++++++
rowers/templates/icons/inline_skating.svg | 44 ++++++++++++++
rowers/templates/icons/kayaking.svg | 26 ++++++++
rowers/templates/icons/other.svg | 22 +++++++
rowers/templates/icons/paddle.svg | 25 ++++++++
rowers/templates/icons/rowing.svg | 23 +++++++
rowers/templates/icons/run.svg | 20 +++++++
rowers/templates/icons/ski_erg.svg | 29 +++++++++
rowers/templates/icons/standup_paddling.svg | 27 +++++++++
rowers/templates/icons/swim.svg | 20 +++++++
rowers/templates/icons/walk.svg | 18 ++++++
rowers/templates/icons/weight_training.svg | 28 +++++++++
rowers/templates/icons/workout.svg | 17 ++++++
rowers/templates/icons/yoga.svg | 19 ++++++
rowers/templates/indoor_rower.svg | 24 ++++++++
rowers/templates/inline_skating.svg | 44 ++++++++++++++
rowers/templates/kayaking.svg | 26 ++++++++
rowers/templates/list_workouts.html | 12 ++--
rowers/templates/other.svg | 20 +++++++
rowers/templates/paddle.svg | 25 ++++++++
rowers/templates/rowing.svg | 23 +++++++
rowers/templates/run.svg | 18 ++++++
rowers/templates/ski_erg.svg | 29 +++++++++
rowers/templates/standup_paddling.svg | 27 +++++++++
rowers/templates/svg/bike.svg | 25 ++++++++
rowers/templates/svg/bike_erg.svg | 32 ++++++++++
rowers/templates/svg/canoeing.svg | 26 ++++++++
rowers/templates/svg/cross_country_ski.svg | 25 ++++++++
rowers/templates/svg/crossfit.svg | 27 +++++++++
rowers/templates/svg/hike.svg | 21 +++++++
rowers/templates/svg/ice_skating.svg | 23 +++++++
rowers/templates/svg/indoor_rower.svg | 24 ++++++++
rowers/templates/svg/inline_skating.svg | 44 ++++++++++++++
rowers/templates/svg/kayaking.svg | 26 ++++++++
rowers/templates/svg/other.svg | 20 +++++++
rowers/templates/svg/paddle.svg | 25 ++++++++
rowers/templates/svg/rowing.svg | 23 +++++++
rowers/templates/svg/run.svg | 18 ++++++
rowers/templates/svg/ski_erg.svg | 29 +++++++++
rowers/templates/svg/standup_paddling.svg | 27 +++++++++
rowers/templates/svg/swim.svg | 22 +++++++
rowers/templates/svg/walk.svg | 16 +++++
rowers/templates/svg/weight_training.svg | 28 +++++++++
rowers/templates/svg/workout.svg | 15 +++++
rowers/templates/svg/yoga.svg | 19 ++++++
rowers/templates/swim.svg | 22 +++++++
rowers/templates/walk.svg | 16 +++++
rowers/templates/weight_training.svg | 28 +++++++++
rowers/templates/workout.svg | 15 +++++
rowers/templates/yoga.svg | 19 ++++++
rowers/templatetags/rowerfilters.py | 8 +--
static/css/rowsandall2.css | 11 ++++
static/img/bike.svg | 27 +++++++++
static/img/bike_erg.svg | 32 ++++++++++
static/img/canoeing.svg | 26 ++++++++
static/img/cross_country_ski.svg | 25 ++++++++
static/img/crossfit.svg | 27 +++++++++
static/img/hike.svg | 21 +++++++
static/img/ice_skating.svg | 23 +++++++
static/img/indoor_rower.svg | 24 ++++++++
static/img/inline_skating.svg | 44 ++++++++++++++
static/img/kayaking.svg | 26 ++++++++
static/img/other.svg | 20 +++++++
static/img/paddle.svg | 25 ++++++++
static/img/rowing.svg | 23 +++++++
static/img/run.svg | 18 ++++++
static/img/ski_erg.svg | 29 +++++++++
static/img/standup_paddling.svg | 27 +++++++++
static/img/swim.svg | 22 +++++++
static/img/walk.svg | 16 +++++
static/img/weight_training.svg | 28 +++++++++
static/img/workout.svg | 15 +++++
static/img/yoga.svg | 19 ++++++
109 files changed, 2120 insertions(+), 39 deletions(-)
create mode 100644 rowers/templates/__MACOSX/svg/._bike.svg
create mode 100644 rowers/templates/__MACOSX/svg/._bike_erg.svg
create mode 100644 rowers/templates/__MACOSX/svg/._canoeing.svg
create mode 100644 rowers/templates/__MACOSX/svg/._cross_country_ski.svg
create mode 100644 rowers/templates/__MACOSX/svg/._crossfit.svg
create mode 100644 rowers/templates/__MACOSX/svg/._hike.svg
create mode 100644 rowers/templates/__MACOSX/svg/._ice_skating.svg
create mode 100644 rowers/templates/__MACOSX/svg/._indoor_rower.svg
create mode 100644 rowers/templates/__MACOSX/svg/._inline_skating.svg
create mode 100644 rowers/templates/__MACOSX/svg/._kayaking.svg
create mode 100644 rowers/templates/__MACOSX/svg/._other.svg
create mode 100644 rowers/templates/__MACOSX/svg/._paddle.svg
create mode 100644 rowers/templates/__MACOSX/svg/._rowing.svg
create mode 100644 rowers/templates/__MACOSX/svg/._run.svg
create mode 100644 rowers/templates/__MACOSX/svg/._ski_erg.svg
create mode 100644 rowers/templates/__MACOSX/svg/._standup_paddling.svg
create mode 100644 rowers/templates/__MACOSX/svg/._swim.svg
create mode 100644 rowers/templates/__MACOSX/svg/._walk.svg
create mode 100644 rowers/templates/__MACOSX/svg/._weight_training.svg
create mode 100644 rowers/templates/__MACOSX/svg/._workout.svg
create mode 100644 rowers/templates/__MACOSX/svg/._yoga.svg
create mode 100644 rowers/templates/bike.svg
create mode 100644 rowers/templates/bike_erg.svg
create mode 100644 rowers/templates/canoeing.svg
create mode 100644 rowers/templates/cross_country_ski.svg
create mode 100644 rowers/templates/crossfit.svg
create mode 100644 rowers/templates/hike.svg
create mode 100644 rowers/templates/ice_skating.svg
create mode 100644 rowers/templates/icons/bike.svg
create mode 100644 rowers/templates/icons/bike_erg.svg
create mode 100644 rowers/templates/icons/canoeing.svg
create mode 100644 rowers/templates/icons/cross_country_ski.svg
create mode 100644 rowers/templates/icons/crossfit.svg
create mode 100644 rowers/templates/icons/hike.svg
create mode 100644 rowers/templates/icons/ice_skating.svg
create mode 100644 rowers/templates/icons/indoor_rower.svg
create mode 100644 rowers/templates/icons/inline_skating.svg
create mode 100644 rowers/templates/icons/kayaking.svg
create mode 100644 rowers/templates/icons/other.svg
create mode 100644 rowers/templates/icons/paddle.svg
create mode 100644 rowers/templates/icons/rowing.svg
create mode 100644 rowers/templates/icons/run.svg
create mode 100644 rowers/templates/icons/ski_erg.svg
create mode 100644 rowers/templates/icons/standup_paddling.svg
create mode 100644 rowers/templates/icons/swim.svg
create mode 100644 rowers/templates/icons/walk.svg
create mode 100644 rowers/templates/icons/weight_training.svg
create mode 100644 rowers/templates/icons/workout.svg
create mode 100644 rowers/templates/icons/yoga.svg
create mode 100644 rowers/templates/indoor_rower.svg
create mode 100644 rowers/templates/inline_skating.svg
create mode 100644 rowers/templates/kayaking.svg
create mode 100644 rowers/templates/other.svg
create mode 100644 rowers/templates/paddle.svg
create mode 100644 rowers/templates/rowing.svg
create mode 100644 rowers/templates/run.svg
create mode 100644 rowers/templates/ski_erg.svg
create mode 100644 rowers/templates/standup_paddling.svg
create mode 100644 rowers/templates/svg/bike.svg
create mode 100644 rowers/templates/svg/bike_erg.svg
create mode 100644 rowers/templates/svg/canoeing.svg
create mode 100644 rowers/templates/svg/cross_country_ski.svg
create mode 100644 rowers/templates/svg/crossfit.svg
create mode 100644 rowers/templates/svg/hike.svg
create mode 100644 rowers/templates/svg/ice_skating.svg
create mode 100644 rowers/templates/svg/indoor_rower.svg
create mode 100644 rowers/templates/svg/inline_skating.svg
create mode 100644 rowers/templates/svg/kayaking.svg
create mode 100644 rowers/templates/svg/other.svg
create mode 100644 rowers/templates/svg/paddle.svg
create mode 100644 rowers/templates/svg/rowing.svg
create mode 100644 rowers/templates/svg/run.svg
create mode 100644 rowers/templates/svg/ski_erg.svg
create mode 100644 rowers/templates/svg/standup_paddling.svg
create mode 100644 rowers/templates/svg/swim.svg
create mode 100644 rowers/templates/svg/walk.svg
create mode 100644 rowers/templates/svg/weight_training.svg
create mode 100644 rowers/templates/svg/workout.svg
create mode 100644 rowers/templates/svg/yoga.svg
create mode 100644 rowers/templates/swim.svg
create mode 100644 rowers/templates/walk.svg
create mode 100644 rowers/templates/weight_training.svg
create mode 100644 rowers/templates/workout.svg
create mode 100644 rowers/templates/yoga.svg
create mode 100644 static/img/bike.svg
create mode 100644 static/img/bike_erg.svg
create mode 100644 static/img/canoeing.svg
create mode 100644 static/img/cross_country_ski.svg
create mode 100644 static/img/crossfit.svg
create mode 100644 static/img/hike.svg
create mode 100644 static/img/ice_skating.svg
create mode 100644 static/img/indoor_rower.svg
create mode 100644 static/img/inline_skating.svg
create mode 100644 static/img/kayaking.svg
create mode 100644 static/img/other.svg
create mode 100644 static/img/paddle.svg
create mode 100644 static/img/rowing.svg
create mode 100644 static/img/run.svg
create mode 100644 static/img/ski_erg.svg
create mode 100644 static/img/standup_paddling.svg
create mode 100644 static/img/swim.svg
create mode 100644 static/img/walk.svg
create mode 100644 static/img/weight_training.svg
create mode 100644 static/img/workout.svg
create mode 100644 static/img/yoga.svg
diff --git a/rowers/mytypes.py b/rowers/mytypes.py
index 9249b0a6..e264fa8c 100644
--- a/rowers/mytypes.py
+++ b/rowers/mytypes.py
@@ -42,35 +42,35 @@ workouttypes_ordered = collections.OrderedDict({
)
workouttypes_icons = collections.OrderedDict({
- 'water':'far fa-water',
- 'rower':'far fa-tire',
- 'skierg':'far fa-tire',
- 'bikeerg':'far fa-biking',
- 'dynamic':'far fa-tire',
- 'slides':'far fa-tire',
- 'paddle':'far fa-utensil-spoon',
- 'snow':'far fa-snowflakes',
- 'coastal':'far fa-water',
- 'c-boat':'far fa-water',
- 'churchboat':'far fa-water',
- 'Ride':'far fa-biking',
- 'bike':'far fa-biking',
- 'Run':'far fa-running',
- 'NordicSki':'far fa-skiing-nordic',
- 'Swim':'far fa-swimmer',
- 'Hike':'far fa-hiking',
- 'Walk':'far fa-walking',
- 'Canoeing':'far fa-blind',
- 'Crossfit':'far fa-dumbbell',
- 'StandUpPaddling':'far fa-blind',
- 'IceSkate':'far fa-skating',
- 'WeightTraining':'far fa-dumbbell',
- 'InlineSkate':'far fa-skating',
- 'Kayaking':'far fa-water',
- 'Workout':'far fa-dumbbell',
- 'Yoga':'far fa-pray',
+ 'water':'rowing.svg', # g
+ 'rower':'indoor_rower.svg', # g
+ 'skierg':'ski_erg.svg', #g
+ 'bikeerg':'bike_erg.svg', #g
+ 'dynamic':'indoor_rower.svg',
+ 'slides':'indoor_rower.svg',
+ 'paddle':'paddle.svg', # could be better
+ 'snow':'cross_country_ski.svg', # ok
+ 'coastal':'rowing.svg', # ok
+ 'c-boat':'rowing.svg', # ok
+ 'churchboat':'rowing.svg', # ok
+ 'Ride':'bike.svg', # ok
+ 'bike':'bike.svg', # ok
+ 'Run':'run.svg', # ok
+ 'NordicSki':'cross_country_ski.svg', # ok
+ 'Swim':'swim.svg', # ok
+ 'Hike':'hike.svg', # ok
+ 'Walk':'walk.svg', # o k
+ 'Canoeing':'canoeing.svg', # ok
+ 'Crossfit':'crossfit.svg',
+ 'StandUpPaddling':'standup_paddling.svg',
+ 'IceSkate':'ice_skating.svg',
+ 'WeightTraining':'weight_training.svg',
+ 'InlineSkate':'inline_skating.svg',
+ 'Kayaking':'kayaking.svg',
+ 'Workout':'workout.svg',
+ 'Yoga':'yoga.svg',
# 'bike':'Bike',
- 'other':'far fa-biking',
+ 'other':'other.svg',
}
)
diff --git a/rowers/templates/__MACOSX/svg/._bike.svg b/rowers/templates/__MACOSX/svg/._bike.svg
new file mode 100644
index 0000000000000000000000000000000000000000..61066ba6c67286aa267d20546caf465cde2cc616
GIT binary patch
literal 220
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
F7XZsf7ij
+
+
diff --git a/rowers/templates/bike_erg.svg b/rowers/templates/bike_erg.svg
new file mode 100644
index 00000000..05fd9ddd
--- /dev/null
+++ b/rowers/templates/bike_erg.svg
@@ -0,0 +1,32 @@
+
+
+
diff --git a/rowers/templates/canoeing.svg b/rowers/templates/canoeing.svg
new file mode 100644
index 00000000..6fd77453
--- /dev/null
+++ b/rowers/templates/canoeing.svg
@@ -0,0 +1,26 @@
+
+
+
diff --git a/rowers/templates/cross_country_ski.svg b/rowers/templates/cross_country_ski.svg
new file mode 100644
index 00000000..053971dc
--- /dev/null
+++ b/rowers/templates/cross_country_ski.svg
@@ -0,0 +1,25 @@
+
+
+
diff --git a/rowers/templates/crossfit.svg b/rowers/templates/crossfit.svg
new file mode 100644
index 00000000..94424445
--- /dev/null
+++ b/rowers/templates/crossfit.svg
@@ -0,0 +1,27 @@
+
+
+
diff --git a/rowers/templates/hike.svg b/rowers/templates/hike.svg
new file mode 100644
index 00000000..23d9c5b5
--- /dev/null
+++ b/rowers/templates/hike.svg
@@ -0,0 +1,21 @@
+
+
+
diff --git a/rowers/templates/ice_skating.svg b/rowers/templates/ice_skating.svg
new file mode 100644
index 00000000..d6381b02
--- /dev/null
+++ b/rowers/templates/ice_skating.svg
@@ -0,0 +1,23 @@
+
+
+
diff --git a/rowers/templates/icons/bike.svg b/rowers/templates/icons/bike.svg
new file mode 100644
index 00000000..53783f7f
--- /dev/null
+++ b/rowers/templates/icons/bike.svg
@@ -0,0 +1,27 @@
+
+
+
diff --git a/rowers/templates/icons/bike_erg.svg b/rowers/templates/icons/bike_erg.svg
new file mode 100644
index 00000000..b53b0f1f
--- /dev/null
+++ b/rowers/templates/icons/bike_erg.svg
@@ -0,0 +1,32 @@
+
+
+
diff --git a/rowers/templates/icons/canoeing.svg b/rowers/templates/icons/canoeing.svg
new file mode 100644
index 00000000..b749ff73
--- /dev/null
+++ b/rowers/templates/icons/canoeing.svg
@@ -0,0 +1,26 @@
+
+
+
diff --git a/rowers/templates/icons/cross_country_ski.svg b/rowers/templates/icons/cross_country_ski.svg
new file mode 100644
index 00000000..cf2207b7
--- /dev/null
+++ b/rowers/templates/icons/cross_country_ski.svg
@@ -0,0 +1,25 @@
+
+
+
diff --git a/rowers/templates/icons/crossfit.svg b/rowers/templates/icons/crossfit.svg
new file mode 100644
index 00000000..6f13a7b6
--- /dev/null
+++ b/rowers/templates/icons/crossfit.svg
@@ -0,0 +1,29 @@
+
+
+
diff --git a/rowers/templates/icons/hike.svg b/rowers/templates/icons/hike.svg
new file mode 100644
index 00000000..89fa0a01
--- /dev/null
+++ b/rowers/templates/icons/hike.svg
@@ -0,0 +1,21 @@
+
+
+
diff --git a/rowers/templates/icons/ice_skating.svg b/rowers/templates/icons/ice_skating.svg
new file mode 100644
index 00000000..50fa4775
--- /dev/null
+++ b/rowers/templates/icons/ice_skating.svg
@@ -0,0 +1,23 @@
+
+
+
diff --git a/rowers/templates/icons/indoor_rower.svg b/rowers/templates/icons/indoor_rower.svg
new file mode 100644
index 00000000..4eba251e
--- /dev/null
+++ b/rowers/templates/icons/indoor_rower.svg
@@ -0,0 +1,24 @@
+
+
+
diff --git a/rowers/templates/icons/inline_skating.svg b/rowers/templates/icons/inline_skating.svg
new file mode 100644
index 00000000..1945100e
--- /dev/null
+++ b/rowers/templates/icons/inline_skating.svg
@@ -0,0 +1,44 @@
+
+
+
diff --git a/rowers/templates/icons/kayaking.svg b/rowers/templates/icons/kayaking.svg
new file mode 100644
index 00000000..b4bad483
--- /dev/null
+++ b/rowers/templates/icons/kayaking.svg
@@ -0,0 +1,26 @@
+
+
+
diff --git a/rowers/templates/icons/other.svg b/rowers/templates/icons/other.svg
new file mode 100644
index 00000000..b3be09c4
--- /dev/null
+++ b/rowers/templates/icons/other.svg
@@ -0,0 +1,22 @@
+
+
+
diff --git a/rowers/templates/icons/paddle.svg b/rowers/templates/icons/paddle.svg
new file mode 100644
index 00000000..2bba600a
--- /dev/null
+++ b/rowers/templates/icons/paddle.svg
@@ -0,0 +1,25 @@
+
+
+
diff --git a/rowers/templates/icons/rowing.svg b/rowers/templates/icons/rowing.svg
new file mode 100644
index 00000000..0644953d
--- /dev/null
+++ b/rowers/templates/icons/rowing.svg
@@ -0,0 +1,23 @@
+
+
+
diff --git a/rowers/templates/icons/run.svg b/rowers/templates/icons/run.svg
new file mode 100644
index 00000000..3445f4fb
--- /dev/null
+++ b/rowers/templates/icons/run.svg
@@ -0,0 +1,20 @@
+
+
+
diff --git a/rowers/templates/icons/ski_erg.svg b/rowers/templates/icons/ski_erg.svg
new file mode 100644
index 00000000..2041a06b
--- /dev/null
+++ b/rowers/templates/icons/ski_erg.svg
@@ -0,0 +1,29 @@
+
+
+
diff --git a/rowers/templates/icons/standup_paddling.svg b/rowers/templates/icons/standup_paddling.svg
new file mode 100644
index 00000000..e60e9ace
--- /dev/null
+++ b/rowers/templates/icons/standup_paddling.svg
@@ -0,0 +1,27 @@
+
+
+
diff --git a/rowers/templates/icons/swim.svg b/rowers/templates/icons/swim.svg
new file mode 100644
index 00000000..08633397
--- /dev/null
+++ b/rowers/templates/icons/swim.svg
@@ -0,0 +1,20 @@
+
+
+
diff --git a/rowers/templates/icons/walk.svg b/rowers/templates/icons/walk.svg
new file mode 100644
index 00000000..5f91dc00
--- /dev/null
+++ b/rowers/templates/icons/walk.svg
@@ -0,0 +1,18 @@
+
+
+
diff --git a/rowers/templates/icons/weight_training.svg b/rowers/templates/icons/weight_training.svg
new file mode 100644
index 00000000..b3510111
--- /dev/null
+++ b/rowers/templates/icons/weight_training.svg
@@ -0,0 +1,28 @@
+
+
+
diff --git a/rowers/templates/icons/workout.svg b/rowers/templates/icons/workout.svg
new file mode 100644
index 00000000..f30fe27d
--- /dev/null
+++ b/rowers/templates/icons/workout.svg
@@ -0,0 +1,17 @@
+
+
+
diff --git a/rowers/templates/icons/yoga.svg b/rowers/templates/icons/yoga.svg
new file mode 100644
index 00000000..4a207e32
--- /dev/null
+++ b/rowers/templates/icons/yoga.svg
@@ -0,0 +1,19 @@
+
+
+
diff --git a/rowers/templates/indoor_rower.svg b/rowers/templates/indoor_rower.svg
new file mode 100644
index 00000000..998e3e05
--- /dev/null
+++ b/rowers/templates/indoor_rower.svg
@@ -0,0 +1,24 @@
+
+
+
diff --git a/rowers/templates/inline_skating.svg b/rowers/templates/inline_skating.svg
new file mode 100644
index 00000000..06fd9308
--- /dev/null
+++ b/rowers/templates/inline_skating.svg
@@ -0,0 +1,44 @@
+
+
+
diff --git a/rowers/templates/kayaking.svg b/rowers/templates/kayaking.svg
new file mode 100644
index 00000000..3027e2d7
--- /dev/null
+++ b/rowers/templates/kayaking.svg
@@ -0,0 +1,26 @@
+
+
+
diff --git a/rowers/templates/list_workouts.html b/rowers/templates/list_workouts.html
index 64aa921e..bb67af4b 100644
--- a/rowers/templates/list_workouts.html
+++ b/rowers/templates/list_workouts.html
@@ -136,19 +136,21 @@
{% endif %}