Cleanup handling sorted CSV titles

This commit is contained in:
Ross Scroggs
2016-05-13 08:51:55 -07:00
parent 8db8c48fd9
commit f6396d5e4a

View File

@ -1105,7 +1105,7 @@ def showReport():
startTime=startTime, endTime=endTime, eventName=eventName, filters=filters) startTime=startTime, endTime=endTime, eventName=eventName, filters=filters)
if len(activities) > 0: if len(activities) > 0:
attrs = [] attrs = []
titles = [] titles = [u'name']
for activity in activities: for activity in activities:
events = activity[u'events'] events = activity[u'events']
del activity[u'events'] del activity[u'events']
@ -1117,13 +1117,7 @@ def showReport():
if item not in titles: if item not in titles:
titles.append(item) titles.append(item)
attrs.append(row) attrs.append(row)
header = {} addSortedTitlesToCSV(attrs, u'name', titles)
titles.remove(u'name')
titles = sorted(titles)
titles.insert(0, u'name')
for title in titles:
header[title] = title
attrs.insert(0, header)
cap_report = u'%s%s' % (report[0].upper(), report[1:]) cap_report = u'%s%s' % (report[0].upper(), report[1:])
output_csv(attrs, titles, u'%s Activity Report' % cap_report, to_drive) output_csv(attrs, titles, u'%s Activity Report' % cap_report, to_drive)
@ -4716,13 +4710,7 @@ def showGmailProfile(users):
if item not in titles: if item not in titles:
titles.append(item) titles.append(item)
profiles.append(results) profiles.append(results)
titles.remove(u'emailAddress') addSortedTitlesToCSV(profiles, u'emailAddress', titles)
titles = sorted(titles)
titles = [u'emailAddress'] + titles
header = {}
for title in titles:
header[title] = title
profiles.insert(0, header)
output_csv(profiles, titles, list_type=u'Gmail Profiles', todrive=todrive) output_csv(profiles, titles, list_type=u'Gmail Profiles', todrive=todrive)
def showGplusProfile(users): def showGplusProfile(users):
@ -4749,13 +4737,7 @@ def showGplusProfile(users):
for item in results: for item in results:
if item not in titles: if item not in titles:
titles.append(item) titles.append(item)
titles.remove(u'id') addSortedTitlesToCSV(profiles, u'id', titles)
titles = sorted(titles)
titles = [u'id'] + titles
header = {}
for title in titles:
header[title] = title
profiles.insert(0, header)
output_csv(profiles, titles, list_type=u'Gplus Profiles', todrive=todrive) output_csv(profiles, titles, list_type=u'Gplus Profiles', todrive=todrive)
def updateLabels(users): def updateLabels(users):
@ -7415,6 +7397,16 @@ def doDeleteOrg():
print u"Deleting organization %s" % name print u"Deleting organization %s" % name
callGAPI(cd.orgunits(), u'delete', customerId=GC_Values[GC_CUSTOMER_ID], orgUnitPath=name) callGAPI(cd.orgunits(), u'delete', customerId=GC_Values[GC_CUSTOMER_ID], orgUnitPath=name)
def addSortedTitlesToCSV(csv_list, firstTitle, titles):
if firstTitle in titles:
titles.remove(firstTitle)
titles.sort()
titles.insert(0, firstTitle)
header = {}
for title in titles:
header[title] = title
csv_list.insert(0, header)
def output_csv(csv_list, titles, list_type, todrive): def output_csv(csv_list, titles, list_type, todrive):
csv.register_dialect(u'nixstdout', lineterminator=u'\n') csv.register_dialect(u'nixstdout', lineterminator=u'\n')
if todrive: if todrive:
@ -7620,13 +7612,7 @@ def doPrintUsers():
for item in attributes[-1]: for item in attributes[-1]:
if item not in titles: if item not in titles:
titles.append(item) titles.append(item)
titles.remove(u'primaryEmail') addSortedTitlesToCSV(attributes, u'primaryEmail', titles)
titles = sorted(titles)
titles = [u'primaryEmail'] + titles
header = {}
for title in titles:
header[title] = title
attributes.insert(0, header)
if getGroupFeed: if getGroupFeed:
total_users = len(attributes) - 1 total_users = len(attributes) - 1
user_count = 1 user_count = 1