From: Ross Jones Date: Tue, 29 Oct 2013 14:14:31 +0000 Subject: Horribly hacky links to publishers and datasets, nobody tell Tom X-Git-Url: http://maxious.lambdacomplex.org/git/?p=ckanext-ga-report.git&a=commitdiff&h=d3083fe203dda56ad8476236bd5d51ddd7370fac --- Horribly hacky links to publishers and datasets, nobody tell Tom --- --- a/ckanext/ga_report/download_analytics.py +++ b/ckanext/ga_report/download_analytics.py @@ -258,32 +258,37 @@ return data def _get_json(self, params, prev_fail=False): - ga_token_filepath = os.path.expanduser(config.get('googleanalytics.token.filepath', '')) - if not ga_token_filepath: - print 'ERROR: In the CKAN config you need to specify the filepath of the ' \ - 'Google Analytics token file under key: googleanalytics.token.filepath' - return - - log.info("Trying to refresh our OAuth token") - try: - from ga_auth import init_service - self.token, svc = init_service(ga_token_filepath, None) - log.info("OAuth token refreshed") - except Exception, auth_exception: - log.error("Oauth refresh failed") - log.exception(auth_exception) - return - - try: + if prev_fail: + import os + ga_token_filepath = os.path.expanduser(config.get('googleanalytics.token.filepath', '')) + if not ga_token_filepath: + print 'ERROR: In the CKAN config you need to specify the filepath of the ' \ + 'Google Analytics token file under key: googleanalytics.token.filepath' + return + + try: + self.token, svc = init_service(ga_token_filepath, None) + except TypeError: + print ('Have you correctly run the getauthtoken task and ' + 'specified the correct token file in the CKAN config under ' + '"googleanalytics.token.filepath"?') + + try: + # Because of issues of invalid responses, we are going to make these requests + # ourselves. headers = {'authorization': 'Bearer ' + self.token} r = requests.get("https://www.googleapis.com/analytics/v3/data/ga", params=params, headers=headers) if r.status_code != 200: - log.info("STATUS: %s" % (r.status_code,)) - log.info("CONTENT: %s" % (r.content,)) - raise Exception("Request with params: %s failed" % params) + log.info("STATUS: %s" % (r.status_code,)) + log.info("CONTENT: %s" % (r.content,)) + raise Exception("Request with params: %s failed" % params) return json.loads(r.content) except Exception, e: + if not prev_fail: + print e + results = self._get_json(self, params, prev_fail=True) + else: log.exception(e) return dict(url=[]) --- a/ckanext/ga_report/templates/ga_report/ga_util.html +++ b/ckanext/ga_report/templates/ga_report/ga_util.html @@ -70,7 +70,6 @@
-

Download

@@ -92,7 +91,7 @@
  • The results are not shown when the number of views/visits is tiny. Where these relate to site pages, results are available in full in the CSV download. Where these relate to users' web browser information, results are not disclosed, for privacy reasons.
  • -
    +
    --- a/ckanext/ga_report/templates/ga_report/publisher/index.html +++ b/ckanext/ga_report/templates/ga_report/publisher/index.html @@ -8,10 +8,9 @@ Usage by Publisher - - + ${ga_sidebar(download_link=h.url_for(controller='ckanext.ga_report.controller:GaDatasetReport',action='publisher_csv',month=c.month or 'all'))} - + @@ -25,9 +24,23 @@ - Site Usage ${usage_nav('Publishers')} + + +
  • Site Analytics
  • +
  • Publishers
  • +
    + +
    + +

    + Site-wide + | + Publishers + | + Datasets +

    --- a/ckanext/ga_report/templates/ga_report/publisher/read.html +++ b/ckanext/ga_report/templates/ga_report/publisher/read.html @@ -19,12 +19,27 @@ - + ${ga_sidebar(download_link=h.url_for(controller='ckanext.ga_report.controller:GaDatasetReport',action='dataset_csv',id=c.publisher_name or 'all',month=c.month or 'all'))} + + + +
  • Site Analytics
  • +
  • Datasets
  • +
  • ${c.publisher.title}
  • - Site Usage ${usage_nav('Datasets')} + +
    +

    + Site-wide + | + Publishers + | + Datasets +

    +

    ${c.publisher.title}

    --- a/ckanext/ga_report/templates/ga_report/site/downloads.html +++ b/ckanext/ga_report/templates/ga_report/site/downloads.html @@ -7,9 +7,9 @@ Downloads - + ${ga_sidebar(download_link=h.url_for(controller='ckanext.ga_report.controller:GaReport',action='csv_downloads',month=c.month or 'all'))} - + Downloads ${usage_nav('Downloads')}
    --- a/ckanext/ga_report/templates/ga_report/site/index.html +++ b/ckanext/ga_report/templates/ga_report/site/index.html @@ -19,13 +19,26 @@ - + ${ga_sidebar(download_link=h.url_for(controller='ckanext.ga_report.controller:GaReport',action='csv',month=c.month or 'all'))} + + + + +
  • Site Analytics
  • +
  • Site-wide
  • - Site Usage ${usage_nav('Site-wide')}
    + +

    + Site-wide + | + Publishers + | + Datasets +