old_sheet_name = puzzle_sheet_name(old_puzzle)
if sheet_name != old_sheet_name:
- turbot.sheets.renameSheet(turb, puzzle['sheet_url'], sheet_name)
+ turbot.sheets.rename_spreadsheet(turb, puzzle['sheet_url'], sheet_name)
# Compute the Slack channel name and set it if it has changed
channel_name = puzzle_channel_name(puzzle)
for sheet in response["sheets"]:
if sheet["properties"]["title"] in PUZZLE_TEMPLATE_SHEETS:
- turb.sheets.sheets().copyTo(spreadsheetId=PUZZLE_TEMPLATE_ID,
- sheetId=sheet["properties"]["sheetId"],
- body={
- "destinationSpreadsheetId":
- new_sheet['id']
- }).execute()
+ res = turb.sheets.sheets().copyTo(
+ spreadsheetId=PUZZLE_TEMPLATE_ID,
+ sheetId=sheet["properties"]["sheetId"],
+ body={
+ "destinationSpreadsheetId": new_sheet['id']
+ }).execute()
+ rename_sheet(turb, new_sheet['id'], res['sheetId'],
+ sheet["properties"]["title"])
return new_sheet
-def renameSheet(turb, url, newName):
+def rename_sheet(turb, spreadsheet_id, sheet_id, name):
+
+ body = {
+ 'requests': [{
+ 'updateSheetProperties': {
+ 'properties': {
+ 'sheetId': sheet_id,
+ 'title': name
+ },
+ 'fields': 'title'
+ }
+ }]
+ }
+
+ turb.sheets.batchUpdate(spreadsheetId=spreadsheet_id,
+ body=body
+ ).execute()
+
+def rename_spreadsheet(turb, url, newName):
id = extractIdFromSheetUrl(url)
requests = []
requests.append({