Last active
December 31, 2015 07:39
-
-
Save suntong/7955642 to your computer and use it in GitHub Desktop.
move a Google Doc into another folder
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
How do I move a file to a folder in Google Apps Script? | |
http://stackoverflow.com/questions/14696514/how-do-i-copy-move-a-file-to-a-folder-in-google-apps-script | |
Yeah, it is a bit odd that Google does not provide a move method. | |
But, considering how drive works and that a file can belong to | |
multiple folders, it makes some sense that you have write your own moves. | |
I should note that this simple function is exactly that ... simple. | |
It assumes you are okay with whacking all parent folders -- owned | |
or shared. This can have unexpected consequences with shared | |
files in various shared folders of various users if you are not | |
careful. It does not appear, however, to remove parent folders | |
that are not shared with the user of this script -- which is | |
good. Anyhow, one obvious alternative to control things better | |
would be to specify the "from" folder as well as the "to" folder. | |
-- juanitogan | |
*/ | |
// Moves a file to a new folder by removing all current | |
// parent folders and then adding the new one. | |
function moveFileTo(fileObj, folderObj) { | |
// Attempt the move only if folderObj has a value. | |
// Otherwise, the file will be left without a folder. | |
// (Lost files can be found in the "All items" area.) | |
if (folderObj) { | |
var folders = fileObj.getParents(); | |
for (var i = 0; i < folders.length; i++) { | |
fileObj.removeFromFolder(folders[i]); | |
} | |
fileObj.addToFolder(folderObj); | |
return true; | |
} | |
return false; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment