Changes to fix some issues around bounces and presentation
--- a/ckanext/ga_report/command.py
+++ b/ckanext/ga_report/command.py
@@ -80,7 +80,7 @@
default=False,
dest='delete_first',
help='Delete data for the period first')
- self.parser.add_option('-s', '--slip_url_stats',
+ self.parser.add_option('-s', '--skip_url_stats',
action='store_true',
default=False,
dest='skip_url_stats',
--- a/ckanext/ga_report/controller.py
+++ b/ckanext/ga_report/controller.py
@@ -71,13 +71,13 @@
entries = q.order_by('ga_stat.key').all()
def clean_key(key, val):
- if key in ['Average time on site', 'Pages per visit', 'New visits', 'Bounces']:
+ if key in ['Average time on site', 'Pages per visit', 'New visits', 'Bounce rate (home page)']:
val = "%.2f" % round(float(val), 2)
if key == 'Average time on site':
mins, secs = divmod(float(val), 60)
hours, mins = divmod(mins, 60)
val = '%02d:%02d:%02d (%s seconds) ' % (hours, mins, secs, val)
- if key in ['New visits','Bounces']:
+ if key in ['New visits','Bounce rate (home page)']:
val = "%s%%" % val
if key in ['Total page views', 'Total visits']:
val = int(val)
@@ -312,7 +312,7 @@
and package_id <> ''
and url like '/dataset/%%'
and period_name=%s
- group by department_id order by visits desc
+ group by department_id order by views desc
"""
if limit:
q = q + " limit %s;" % (limit)
--- a/ckanext/ga_report/download_analytics.py
+++ b/ckanext/ga_report/download_analytics.py
@@ -253,7 +253,7 @@
max_results=10000,
end_date=end_date).execute()
result_data = results.get('rows')
- if len(result_data) != 1:
+ if not result_data or len(result_data) != 1:
log.error('Could not pinpoint the bounces for path: %s. Got results: %r',
path, result_data)
return
@@ -261,7 +261,7 @@
bounces, total = [float(x) for x in result_data[0][1:]]
pct = 100 * bounces/total
log.info('%d bounces from %d total == %s', bounces, total, pct)
- ga_model.update_sitewide_stats(period_name, "Totals", {'Bounce rate': pct})
+ ga_model.update_sitewide_stats(period_name, "Totals", {'Bounce rate (home page)': pct})
def _locale_stats(self, start_date, end_date, period_name):
--- a/ckanext/ga_report/templates/ga_report/publisher/index.html
+++ b/ckanext/ga_report/templates/ga_report/publisher/index.html
@@ -41,14 +41,14 @@
<table class="table table-condensed table-bordered table-striped">
<tr>
<th>Publisher</th>
- <th>Dataset Visits</th>
+<!-- <th>Dataset Visits</th>-->
<th>Dataset Views</th>
</tr>
<py:for each="publisher, views, visits in c.top_publishers">
<tr>
<td>${h.link_to(publisher.title, h.url_for(controller='ckanext.ga_report.controller:GaDatasetReport', action='read_publisher', id=publisher.name))}
</td>
- <td>${visits}</td>
+<!-- <td>${visits}</td> -->
<td>${views}</td>
</tr>
</py:for>
--- a/ckanext/ga_report/templates/ga_report/publisher/read.html
+++ b/ckanext/ga_report/templates/ga_report/publisher/read.html
@@ -47,14 +47,14 @@
<table py:if="c.top_packages" class="table table-condensed table-bordered table-striped">
<tr>
<th>Dataset</th>
- <th>Visits</th>
+<!-- <th>Visits</th> -->
<th>Views</th>
</tr>
<py:for each="package, views, visits in c.top_packages">
<tr>
<td>${h.link_to(package.title or package.name, h.url_for(controller='package', action='read', id=package.name))}
</td>
- <td>${visits}</td>
+<!-- <td>${visits}</td> -->
<td>${views}</td>
</tr>
</py:for>