mirror of
https://github.com/GAM-team/GAM.git
synced 2026-07-03 12:21:35 +00:00
Merge branch 'master' of https://github.com/jay0lee/GAM
This commit is contained in:
@@ -84,7 +84,7 @@ Named items
|
|||||||
<CrOSItem> ::= <CrOSID>|(query:<QueryCrOS>)
|
<CrOSItem> ::= <CrOSID>|(query:<QueryCrOS>)
|
||||||
<DestEmailAddress> ::= <EmailAddress>
|
<DestEmailAddress> ::= <EmailAddress>
|
||||||
<DomainAlias> ::= <String>
|
<DomainAlias> ::= <String>
|
||||||
<DriveFileACLRole> :: =commenter|editor|owner|reader|writer
|
<DriveFileACLRole> :: =commenter|editor|organizer|owner|reader|writer
|
||||||
<DriveFileID> ::= <String>
|
<DriveFileID> ::= <String>
|
||||||
<DriveFileURL> :: = https://docs.google.com/a/<DomainName>/document/d/<DriveFileID>/<String>
|
<DriveFileURL> :: = https://docs.google.com/a/<DomainName>/document/d/<DriveFileID>/<String>
|
||||||
<DriveFileItem> ::= <DriveFileID>|<DriveFileURL>
|
<DriveFileItem> ::= <DriveFileID>|<DriveFileURL>
|
||||||
@@ -784,9 +784,9 @@ gam <UserTypeEntity> delete|del emptydrivefolders
|
|||||||
gam <UserTypeEntity> empty drivetrash
|
gam <UserTypeEntity> empty drivetrash
|
||||||
|
|
||||||
gam <UserTypeEntity> add drivefileacl <DriveFileID> anyone|(user <UserItem>)|(group <GroupItem>)|(domain <DomainName>)
|
gam <UserTypeEntity> add drivefileacl <DriveFileID> anyone|(user <UserItem>)|(group <GroupItem>)|(domain <DomainName>)
|
||||||
(role <DriveFileACLRole>) [withlink] [sendemail] [emailmessage <String>]
|
(role <DriveFileACLRole>) [withlink|discoverable] [sendemail] [emailmessage <String>]
|
||||||
gam <UserTypeEntity> update drivefileacl <DriveFileID> <PermissionID>
|
gam <UserTypeEntity> update drivefileacl <DriveFileID> <PermissionID>
|
||||||
(role <DriveFileACLRole>) [withlink] [transferownership <Boolean>]
|
(role <DriveFileACLRole>) [withlink|discoverable] [removeexpiration]
|
||||||
gam <UserTypeEntity> delete|del drivefileacl <DriveFileID> <PermissionID>
|
gam <UserTypeEntity> delete|del drivefileacl <DriveFileID> <PermissionID>
|
||||||
gam <UserTypeEntity> show drivefileacl <DriveFileID>
|
gam <UserTypeEntity> show drivefileacl <DriveFileID>
|
||||||
|
|
||||||
|
|||||||
26
src/gam.py
26
src/gam.py
@@ -155,7 +155,7 @@ def getString(i, item, emptyOK=False, optional=False):
|
|||||||
return u''
|
return u''
|
||||||
print u'ERROR: expected a Non-empty <{0}>'.format(item)
|
print u'ERROR: expected a Non-empty <{0}>'.format(item)
|
||||||
sys.exit(2)
|
sys.exit(2)
|
||||||
elif optional:
|
elif optional:
|
||||||
return u''
|
return u''
|
||||||
print u'ERROR: expected a <{0}>'.format(item)
|
print u'ERROR: expected a <{0}>'.format(item)
|
||||||
sys.exit(2)
|
sys.exit(2)
|
||||||
@@ -3443,7 +3443,7 @@ def printDriveSettings(users):
|
|||||||
else:
|
else:
|
||||||
print u'ERROR: %s is not a valid argument for "gam <users> show drivesettings"' % sys.argv[i]
|
print u'ERROR: %s is not a valid argument for "gam <users> show drivesettings"' % sys.argv[i]
|
||||||
sys.exit(2)
|
sys.exit(2)
|
||||||
dont_show = [u'kind', u'selfLink', u'exportFormats', u'importFormats', u'maxUploadSizes', u'additionalRoleInfo', u'etag', u'features', u'user', u'isCurrentAppInstalled']
|
dont_show = [u'kind', u'exportFormats', u'importFormats', u'maxUploadSize', u'maxImportSizes', u'user', u'appInstalled']
|
||||||
csvRows = []
|
csvRows = []
|
||||||
titles = [u'email',]
|
titles = [u'email',]
|
||||||
i = 0
|
i = 0
|
||||||
@@ -3461,13 +3461,11 @@ def printDriveSettings(users):
|
|||||||
for setting in feed:
|
for setting in feed:
|
||||||
if setting in dont_show:
|
if setting in dont_show:
|
||||||
continue
|
continue
|
||||||
if setting == u'quotaBytesByService':
|
if setting == u'storageQuota':
|
||||||
for subsetting in feed[setting]:
|
for subsetting, value in feed[setting].iteritems():
|
||||||
my_name = subsetting[u'serviceName']
|
row[subsetting] = u'%smb' % (int(value) / 1024 / 1024)
|
||||||
my_bytes = int(subsetting[u'bytesUsed'])
|
if subsetting not in titles:
|
||||||
row[my_name] = u'%smb' % (my_bytes / 1024 / 1024)
|
titles.append(subsetting)
|
||||||
if my_name not in titles:
|
|
||||||
titles.append(my_name)
|
|
||||||
continue
|
continue
|
||||||
row[setting] = feed[setting]
|
row[setting] = feed[setting]
|
||||||
if setting not in titles:
|
if setting not in titles:
|
||||||
@@ -3639,10 +3637,12 @@ def updateDriveFileACL(users):
|
|||||||
i += 1
|
i += 1
|
||||||
elif sys.argv[i].lower() == u'role':
|
elif sys.argv[i].lower() == u'role':
|
||||||
body[u'role'] = sys.argv[i+1]
|
body[u'role'] = sys.argv[i+1]
|
||||||
if body[u'role'] not in [u'reader', u'commenter', u'writer', u'owner']:
|
if body[u'role'] not in [u'reader', u'commenter', u'writer', u'owner', u'organizer', u'editor']:
|
||||||
print u'ERROR: role must be reader, commenter, writer or owner; got %s' % body[u'role']
|
print u'ERROR: role must be reader, commenter, writer, organizer, or owner; got %s' % body[u'role']
|
||||||
sys.exit(2)
|
sys.exit(2)
|
||||||
if body[u'role'] == u'owner':
|
if body[u'role'] == u'editor':
|
||||||
|
body[u'role'] = u'writer'
|
||||||
|
elif body[u'role'] == u'owner':
|
||||||
transferOwnership = True
|
transferOwnership = True
|
||||||
i += 2
|
i += 2
|
||||||
else:
|
else:
|
||||||
@@ -3654,7 +3654,7 @@ def updateDriveFileACL(users):
|
|||||||
continue
|
continue
|
||||||
print u'updating permissions for %s to file %s' % (permissionId, fileId)
|
print u'updating permissions for %s to file %s' % (permissionId, fileId)
|
||||||
result = callGAPI(drive.permissions(), u'update', fields=u'*',
|
result = callGAPI(drive.permissions(), u'update', fields=u'*',
|
||||||
fileId=fileId, permissionId=permissionId,
|
fileId=fileId, permissionId=permissionId, removeExpiration=removeExpiration,
|
||||||
transferOwnership=transferOwnership, body=body,
|
transferOwnership=transferOwnership, body=body,
|
||||||
supportsTeamDrives=True)
|
supportsTeamDrives=True)
|
||||||
printPermission(result)
|
printPermission(result)
|
||||||
|
|||||||
Reference in New Issue
Block a user