diff --git a/rowers/templates/embedded_video.html b/rowers/templates/embedded_video.html
index 97196d18..fa7eacaa 100644
--- a/rowers/templates/embedded_video.html
+++ b/rowers/templates/embedded_video.html
@@ -389,6 +389,11 @@ function copyText() {
{% endif %}
+ {% if 'athlete' in metricsgroups %}
+
+
+
+ {% endif %}
@@ -404,12 +409,29 @@ function copyText() {
{% endlanguage %}
diff --git a/rowers/templatetags/rowerfilters.py b/rowers/templatetags/rowerfilters.py
index 5c1c70ca..648e0d80 100644
--- a/rowers/templatetags/rowerfilters.py
+++ b/rowers/templatetags/rowerfilters.py
@@ -121,7 +121,26 @@ def is_coach(rower,rowers):
return True
+@register.filter
+def waterpower(x,rower):
+ return int(x*(100-rower.otwslack)/100.)
+@register.filter
+def round20(x):
+ return int(20.*(1+int(int(x)/20)))
+
+@register.filter
+def round100(x):
+ return int(100.*(1+int(int(x)/100)))
+
+@register.filter
+def majorticks(maxval):
+ ticks = range(1+int(maxval/100.))
+ newticks =[]
+ for t in ticks:
+ newticks.append(t*100)
+
+ return newticks
def strfdeltah(tdelta):
hours, rest = divmod(tdelta.seconds,3600)
diff --git a/rowsandall_app/settings.py b/rowsandall_app/settings.py
index a916a5f2..2df72fc8 100644
--- a/rowsandall_app/settings.py
+++ b/rowsandall_app/settings.py
@@ -84,7 +84,7 @@ MIDDLEWARE = [
'django.middleware.common.CommonMiddleware',
'django.middleware.common.BrokenLinkEmailsMiddleware',
'django.middleware.gzip.GZipMiddleware',
- 'htmlmin.middleware.HtmlMinifyMiddleware',
+# 'htmlmin.middleware.HtmlMinifyMiddleware',
# 'htmlmin.middleware.MarkRequestMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.middleware.security.SecurityMiddleware',
diff --git a/static/js/videogauges.js b/static/js/videogauges.js
index 8b18f129..31da7567 100644
--- a/static/js/videogauges.js
+++ b/static/js/videogauges.js
@@ -2,15 +2,18 @@ google.charts.load('current', {'packages':['gauge']});
google.charts.setOnLoadCallback(drawSPMChart);
google.charts.setOnLoadCallback(drawSpeedChart);
google.charts.setOnLoadCallback(drawPowerChart);
+google.charts.setOnLoadCallback(drawHRChart);
+
+console.log('initializing data');
var spmdata = [
['Label', 'Value'],
- ['SPM', 21.0],
+ ['SPM', 21],
];
var speeddata = [
['Label', 'Value'],
- ['V m/s', 0.0],
+ ['V m/s', 0],
];
var powerdata = [
@@ -18,6 +21,21 @@ var powerdata = [
['PWR',150],
]
+var hrdata = [
+ ['Label','Value'],
+ ['HR',110],
+]
+
+var hroptions = {
+ min: 100, max: 200,
+ width: 400, height: 120,
+ greenFrom: 100, greenTo: 135,
+ yellowFrom: 135,yellowTo: 157,
+ redFrom: 157, redTo: 200,
+ minorTicks: 5
+};
+
+
var spmoptions = {
min:0, max: 50,
width: 400, height: 120,
@@ -58,13 +76,16 @@ var datapower = null;
// SPM chart
function drawSPMChart() {
-
+ console.log('first draw SPM chart');
dataspm = new google.visualization.arrayToDataTable(spmdata);
-
+ try {
spmchart = new google.visualization.Gauge(document.getElementById('basic_spm'));
+ spmchart.draw(dataspm,spmoptions);
+} catch(err) {
+}
// spmchart.draw(data, spmoptions);
// Define set_basic(values) so that gauges can be set by metricsgroups
@@ -75,13 +96,35 @@ function drawSPMChart() {
function drawSpeedChart() {
dataspeed = new google.visualization.arrayToDataTable(speeddata);
+ try {
speedchart = new google.visualization.Gauge(document.getElementById('basic_boatspeed'));
+ speedchart.draw(dataspeed,speedoptions);
+} catch(err) {
+
+}
}
// Power chart
function drawPowerChart() {
datapower = new google.visualization.arrayToDataTable(powerdata);
+ try {
powerchart = new google.visualization.Gauge(document.getElementById('forcepower_power'));
+ powerchart.draw(datapower,poweroptions)
+} catch(err) {
+
+}
+
+}
+
+// Power chart
+function drawHRChart() {
+ datahr = new google.visualization.arrayToDataTable(hrdata);
+ try {
+ hrchart = new google.visualization.Gauge(document.getElementById('athlete_hr'));
+ hrchart.draw(datahr,hroptions);
+} catch(err) {
+ console.log('no hr div');
+}
}
@@ -94,7 +137,10 @@ function set_basic() {
}
function set_athlete() {
-
+ datahr.setCell(0,1,hr_now);
+ try {
+ hrchart.draw(datahr,hroptions);
+ } catch(err) {}
}
function set_stroke() {
@@ -103,5 +149,7 @@ function set_stroke() {
function set_forcepower() {
datapower.setCell(0,1,power_now);
+ try {
powerchart.draw(datapower,poweroptions);
+} catch(err) {}
}