From 7b6673b43b2b1d3559406e4f53837dba2130558f Mon Sep 17 00:00:00 2001 From: Ross Scroggs Date: Fri, 6 Oct 2023 10:42:17 -0700 Subject: [PATCH] Fixed bug in `redirect csv - todrive tdtitle "File Title" tdsheettitle "Sheet Title"` where "Sheet Title" was not assigned to the new sheet. --- docs/GamUpdates.md | 5 +++++ docs/How-to-Upgrade-from-Standard-GAM.md | 4 ++-- docs/Version-and-Help.md | 12 ++++++------ src/GamUpdate.txt | 5 +++++ src/gam/__init__.py | 17 ++++++++--------- 5 files changed, 26 insertions(+), 17 deletions(-) diff --git a/docs/GamUpdates.md b/docs/GamUpdates.md index d7726db0..ae62914c 100644 --- a/docs/GamUpdates.md +++ b/docs/GamUpdates.md @@ -10,6 +10,11 @@ Add the `-s` option to the end of the above commands to suppress creating the `g See [Downloads](https://github.com/taers232c/GAMADV-XTD3/wiki/Downloads) for Windows or other options, including manual installation. +### 6.64.08 + +Fixed bug in `redirect csv - todrive tdtitle "File Title" tdsheettitle "Sheet Title"` where +"Sheet Title" was not assigned to the new sheet. + ### 6.64.07 Updated `gam move drivefile` to handle the following error: diff --git a/docs/How-to-Upgrade-from-Standard-GAM.md b/docs/How-to-Upgrade-from-Standard-GAM.md index 548b8db2..f126137e 100644 --- a/docs/How-to-Upgrade-from-Standard-GAM.md +++ b/docs/How-to-Upgrade-from-Standard-GAM.md @@ -334,7 +334,7 @@ writes the credentials into the file oauth2.txt. admin@server:/Users/admin/bin/gamadv-xtd3$ rm -f /Users/admin/GAMConfig/oauth2.txt admin@server:/Users/admin/bin/gamadv-xtd3$ ./gam version WARNING: Config File: /Users/admin/GAMConfig/gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: /Users/admin/GAMConfig/oauth2.txt, Not Found -GAMADV-XTD3 6.64.07 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.64.08 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.10.8 64-bit final MacOS High Sierra 10.13.6 x86_64 @@ -984,7 +984,7 @@ writes the credentials into the file oauth2.txt. C:\GAMADV-XTD3>del C:\GAMConfig\oauth2.txt C:\GAMADV-XTD3>gam version WARNING: Config File: C:\GAMConfig\gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: C:\GAMConfig\oauth2.txt, Not Found -GAMADV-XTD3 6.64.07 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.64.08 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.11.5 64-bit final Windows-10-10.0.17134 AMD64 diff --git a/docs/Version-and-Help.md b/docs/Version-and-Help.md index 8f04cf43..670c292f 100644 --- a/docs/Version-and-Help.md +++ b/docs/Version-and-Help.md @@ -4,7 +4,7 @@ Print the current version of Gam with details ``` gam version -GAMADV-XTD3 6.64.07 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.64.08 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.11.5 64-bit final MacOS Monterey 12.6.6 x86_64 @@ -16,7 +16,7 @@ Time: 2023-06-02T21:10:00-07:00 Print the current version of Gam with details and time offset information ``` gam version timeoffset -GAMADV-XTD3 6.64.07 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.64.08 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.11.5 64-bit final MacOS Monterey 12.6.6 x86_64 @@ -28,7 +28,7 @@ Your system time differs from www.googleapis.com by less than 1 second Print the current version of Gam with extended details and SSL information ``` gam version extended -GAMADV-XTD3 6.64.07 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.64.08 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.11.5 64-bit final MacOS Monterey 12.6.6 x86_64 @@ -65,7 +65,7 @@ MacOS High Sierra 10.13.6 x86_64 Path: /Users/Admin/bin/gamadv-xtd3 Version Check: Current: 5.35.08 - Latest: 6.64.07 + Latest: 6.64.08 echo $? 1 ``` @@ -73,7 +73,7 @@ echo $? Print the current version number without details ``` gam version simple -6.64.07 +6.64.08 ``` In Linux/MacOS you can do: ``` @@ -83,7 +83,7 @@ echo $VER Print the current version of Gam and address of this Wiki ``` gam help -GAM 6.64.07 - https://github.com/taers232c/GAMADV-XTD3 +GAM 6.64.08 - https://github.com/taers232c/GAMADV-XTD3 Ross Scroggs Python 3.11.5 64-bit final MacOS Monterey 12.6.6 x86_64 diff --git a/src/GamUpdate.txt b/src/GamUpdate.txt index 0f0f50b9..2421f8d6 100644 --- a/src/GamUpdate.txt +++ b/src/GamUpdate.txt @@ -1,3 +1,8 @@ +6.64.08 + +Fixed bug in `redirect csv - todrive tdtitle "File Title" tdsheettitle "Sheet Title"` where +"Sheet Title" was not assigned to the new sheet. + 6.64.07 Updated `gam move drivefile` to handle the following error: diff --git a/src/gam/__init__.py b/src/gam/__init__.py index 4166ca2a..99dd66cc 100755 --- a/src/gam/__init__.py +++ b/src/gam/__init__.py @@ -8320,7 +8320,7 @@ class CSVPrintFile(): user = self.todrive['user'] drive = buildGAPIObject(API.DRIVE3) importSize = csvFile.tell() -# Update sheet +# Add/Update sheet try: if self.todrive['addsheet'] or self.todrive['updatesheet']: Act.Set(Act.CREATE if self.todrive['addsheet'] else Act.UPDATE) @@ -8455,6 +8455,7 @@ class CSVPrintFile(): body=body, media_body=googleapiclient.http.MediaIoBaseUpload(io.BytesIO(csvFile.getvalue().encode()), mimetype='text/csv', resumable=True), fields=fields, supportsAllDrives=True) + spreadsheetId = result['id'] except GAPI.internalError as e: entityActionFailedWarning([Ent.DRIVE_FILE, body['name']], Msg.UPLOAD_CSV_FILE_INTERNAL_ERROR.format(str(e), str(numRows))) closeFile(csvFile) @@ -8466,7 +8467,7 @@ class CSVPrintFile(): callGAPI(drive.permissions(), 'create', bailOnInternalError=True, throwReasons=GAPI.DRIVE_ACCESS_THROW_REASONS+GAPI.DRIVE3_CREATE_ACL_THROW_REASONS, - fileId=result['id'], sendNotificationEmail=False, body=self.todrive['share'], fields='', supportsAllDrives=True) + fileId=spreadsheetId, sendNotificationEmail=False, body=self.todrive['share'], fields='', supportsAllDrives=True) entityActionPerformed([Ent.USER, user, Ent.SPREADSHEET, title, Ent.TARGET_USER, self.todrive['share']['emailAddress'], Ent.ROLE, self.todrive['share']['role']]) except (GAPI.badRequest, GAPI.invalid, GAPI.fileNotFound, GAPI.forbidden, GAPI.internalError, @@ -8487,24 +8488,22 @@ class CSVPrintFile(): str(e)) if ((result['mimeType'] == MIMETYPE_GA_SPREADSHEET) and (self.todrive['sheetEntity'] or self.todrive['locale'] or self.todrive['timeZone'] or - self.todrive['cellwrap'] or self.todrive['cellnumberformat'])): + self.todrive['sheettitle'] or self.todrive['cellwrap'] or self.todrive['cellnumberformat'])): if not GC.Values[GC.TODRIVE_CLIENTACCESS]: _, sheet = buildGAPIServiceObject(API.SHEETSTD, user) if sheet is None: return else: sheet = buildGAPIObject(API.SHEETS) - spreadsheetId = result['id'] try: body = {'requests': []} - if self.todrive['sheetEntity'] or self.todrive['cellwrap']: + if self.todrive['sheetEntity'] or self.todrive['sheettitle'] or self.todrive['cellwrap']: spreadsheet = callGAPI(sheet.spreadsheets(), 'get', throwReasons=GAPI.SHEETS_ACCESS_THROW_REASONS, spreadsheetId=spreadsheetId, fields='sheets/properties') - if self.todrive['sheetEntity'] and self.todrive['sheetEntity']['sheetTitle']: - spreadsheet['sheets'][0]['properties']['title'] = sheetTitle - body['requests'].append({'updateSheetProperties': - {'properties': spreadsheet['sheets'][0]['properties'], 'fields': 'title'}}) + spreadsheet['sheets'][0]['properties']['title'] = sheetTitle + body['requests'].append({'updateSheetProperties': + {'properties': spreadsheet['sheets'][0]['properties'], 'fields': 'title'}}) if self.todrive['cellwrap']: body['requests'].append({'repeatCell': {'range': {'sheetId': spreadsheet['sheets'][0]['properties']['sheetId']}, 'fields': 'userEnteredFormat.wrapStrategy',