-
Notifications
You must be signed in to change notification settings - Fork 0
/
uploadfile.gs
38 lines (29 loc) · 1.17 KB
/
uploadfile.gs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/* The script is deployed as a dialog and renders the form */
function openDialog() {
var html = HtmlService.createHtmlOutputFromFile('up_load_file');
SpreadsheetApp.getUi().showModalDialog(html, 'Load File');
}
/* This function will process the submitted form */
function uploadTheFile(theForm) {
try {
/* Name of the Drive folder where the files should be saved */
var dropbox = "GDK";
var folder, folders = DriveApp.getFoldersByName(dropbox);
/* Find the folder, create if the folder does not exist */
if (folders.hasNext()) {
folder = folders.next();
} else {
folder = DriveApp.createFolder(dropbox);
}
/* Get the file uploaded though the form as a blob */
var fileBlob = theForm.theFile;
var file = folder.createFile(fileBlob);
/* Set the file description as the name of the uploader */
file.setDescription("Uploaded by " + theForm.myName);
/* Return the download URL of the file once its on Google Drive */
return "File uploaded successfully " + file.getUrl();
} catch (error) {
/* If there's an error, show the error message */
return error.toString();
}
}