-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathutility.gs
More file actions
123 lines (101 loc) · 2.67 KB
/
utility.gs
File metadata and controls
123 lines (101 loc) · 2.67 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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
var parameter;
function doGet(e) {
parameter = e.parameter;
var page= e.parameter.page;
if(!page){
page = 'index';
}
return HtmlService
.createTemplateFromFile(page)
.evaluate()
.setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL)
.addMetaTag('viewport', 'width=device-width, initial-scale=1');
}
function include(filename) {
return HtmlService.createHtmlOutputFromFile(filename)
.getContent();
}
function dataIntoHashRows(data, keysRow, startRow, filterFunction){
var idKey= {};
var keyId= {};
var newData = [];
Logger.log("data");
for (var k = 0; k < data[keysRow].length; k++) {
// key is text, k is number
var key = data[keysRow][k];
key = key.replace("?","");
key = key.replace("'","");
key = key.replace(":","");
if(key.trim() == ""){
continue;
}
idKey[k] = key;
keyId[key] = k;
}
for (var i = startRow; i < data.length; i++) {
var newRow = {};
for (var j = 0; j < data[i].length; j++) {
if(!idKey[j] || idKey[j].trim() == ""){
continue;
}
newRow[idKey[j]] = data[i][j];
}
if(!filterFunction || filterFunction(newRow) == true){
newData.push(newRow);
}
}
return {data:newData, keyId: keyId, idKey: idKey};
}
function insertHashRow(table, data, keysrow){
var insertArray = [];
var idKey= {};
var keyId= {};
var range = "A"+(keysrow+1).toString() +":"+(keysrow+1).toString();
tableMetaData = table
.getActiveSheet()
.getRange(range)
.getValues();
for (var k = 0; k < tableMetaData[0].length; k++) {
var key = tableMetaData[0][k];
// key is text, k is number
if(key.trim() == ""){
continue;
}
insertArray.push("");
idKey[k] = key;
keyId[key] = k;
}
datakeys = Object.keys(data);
for(var i = 0; i < datakeys.length; i++){
var key = datakeys[i];
var k = keyId[key];
insertArray[k] = data[key];
}
table.getActiveSheet().appendRow(insertArray);
}
function getImageUrl(imagename){
var results = PicasaApp.find(imagename);
if(results.length >= 0){
return results[0].getUrl();
}
return false;
}
function testGetFileBlog(){
getFileBlob("sia33_thumb.jpg");
}
function getFileBlob(filename){
//https://developers.google.com/apps-script/reference/base/blob
Logger.log("looking for " + filename);
var files = DriveApp.getFilesByName(filename);
Logger.log(files);
while (files.hasNext()) {
var file = files.next();
var blob = file.getBlob();
Logger.log("got blob");
return { blob: blob.getBytes(),
contentType : blob.getContentType()
};
}
Logger.log("returning false");
return false;
}