diff --git a/app/api/handlers/v1.py b/app/api/handlers/v1.py index 29c5bfa..fc2e490 100644 --- a/app/api/handlers/v1.py +++ b/app/api/handlers/v1.py @@ -131,7 +131,7 @@ class OpTimerHandler(BaseHandler): error_doc = {'ops': [{'startsIn': -1, 'eventID': 0, 'ownerName': '', 'eventDate': '', 'eventTitle': '
The EVE API calendar is unavailable
', 'duration': 0, 'isImportant': 0, 'eventText': 'Fuck CCP tbqh imho srsly', 'endsIn':-1, 'forumLink': ''}]} try: - cached_doc = CachedDocument.objects.api_query('/char/UpcomingCalendarEvents.xml.aspx', params, service="Optimer") + cached_doc = CachedDocument.objects.api_query('/char/UpcomingCalendarEvents.xml.aspx', params, timeout=10, service="Optimer") except DocumentRetrievalError: return error_doc dom = minidom.parseString(cached_doc.body.encode('utf-8')) diff --git a/app/eve_proxy/models.py b/app/eve_proxy/models.py index 61db6ec..e8e6f4f 100755 --- a/app/eve_proxy/models.py +++ b/app/eve_proxy/models.py @@ -39,7 +39,7 @@ class CachedDocumentManager(models.Manager): return url - def api_query(self, url_path, params={}, no_cache=False, exceptions=True, service="Auth"): + def api_query(self, url_path, params={}, no_cache=False, exceptions=True, timeout=30, service="Auth"): """ Transparently handles querying EVE API or retrieving the document from the cache. @@ -69,7 +69,7 @@ class CachedDocumentManager(models.Manager): if sys.version_info < (2, 6): conn = urllib2.urlopen(req) else: - conn = urllib2.urlopen(req, timeout=5) + conn = urllib2.urlopen(req, timeout=timeout) except urllib2.HTTPError, e: print "HTTP Error Code: %s" % e.code raise DocumentRetrievalError(e.code)