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) {} }