Skip to content

Commit

Permalink
Merge pull request #21 from matallen/master
Browse files Browse the repository at this point in the history
enhancement to reduce the number of calls to the trello api
  • Loading branch information
sabre1041 authored Nov 8, 2018
2 parents 53c4383 + da00e6a commit 3aac6b2
Showing 1 changed file with 9 additions and 4 deletions.
13 changes: 9 additions & 4 deletions trello-stats.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ def search_cards(session, org_id, days, author):

query = TRELLO_SEARCH_QUERY.format(days, author)

card_request = session.get("https://api.trello.com/1/search", params={'query': query, 'idOrganizations': org_id, 'card_fields': 'name,idMembers,idLabels', 'board_fields': 'name,idOrganization', 'card_board': 'true', 'cards_limit': 1000})
card_request = session.get("https://api.trello.com/1/search", params={'query': query, 'idOrganizations': org_id, 'card_fields': 'name,idMembers,idLabels,shortLink', 'board_fields': 'name,idOrganization', 'card_board': 'true', 'cards_limit': 1000})
card_request.raise_for_status()

return card_request.json()
Expand All @@ -59,9 +59,6 @@ def get_member(session, member_id):

return memberCache.get(member_id)

# member_request = session.get("https://api.trello.com/1/members/{0}".format(member_id))
# member_request.raise_for_status()
# return member_request.json()

def plural_items(text, obj):
if obj is not None and (isinstance(obj, collections.Iterable) and len(obj) == 1) or obj == 1:
Expand All @@ -83,6 +80,12 @@ def encode_text(text):

return text

def preload_member_cache(session, org_id):
members = session.get("https://api.trello.com/1/organizations/{0}/members".format(org_id))
members.raise_for_status()
for member in members.json():
memberCache[member['id']]=member


trello_api_key = os.environ.get(TRELLO_API_KEY_NAME)
trello_api_token = os.environ.get(TRELLO_API_TOKEN_NAME)
Expand Down Expand Up @@ -122,6 +125,8 @@ def encode_text(text):
cards = {}
members_items = {}

preload_member_cache(session, org_id)

for card in resp_cards['cards']:

if not card['board']['idOrganization'] or card['board']['idOrganization'] != org_id:
Expand Down

0 comments on commit 3aac6b2

Please sign in to comment.