-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcode.gs
More file actions
55 lines (41 loc) · 1.5 KB
/
code.gs
File metadata and controls
55 lines (41 loc) · 1.5 KB
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
//Grabs webcam image from the website and stores it in my Google Drive
function getWebcam() {
var d = new Date()
var timeStamp = d.getTime()
var timeZone = Session.getScriptTimeZone();
var dString = Utilities.formatDate(d, timeZone, 'yyyy-MM-dd')
var url = "https://www.centuryfarmweather.com/webcam/image.jpg"
var response = UrlFetchApp.fetch(url).getBlob()
//set file name to unix timestamp
response.setName(timeStamp)
var folder = DriveApp.getFolderById("1XyO7DUh6Ty1mt27ernO0G7vtXxWQwmOQ")
//check if folder exists
// Log the name of every folder in the user's Drive that you own and is starred.
var folders = DriveApp.getFoldersByName(dString)
if(folders.hasNext() == false){
folder = folder.createFolder(dString)
return folder.createFile(response)
}else{
folder = folders.next()
return folder.createFile(response)
}
}
//Delete 2 week old files
function cleanDrive() {
var folder = DriveApp.getFolderById("1XyO7DUh6Ty1mt27ernO0G7vtXxWQwmOQ")
var folderNames = folder.getFolders()
//timestamp for two weeks out
const MILLIS_PER_DAY = 1000 * 60 * 60 * 24
const d = new Date()
var old = new Date(d.getTime() - 14 * MILLIS_PER_DAY)
var timeZone = Session.getScriptTimeZone();
var dateString = Utilities.formatDate(old, timeZone, 'yyyy-MM-dd')
while (folderNames.hasNext()){
var folders = folderNames.next()
var fNdate = new Date(folders)
var dSdate = new Date(dateString)
if(folders < dateString){
folders.setTrashed(true)
}
}
}