#167 JS development of hashchange-dependant tabbing mechanism, and of Rickshaw graphs with separate legends.
[ckanext-ga-report.git] / ckanext / ga_report / templates / ga_report / site / index.html
blob:a/ckanext/ga_report/templates/ga_report/site/index.html -> blob:b/ckanext/ga_report/templates/ga_report/site/index.html
<html xmlns:py="http://genshi.edgewall.org/" <html xmlns:py="http://genshi.edgewall.org/"
xmlns:i18n="http://genshi.edgewall.org/i18n" xmlns:i18n="http://genshi.edgewall.org/i18n"
xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xi="http://www.w3.org/2001/XInclude"
py:strip=""> py:strip="">
   
<xi:include href="../ga_util.html" /> <xi:include href="../ga_util.html" />
   
<py:def function="page_title">Site usage</py:def> <py:def function="page_title">Site usage</py:def>
   
<py:def function="optional_head"> <py:def function="optional_head">
<link rel="stylesheet" type="text/css" href="/scripts/vendor/rickshaw.min.css"/>  
<link rel="stylesheet" type="text/css" href="/css/ga_report.css"/>  
<script type="text/javascript" src="/scripts/ckanext_ga_reports.js"></script>  
<script type="text/javascript" src="/scripts/vendor/jquery.sparkline.modified.js"></script>  
<script type="text/javascript" src="/scripts/vendor/d3.v2.js"></script>  
<script type="text/javascript" src="/scripts/vendor/d3.layout.min.js"></script>  
<script type="text/javascript" src="/scripts/vendor/rickshaw.min.js"></script>  
</py:def> </py:def>
   
<py:match path="primarysidebar"> <py:match path="breadcrumbs">
<li class="widget-container boxed widget_text"> <li><a href="/site-usage">Site Analytics</a></li>
<h4>Download</h4> <li><a href="/site-usage">Site-wide</a></li>
<p><center> </py:match>
<a class="btn button btn-primary" href="${h.url_for(controller='ckanext.ga_report.controller:GaReport',action='csv',month=c.month or 'all')}">Download as CSV</a></center>  
</p> <div py:match="content">
</li> <div class="row">
<li class="widget-container boxed widget_text"> <div class="col-sm-7 col-md-8 col-lg-9">
<h4>Graph Legend</h4> <py:with vars="download_link=h.url_for(controller='ckanext.ga_report.controller:GaReport',action='csv',month=c.month or 'all')">
<div id="graph-legend-container"> <a class="btn button btn-primary btn-sm pull-right" href="${download_link}"><i class="icon-download"></i>&nbsp; Download as CSV</a>
<div id="legend_none">(No graph loaded)</div> </py:with>
  <h1>Site Usage</h1>
</div> </div>
</li> <div class="col-sm-5 col-md-4 col-lg-3">
<xi:include href="../notes.html" /> <div class="panel panel-default">
  <div class="panel-heading"><strong>Jump To...</strong></div>
</py:match> <div class="panel-body">
  <ul>
<div py:match="content"> <li><a href="/site-usage/publisher">Publisher Usage Statistics</a></li>
<h1>Site Usage</h1> <li><a href="/site-usage/dataset">Dataset Usage Statistics</a></li>
${usage_nav('Site-wide')} </ul>
   
<form class="form-inline" action="${h.url_for(controller='ckanext.ga_report.controller:GaReport',action='index')}" method="get">  
<div class="controls">  
   
${month_selector(c.month, c.months, c.day)}  
   
<input class="btn button btn-primary" type='submit' value="Update"/>  
</div> </div>
</form> </div>
  </div>
<div class="tabbable"> </div>
<ul class="nav nav-tabs">  
<li><a href="#totals" data-toggle="hashchange">Totals</a></li> <div class="row" style="background: #fff;">
<li class="dropdown"> <div class="col-md-8">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Browsers <div class="whitebox">
<b class="caret"></b></a> <div class="tabbable">
<ul class="dropdown-menu"> <ul class="nav nav-tabs">
<li><a href="#browsers_names" data-toggle="hashchange">Browsers</a></li> <li class="active"><a href="#totals" data-hash="totals" data-toggle="tab">Totals</a></li>
<li><a href="#browsers_versions" data-toggle="hashchange">Versions</a></li> <li class="dropdown">
  <a href="#" class="dropdown-toggle" data-toggle="dropdown">Browsers
  <b class="caret"></b></a>
  <ul class="dropdown-menu">
  <li><a href="#browsers_names" data-hash="browsers_names" data-toggle="tab">Browsers</a></li>
  <li><a href="#browsers_versions" data-hash="browsers_versions" data-toggle="tab">Versions</a></li>
  </ul>
  </li>
  <li class="dropdown">
  <a href="#" class="dropdown-toggle" data-toggle="dropdown">Operating Systems
  <b class="caret"></b></a>
  <ul class="dropdown-menu">
  <li><a href="#os" data-hash="os" data-toggle="tab">Operating Systems</a></li>
  <li><a href="#os_versions" data-hash="os_versions" data-toggle="tab">Versions</a></li>
  </ul>
  </li>
  <li class="dropdown">
  <a href="#" class="dropdown-toggle" data-toggle="dropdown">Social
  <b class="caret"></b></a>
  <ul class="dropdown-menu">
  <li><a href="#social_networks" data-hash="social_networks" data-toggle="tab">All networks</a></li>
  <li><a href="#social_referrals_totals" data-hash="social_referrals_totals" data-toggle="tab">Referral links</a></li>
  </ul>
  </li>
  <li><a href="#languages" data-hash="languages" data-toggle="tab">Languages</a></li>
  <li><a href="#country" data-hash="country" data-toggle="tab">Country</a></li>
</ul> </ul>
</li> <div class="tab-content">
<li class="dropdown"> <div class="tab-pane active" id="totals">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Operating Systems <form class="form-inline" action="${h.url_for(controller='ckanext.ga_report.controller:GaReport',action='index')}" method="get">
<b class="caret"></b></a> <h4 class="ga-reports-heading">Show stats table for:</h4>
<ul class="dropdown-menu"> ${month_selector(c.month, c.months, c.day)}
<li><a href="#os" data-toggle="hashchange">Operating Systems</a></li> </form>
<li><a href="#os_versions" data-toggle="hashchange">Versions</a></li> <table class="ga-reports-table table table-condensed table-bordered table-striped">
</ul> <tr>
</li> <th>Name</th>
<li class="dropdown"> <th class="td-numeric">Value</th>
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Social <th>History</th>
<b class="caret"></b></a> </tr>
<ul class="dropdown-menu"> <py:for each="name, value, graph in c.global_totals">
<li><a href="#social_networks" data-toggle="hashchange">All networks</a></li> <tr>
<li><a href="#social_referrals_totals" data-toggle="hashchange">Referral links</a></li> <td>${name}</td>
</ul> <td class="td-numeric">${value}</td>
</li> <td class="sparkline-cell">
<li><a href="#languages" data-toggle="hashchange">Languages</a></li> <span class="sparkline" sparkTooltips="${','.join([x for x,y in graph])}">
<li><a href="#country" data-toggle="hashchange">Country</a></li> ${','.join([y for x,y in graph])}
</ul> </span>
<div class="tab-content"> </td>
<div class="tab-pane" id="totals"> </tr>
<table class="table table-condensed table-bordered table-striped"> </py:for>
<tr> </table>
<th>Name</th> </div>
<th>Value</th> <div class="tab-pane" id="browsers_versions">
<th>History</th> ${rickshaw_graph(c.browser_versions_graph,'browser-versions',mode='stack')}
</tr> <hr/>
<py:for each="name, value, graph in c.global_totals"> <p>Note: Where a browser has a large number of versions, these have been grouped together.</p>
<tr> <form class="form-inline" action="${h.url_for(controller='ckanext.ga_report.controller:GaReport',action='index')}" method="get">
<td>${name}</td> <h4 class="ga-reports-heading">Show stats table for:</h4>
<td>${value}</td> ${month_selector(c.month, c.months, c.day)}
<td class="sparkline-cell"> </form>
<span class="sparkline" sparkTooltips="${','.join([x for x,y in graph])}"> <hr/>
${','.join([y for x,y in graph])} ${stat_table(c.browser_versions)}
</span> </div>
</td> <div class="tab-pane" id="browsers_names">
</tr> ${rickshaw_graph(c.browsers_graph,'browsers',mode='stack')}
</py:for> <hr/>
</table> <form class="form-inline" action="${h.url_for(controller='ckanext.ga_report.controller:GaReport',action='index')}" method="get">
</div> <h4 class="ga-reports-heading">Show stats table for:</h4>
<div class="tab-pane" id="browsers_versions"> ${month_selector(c.month, c.months, c.day)}
${rickshaw_graph(c.browser_versions_graph,'browser-versions',mode='stack')} </form>
<p>Note: Where a browser has a large number of versions, these have been grouped together.</p> <hr/>
${stat_table(c.browser_versions)} ${stat_table(c.browsers)}
</div> </div>
<div class="tab-pane" id="browsers_names"> <div class="tab-pane" id="os">
${rickshaw_graph(c.browsers_graph,'browsers',mode='stack')} ${rickshaw_graph(c.os_graph,'os',mode='stack')}
${stat_table(c.browsers)} <hr/>
</div> <form class="form-inline" action="${h.url_for(controller='ckanext.ga_report.controller:GaReport',action='index')}" method="get">
<div class="tab-pane" id="os"> <h4 class="ga-reports-heading">Show stats table for:</h4>
${rickshaw_graph(c.os_graph,'os',mode='stack')} ${month_selector(c.month, c.months, c.day)}
${stat_table(c.os)} </form>
</div> <hr/>
<div class="tab-pane" id="os_versions"> ${stat_table(c.os)}
${rickshaw_graph(c.os_versions_graph,'os_versions',mode='stack')} </div>
${stat_table(c.os_versions)} <div class="tab-pane" id="os_versions">
</div> ${rickshaw_graph(c.os_versions_graph,'os_versions',mode='stack')}
<div class="tab-pane" id="social_referrals_totals"> <hr/>
<p>Number of visits that were referred from social networks</p> <form class="form-inline" action="${h.url_for(controller='ckanext.ga_report.controller:GaReport',action='index')}" method="get">
${social_table(c.social_referrer_totals)} <h4 class="ga-reports-heading">Show stats table for:</h4>
</div> ${month_selector(c.month, c.months, c.day)}
<div class="tab-pane" id="social_networks"> </form>
${rickshaw_graph(c.social_networks_graph, 'social_networks',mode='stack')} <hr/>
<p>Percentage of visits that were referred from these social networks</p> ${stat_table(c.os_versions)}
${stat_table(c.social_networks, 'Visits')} </div>
</div> <div class="tab-pane" id="social_referrals_totals">
<div class="tab-pane" id="languages"> <p>Number of visits that were referred from social networks</p>
${rickshaw_graph(c.languages_graph,'languages',mode='stack')} <form class="form-inline" action="${h.url_for(controller='ckanext.ga_report.controller:GaReport',action='index')}" method="get">
${stat_table(c.languages)} <h4 class="ga-reports-heading">Show stats table for:</h4>
</div> ${month_selector(c.month, c.months, c.day)}
<div class="tab-pane" id="country"> </form>
${rickshaw_graph(c.country_graph,'country',mode='stack')} ${social_table(c.social_referrer_totals)}
${stat_table(c.country)} </div>
</div> <div class="tab-pane" id="social_networks">
  ${rickshaw_graph(c.social_networks_graph, 'social_networks',mode='stack')}
  <hr/>
  <p>Percentage of visits that were referred from these social networks</p>
  <form class="form-inline" action="${h.url_for(controller='ckanext.ga_report.controller:GaReport',action='index')}" method="get">
  <h4 class="ga-reports-heading">Show stats table for:</h4>
  ${month_selector(c.month, c.months, c.day)}
  </form>
  <hr/>
  ${stat_table(c.social_networks, 'Visits')}
  </div>
  <div class="tab-pane" id="languages">
  ${rickshaw_graph(c.languages_graph,'languages',mode='stack')}
  <hr/>
  <form class="form-inline" action="${h.url_for(controller='ckanext.ga_report.controller:GaReport',action='index')}" method="get">
  <h4 class="ga-reports-heading">Show stats table for:</h4>
  ${month_selector(c.month, c.months, c.day)}
  </form>
  <hr/>
  ${stat_table(c.languages)}
  </div>
  <div class="tab-pane" id="country">
  ${rickshaw_graph(c.country_graph,'country',mode='stack')}
  <hr/>
  <form class="form-inline" action="${h.url_for(controller='ckanext.ga_report.controller:GaReport',action='index')}" method="get">
  <h4 class="ga-reports-heading">Show stats table for:</h4>
  ${month_selector(c.month, c.months, c.day)}
  </form>
  <hr/>
  ${stat_table(c.country)}
  </div>
  </div>
  </div>
</div> </div>
</div> </div>
  </div>
   
</div> </div>
   
   
<py:def function="optional_footer"> <py:def function="optional_footer">
<script type="text/javascript"> <script type="text/javascript">
$(function() { $(function() {
CKAN.GA_Reports.bind_sparklines(); CKAN.GA_Reports.bind_sparklines();
CKAN.GA_Reports.bind_sidebar(); CKAN.GA_Reports.bind_sidebar();
$(window).trigger('hashchange'); CKAN.GA_Reports.bind_month_selector();
}); });
</script> </script>
</py:def> </py:def>
   
<xi:include href="../../layout.html" /> <xi:include href="layout.html" />
</html> </html>