More oauth
This commit is contained in:
15
cmdasana.py
15
cmdasana.py
@@ -6,6 +6,7 @@ import json
|
||||
|
||||
import urwid
|
||||
import asana
|
||||
from oauthlib.oauth2.rfc6749.errors import TokenExpiredError
|
||||
|
||||
import ui
|
||||
from secrets import CLIENT_ID, CLIENT_SECRET
|
||||
@@ -21,6 +22,18 @@ class CmdAsana:
|
||||
token=token
|
||||
)
|
||||
except IOError:
|
||||
self.getToken()
|
||||
|
||||
try:
|
||||
self.me = self.client.users.me()
|
||||
except TokenExpiredError:
|
||||
token = self.client.session.fetch_token(code=token['refresh_token'])
|
||||
f = open('.oauth', 'w')
|
||||
f.write(json.dumps(token))
|
||||
f.close()
|
||||
self.me = self.client.users.me()
|
||||
|
||||
def getToken(self):
|
||||
self.client = asana.Client.oauth(
|
||||
client_id=CLIENT_ID,
|
||||
client_secret=CLIENT_SECRET,
|
||||
@@ -40,8 +53,6 @@ class CmdAsana:
|
||||
f.write(json.dumps(token))
|
||||
f.close()
|
||||
|
||||
self.me = self.client.users.me()
|
||||
|
||||
def myWorkspaces(self):
|
||||
return self.me['workspaces']
|
||||
|
||||
|
||||
Reference in New Issue
Block a user