/
Code.gs
41 lines (33 loc) · 919 Bytes
/
Code.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
39
40
41
function handleEdit(e) {
var range = e.range.getA1Notation();
var sheet = e.source;
if (range.length > 1 && range[0] === 'G') {
if (e.value == "TRUE") {
Logger.log("Approved: TRUE");
var row = range.slice(1);
var url = sheet.getRange('E' + row).getCell(1, 1).getValue();
var approver = sheet.getRange('F' + row).getCell(1, 1).getValue();
callback(url, approver);
}
else {
Logger.log("Approved: FALSE");
}
}
}
function callback(url, approver) {
const headers = {
"Authorization": "Bearer " + ScriptApp.getOAuthToken()
};
var payload = {
'approver': approver
};
const params = {
"method": 'POST',
"contentType": 'application/json',
"headers": headers,
"payload": JSON.stringify(payload)
};
Logger.log("Workflow callback request to " + url);
var response = UrlFetchApp.fetch(url, params);
Logger.log(response);
}