1+ /*global DocsList: false */
2+
3+ // Manage Google Drive Folders.
4+ // Check if the given folder name exists.
5+ // If yes, return the folder object for the pre-existing folder.
6+ // If not, create the folder using the given folder name.
7+ // Return the folder object for the newly created folder with the given folder name.
8+ function createFolder ( folderName ) {
9+ 'use strict' ;
10+ var folder ,
11+ errMsg = 'Cannot find folder' ;
12+ try {
13+ folder = DocsList . getFolder ( folderName ) ;
14+ } catch ( Error ) {
15+ if ( Error . message . indexOf ( errMsg ) > - 1 ) {
16+ folder = DocsList . createFolder ( folderName ) ;
17+ } else {
18+ throw { 'name' : Error ,
19+ 'message' : 'Unable to create folder ' + folderName } ;
20+ }
21+ }
22+ return folder ;
23+ }
24+
25+ // Manage Google Drive files in folders.
26+ // Add files of file type 'spreadsheet' to folder called 'spreadsheets'
27+ // Add files of file type 'document' to folder called 'documents'.
28+ // Leave all other file types alone.
29+ function arrangeDocsToFolders ( ) {
30+ 'use strict' ;
31+ var ssFolder = createFolder ( 'spreadsheets' ) ,
32+ docFolder = createFolder ( 'documents' ) ,
33+ allFiles = DocsList . getAllFiles ( ) ,
34+ allFilesCount = allFiles . length ,
35+ i ;
36+ for ( i = 0 ; i < allFilesCount ; i += 1 ) {
37+ if ( allFiles [ i ] . getFileType ( ) . toString ( ) === 'spreadsheet' ) {
38+ allFiles [ i ] . addToFolder ( ssFolder ) ;
39+ } else if ( allFiles [ i ] . getFileType ( ) . toString ( ) === 'document' ) {
40+ allFiles [ i ] . addToFolder ( docFolder ) ;
41+ }
42+ }
43+ }
0 commit comments