From cebca64e5e565140f164adfdf77e93b49f85ecf0 Mon Sep 17 00:00:00 2001 From: blitzmann Date: Sun, 5 Nov 2017 01:28:57 -0500 Subject: [PATCH] Fix CREST stuff --- gui/crestFittings.py | 6 ++++-- gui/mainFrame.py | 2 +- service/crest.py | 21 +++++++++++---------- service/server.py | 2 +- 4 files changed, 17 insertions(+), 14 deletions(-) diff --git a/gui/crestFittings.py b/gui/crestFittings.py index 82d49d101..968e5e18b 100644 --- a/gui/crestFittings.py +++ b/gui/crestFittings.py @@ -15,6 +15,7 @@ from gui.display import Display import gui.globalEvents as GE from logbook import Logger +import calendar pyfalog = Logger(__name__) if 'wxMac' not in wx.PlatformInfo or ('wxMac' in wx.PlatformInfo and wx.VERSION >= (3, 0)): @@ -112,7 +113,8 @@ class CrestFittings(wx.Frame): def updateCacheStatus(self, event): t = time.gmtime(self.cacheTime - time.time()) - if t < 0: + + if calendar.timegm(t) < 0: # calendar.timegm gets seconds until time given self.cacheTimer.Stop() else: sTime = time.strftime("%H:%M:%S", t) @@ -222,7 +224,7 @@ class ExportToEve(wx.Frame): self.mainFrame.Bind(GE.EVT_SSO_LOGIN, self.ssoLogin) self.Bind(wx.EVT_CLOSE, self.OnClose) - self.SetSizer(hSizer) + self.SetSizer(mainSizer) self.SetStatusBar(self.statusbar) self.Layout() diff --git a/gui/mainFrame.py b/gui/mainFrame.py index 61c012e72..d03d2fe76 100644 --- a/gui/mainFrame.py +++ b/gui/mainFrame.py @@ -614,7 +614,7 @@ class MainFrame(wx.Frame): char = sCrest.implicitCharacter if char: t = time.gmtime(char.eve.expires - time.time()) - sTime = time.strftime("%H:%M:%S", t if t >= 0 else 0) + sTime = time.strftime("%H:%M:%S", t) newTitle = "%s | %s - %s" % (self.title, char.name, sTime) self.SetTitle(newTitle) diff --git a/service/crest.py b/service/crest.py index 27f5b6c5e..ff1765298 100644 --- a/service/crest.py +++ b/service/crest.py @@ -75,14 +75,15 @@ class Crest(object): self.state = None self.ssoTimer = None + self.eve_options = { + 'client_id': self.settings.get('clientID') if self.settings.get('mode') == CrestModes.USER else self.clientIDs.get(self.settings.get('server')), + 'api_key': self.settings.get('clientSecret') if self.settings.get('mode') == CrestModes.USER else None, + 'redirect_uri': self.clientCallback, + 'testing': self.isTestServer + } + # Base EVE connection that is copied to all characters - self.eve = EVE( - client_id=self.settings.get('clientID') if self.settings.get( - 'mode') == CrestModes.USER else self.clientIDs.get(self.settings.get('server')), - api_key=self.settings.get('clientSecret') if self.settings.get('mode') == CrestModes.USER else None, - redirect_uri=self.clientCallback, - testing=self.isTestServer - ) + self.eve = EVE(**self.eve_options) self.implicitCharacter = None @@ -131,7 +132,7 @@ class Crest(object): char = eos.db.getCrestCharacter(charID) if char and not hasattr(char, "eve"): - char.eve = copy.deepcopy(self.eve) + char.eve = EVE(**self.eve_options) char.eve.temptoken_authorize(refresh_token=char.refresh_token) self.charCache[charID] = char return char @@ -188,7 +189,7 @@ class Crest(object): pyfalog.debug("Handling CREST login with: {0}", message) if 'access_token' in message: # implicit - eve = copy.deepcopy(self.eve) + eve = EVE(**self.eve_options) eve.temptoken_authorize( access_token=message['access_token'][0], expires_in=int(message['expires_in'][0]) @@ -207,7 +208,7 @@ class Crest(object): wx.PostEvent(self.mainFrame, GE.SsoLogin(type=CrestModes.IMPLICIT)) elif 'code' in message: - eve = copy.deepcopy(self.eve) + eve = EVE(**self.eve_options) eve.authorize(message['code'][0]) eve() info = eve.whoami() diff --git a/service/server.py b/service/server.py index 3f28c5cf2..76c5a964e 100644 --- a/service/server.py +++ b/service/server.py @@ -95,7 +95,7 @@ class AuthHandler(http.server.BaseHTTPRequestHandler): finally: self.send_response(200) self.end_headers() - self.wfile.write(HTML.format(msg)) + self.wfile.write(str.encode(HTML.format(msg))) if step2: # Only stop once if we've received something in the querystring