From 9246aed660e5f19dce7448a3e1884c798497b1bf Mon Sep 17 00:00:00 2001 From: Ross Scroggs Date: Fri, 29 Apr 2016 13:01:36 -0700 Subject: [PATCH] Print formatted permission on add/update drivefileacl instead of JSON data --- src/gam.py | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/src/gam.py b/src/gam.py index ceaabea3..b491e39c 100755 --- a/src/gam.py +++ b/src/gam.py @@ -3277,20 +3277,23 @@ def doDriveActivity(users): activity_attributes[0][an_item] = an_item output_csv(activity_attributes, activity_attributes[0], u'Drive Activity', todrive) +def printPermission(permission): + if u'name' in permission: + print convertUTF8(permission[u'name']) + elif (u'id' in permission) and (permission[u'id'] == u'anyone'): + print u'Anyone' + for key in permission: + if key in [u'name', u'kind', u'etag', u'selfLink',]: + continue + print u' %s: %s' % (key, permission[key]) + def showDriveFileACL(users): fileId = sys.argv[5] for user in users: drive = buildGAPIServiceObject(u'drive', user) feed = callGAPI(service=drive.permissions(), function=u'list', fileId=fileId) for permission in feed[u'items']: - try: - print convertUTF8(permission[u'name']) - except KeyError: - pass - for key in permission: - if key in [u'name', u'kind', u'etag', u'selfLink',]: - continue - print u' %s: %s' % (key, permission[key]) + printPermission(permission) print u'' def delDriveFileACL(users): @@ -3347,7 +3350,7 @@ def addDriveFileACL(users): for user in users: drive = buildGAPIServiceObject(u'drive', user) result = callGAPI(service=drive.permissions(), function=u'insert', fileId=fileId, sendNotificationEmails=sendNotificationEmails, emailMessage=emailMessage, body=body) - print result + printPermission(result) def updateDriveFileACL(users): fileId = sys.argv[5] @@ -3387,7 +3390,7 @@ def updateDriveFileACL(users): permissionId = callGAPI(service=drive.permissions(), function=u'getIdForEmail', email=permissionId, fields=u'id')[u'id'] print u'updating permissions for %s to file %s' % (permissionId, fileId) result = callGAPI(service=drive.permissions(), function=u'patch', fileId=fileId, permissionId=permissionId, transferOwnership=transferOwnership, body=body) - print result + printPermission(result) def showDriveFiles(users): files_attr = [{u'Owner': u'Owner',}]