Misplaced return, how was this running
[ckanext-ga-report.git] / ckanext / ga_report / download_analytics.py
blob:a/ckanext/ga_report/download_analytics.py -> blob:b/ckanext/ga_report/download_analytics.py
--- a/ckanext/ga_report/download_analytics.py
+++ b/ckanext/ga_report/download_analytics.py
@@ -193,10 +193,6 @@
         # Supported query params at
         # https://developers.google.com/analytics/devguides/reporting/core/v3/reference
         try:
-            # Because of issues of invalid responses, we are going to make these requests
-            # ourselves.
-            headers = {'authorization': 'Bearer ' + self.token}
-
             args = {}
             args["sort"] = "-ga:pageviews"
             args["max-results"] = 100000
@@ -208,16 +204,11 @@
             args["filters"] = query
             args["alt"] = "json"
 
-            r = requests.get("https://www.googleapis.com/analytics/v3/data/ga", params=args, headers=headers)
-            if r.status_code != 200:
-              raise Exception("Request with params: %s failed" % args)
-
-            results = json.loads(r.content)
-            print len(results.keys())
-        except Exception, e:
-            log.exception(e)
-            #return dict(url=[])
-            raise e
+            results = self._get_json(args)
+
+        except Exception, e:
+            log.exception(e)
+            return dict(url=[])
 
         packages = []
         log.info("There are %d results" % results['totalResults'])
@@ -264,8 +255,9 @@
                 'Google Analytics token file under key: googleanalytics.token.filepath'
             return
 
-        try:
-            log.info("Trying to refresh our OAuth token")
+        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:
@@ -277,9 +269,9 @@
             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: