--- a/ckanext/ga_report/templates/ga_report/site/index.html +++ b/ckanext/ga_report/templates/ga_report/site/index.html @@ -3,30 +3,64 @@ xmlns:xi="http://www.w3.org/2001/XInclude" py:strip=""> - <py:def function="page_title">Site analytics</py:def> + <xi:include href="../ga_util.html" /> + + <py:def function="page_title">Site usage</py:def> + + <py:match path="primarysidebar"> + <li class="widget-container boxed widget_text"> + <h4>Download</h4> + <hr/> + <p><center> + <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> + </li> + <xi:include href="../notes.html" /> + + </py:match> <div py:match="content"> - <h1>Site statistics</h1> + <h1>Site Usage</h1> + ${usage_nav('Site-wide')} <form class="form-inline" action="${h.url_for(controller='ckanext.ga_report.controller:GaReport',action='index')}" method="get"> <div class="controls"> - <select name="month"> - <py:for each="val,desc in c.months"> - <option value='${val}' py:attrs="{'selected': 'selected' if c.month == val else None}">${desc}</option> - </py:for> - </select> - <input class="btn button" type='submit' value="Update"/> + + ${month_selector(c.month, c.months, c.day)} + + <input class="btn button btn-primary" type='submit' value="Update"/> </div> </form> - - <p><a href="${h.url_for(controller='ckanext.ga_report.controller:GaReport',action='csv',month=c.month)}">Export data</a> as CSV</p> <div class="tabbable"> <ul class="nav nav-tabs"> <li class="active"><a href="#totals" data-toggle="tab">Totals</a></li> - <li><a href="#browsers" data-toggle="tab">Browsers</a></li> - <li><a href="#os" data-toggle="tab">Operating Systems</a></li> - <li><a href="#social_networks" data-toggle="tab">Social Networks</a></li> + <li class="dropdown"> + <a href="#browsers" class="dropdown-toggle" data-toggle="dropdown">Browsers + <b class="caret"></b></a> + <ul class="dropdown-menu"> + <li><a href="#browsers_names" data-toggle="tab">Browsers</a></li> + <li><a href="#browsers_versions" data-toggle="tab">Versions</a></li> + </ul> + </li> + <li class="dropdown"> + <a href="#browsers" class="dropdown-toggle" data-toggle="dropdown">Operating<br/>Systems + <b class="caret"></b></a> + <ul class="dropdown-menu"> + <li><a href="#os" data-toggle="tab">Operating Systems</a></li> + <li><a href="#os_versions" data-toggle="tab">Versions</a></li> + </ul> + </li> + <li class="dropdown"> + <a href="#browsers" class="dropdown-toggle" data-toggle="dropdown">Social Networks + <b class="caret"></b></a> + <ul class="dropdown-menu"> + <li><a href="#social_networks" data-toggle="tab">All networks</a></li> + <li><a href="#social_referrals_totals" data-toggle="tab">Referral links</a></li> + </ul> + </li> + + <li><a href="#social_networks" data-toggle="tab"></a></li> <li><a href="#languages" data-toggle="tab">Languages</a></li> <li><a href="#country" data-toggle="tab">Country</a></li> </ul> @@ -45,75 +79,33 @@ </py:for> </table> </div> - <div class="tab-pane" id="browsers"> - <table class="table table-condensed table-bordered table-striped"> - <tr> - <th>Name</th> - <th>Value</th> - </tr> - <py:for each="name, value in c.browsers"> - <tr> - <td>${name}</td> - <td>${value}</td> - </tr> - </py:for> - </table> - </div> - <div class="tab-pane" id="os"> - <table class="table table-condensed table-bordered table-striped"> - <tr> - <th>Name</th> - <th>Value</th> - </tr> - <py:for each="name, value in c.os"> - <tr> - <td>${name}</td> - <td>${value}</td> - </tr> - </py:for> - </table> + <div class="tab-pane" id="browsers_versions"> + <p>Note: Where a browser has a large number of versions, these have been grouped together.</p> + ${stat_table(c.browser_versions)} + </div> + <div class="tab-pane" id="browsers_names"> + ${stat_table(c.browsers)} + </div> + <div class="tab-pane" id="os"> + ${stat_table(c.os)} + </div> + <div class="tab-pane" id="os_versions"> + ${stat_table(c.os_versions)} + </div> + <div class="tab-pane" id="social_referrals_totals"> + <p>Number of visits that were referred from social networks</p> + ${social_table(c.social_referrer_totals)} </div> <div class="tab-pane" id="social_networks"> - <table class="table table-condensed table-bordered table-striped"> - <tr> - <th>Name</th> - <th>Value</th> - </tr> - <py:for each="name, value in c.social_networks"> - <tr> - <td>${name}</td> - <td>${value}</td> - </tr> - </py:for> - </table> + <p>Percentage of visits that were referred from these social networks</p> + + ${stat_table(c.social_networks, 'Visits')} </div> <div class="tab-pane" id="languages"> - <table class="table table-condensed table-bordered table-striped"> - <tr> - <th>Name</th> - <th>Value</th> - </tr> - <py:for each="name, value in c.languages"> - <tr> - <td>${name}</td> - <td>${value}</td> - </tr> - </py:for> - </table> + ${stat_table(c.languages)} </div> <div class="tab-pane" id="country"> - <table class="table table-condensed table-bordered table-striped"> - <tr> - <th>Name</th> - <th>Value</th> - </tr> - <py:for each="name, value in c.country"> - <tr> - <td>${name}</td> - <td>${value}</td> - </tr> - </py:for> - </table> + ${stat_table(c.country)} </div> @@ -128,10 +120,12 @@ <py:def function="optional_footer"> <script type='text/javascript'> + $('.dropdown-toggle').dropdown(); $('.nav-tabs li a').click(function (e) { e.preventDefault(); $(this).tab('show'); }) + alert(window.location.hash); </script> </py:def> </html>