Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 2588c11

Browse files
author
Jon Christensen
committedJan 30, 2018
v0.1.1-beta release!
1 parent aa06adc commit 2588c11

File tree

1 file changed

+44
-39
lines changed

1 file changed

+44
-39
lines changed
 

‎main.js

Lines changed: 44 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -2874,10 +2874,6 @@ function findReplace(val, obj) {
28742874
return val;
28752875
}
28762876

2877-
2878-
// val = val.toString();
2879-
// Logger.log(val);
2880-
28812877
var count = val.split("%").length - 1;
28822878

28832879
if (count !== 2) {
@@ -3141,45 +3137,44 @@ function spreadsheetMergeArrayOfObjects(naming, template, fldr, arrObj, opt) {
31413137
// -- Single Division List
31423138

31433139
// var sheet_sdl = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet2");
3144-
// var arrObj_sdl = arrObjFromSheet(sheet_sdl, 2);
3145-
// var fldr_sdl = verifyPath("google-apps-script-cheat-sheet-demo/docs");
3146-
// var file_sdl = createVerifyDocIn(fldr_sdl, "example-doc");
3147-
// var doc_sdl = openFileAsDocument(file_sdl);
3140+
// var arrObj_sdl = arrayOfObjectsSheet(sheet_sdl);
3141+
// var file_sdl = verifyFileAtPath("google-apps-script-cheat-sheet-demo/docs/example-doc", "document");
3142+
// var doc_sdl = openFileAsType(file_sdl, "document");
31483143
// var body_sdl = doc_sdl.getBody();
31493144

3145+
// Logger.log("Single Division List");
31503146
// (function(){
3151-
// arrObj_sdl.sort(dynSortM("Last", "First"));
3147+
// arrObj_sdl.sort(sortArrayOfObjectsMulti("Last", "First"));
31523148
// var sectionHeader = body_sdl.appendParagraph("Students");
31533149
// sectionHeader.setHeading(DocumentApp.ParagraphHeading.HEADING1);
31543150
// for (var i in arrObj_sdl) {
3155-
// body_sdl.appendListItem(arrObj_sdl[i]["Last"] + ", " + arrObj_sdl[i]["First"]);
3151+
// body_sdl.appendListItem(arrObj_sdl[i].Last + ", " + arrObj_sdl[i].First);
31563152
// }
31573153
// })();
31583154

31593155
// -- Multi Division List
31603156

31613157
// var sheet_mdl = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet2");
3162-
// var arrObj_mdl = arrObjFromSheet(sheet_mdl, 2);
3163-
// var fldr_mdl = verifyPath("google-apps-script-cheat-sheet-demo/docs");
3164-
// var file_mdl = createVerifyDocIn(fldr_mdl, "example-doc");
3165-
// var doc_mdl = openFileAsDocument(file_mdl);
3158+
// var arrObj_mdl = arrayOfObjectsSheet(sheet_mdl);
3159+
// var file_mdl = verifyFileAtPath("google-apps-script-cheat-sheet-demo/docs/example-doc", "document");
3160+
// var doc_mdl = openFileAsType(file_mdl, "document");
31663161
// var body_mdl = doc_mdl.getBody();
31673162

31683163
// (function(){
3169-
// arrObj_mdl.sort(dynSortM("Homeroom", "Last", "First"));
3164+
// arrObj_mdl.sort(sortArrayOfObjectsMulti("Homeroom", "Last", "First"));
31703165
// var sectionHeader = body_mdl.appendParagraph("Homerooms and Students");
31713166
// sectionHeader.setHeading(DocumentApp.ParagraphHeading.HEADING1);
3172-
// var homeroom = arrObj_mdl[0]["Homeroom"];
3167+
// var homeroom = arrObj_mdl[0].Homeroom;
31733168
// body_mdl.appendListItem(homeroom);
31743169
// for (var i in arrObj_mdl) {
3175-
// if (arrObj_mdl[i]["Homeroom"] === homeroom) {
3176-
// body_mdl.appendListItem(arrObj_mdl[i]["First"] + " " + arrObj_mdl[i]["Last"])
3170+
// if (arrObj_mdl[i].Homeroom === homeroom) {
3171+
// body_mdl.appendListItem(arrObj_mdl[i].First + " " + arrObj_mdl[i].Last)
31773172
// .setNestingLevel(1).setIndentStart(10)
31783173
// .setGlyphType(DocumentApp.GlyphType.HOLLOW_BULLET);
31793174
// } else {
3180-
// homeroom = arrObj_mdl[i]["Homeroom"];
3175+
// homeroom = arrObj_mdl[i].Homeroom;
31813176
// body_mdl.appendListItem(homeroom);
3182-
// body_mdl.appendListItem(arrObj_mdl[i]["First"] + " " + arrObj_mdl[i]["Last"])
3177+
// body_mdl.appendListItem(arrObj_mdl[i].First + " " + arrObj_mdl[i].Last)
31833178
// .setNestingLevel(1).setIndentStart(10)
31843179
// .setGlyphType(DocumentApp.GlyphType.HOLLOW_BULLET);
31853180
// }
@@ -3202,29 +3197,39 @@ function spreadsheetMergeArrayOfObjects(naming, template, fldr, arrObj, opt) {
32023197
* @returns {Object[]}
32033198
*/
32043199

3205-
function appendSubjBodyForArrObj(arrObj, subj, body, delim) {
3200+
// function appendSubjBodyForArrObj(arrObj, subj, body, delim) {
3201+
// for (var i = 0; i < arrObj.length; i++) {
3202+
// var obj = arrObj[i];
3203+
// for (var prop in obj) {
3204+
// var search = delim + prop + delim;
3205+
// if (body.indexOf(search) !== -1) {
3206+
// body = body.replace(search, obj[prop]);
3207+
// }
3208+
// if (subj.indexOf(search) !== -1) {
3209+
// subj = subj.replace(search, obj[prop]);
3210+
// }
3211+
// }
3212+
// obj.Subject = subj;
3213+
// obj.Body = body;
3214+
// }
3215+
// return arrObj;
3216+
// }
3217+
3218+
function appendSubjectBodyArrayOfObjects(subj, body, arrObj) {
32063219
for (var i = 0; i < arrObj.length; i++) {
3207-
var obj = arrObj[i];
3208-
for (var prop in obj) {
3209-
var search = delim + prop + delim;
3210-
if (body.indexOf(search) !== -1) {
3211-
body = body.replace(search, obj[prop]);
3212-
}
3213-
if (subj.indexOf(search) !== -1) {
3214-
subj = subj.replace(search, obj[prop]);
3215-
}
3216-
}
3217-
obj.Subject = subj;
3218-
obj.Body = body;
3219-
}
3220+
var obj = arrObj[i];
3221+
obj.Subject = findReplaceInString(subj, obj);
3222+
obj.Body = findReplaceInString(body, obj);
3223+
}
32203224
return arrObj;
32213225
}
32223226

3223-
// var sheet_aasbfao = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet2");
3224-
// var arrObj_asbfao = arrObjFromSheet(sheet_aasbfao, 2);
3225-
// var subj_asbfao = "Classroom update for %First% %Last%";
3226-
// var body_asbfao = "<p>%First% %Last% is in %Homeroom%'s this fall!</p>";
3227-
// Logger.log(appendSubjBodyForArrObj(arrObj_asbfao, subj_asbfao, body_asbfao, "%")); // [{Last=Garret, Email=agarret@example.com, Homeroom=Muhsina, Grade=6.0, First=Arienne, Body=<p>Arienne Garret is in Muhsina's this fall!</p>, Subject=Classroom update for Arienne Garret}...]
3227+
Logger.log("appendSubjectBodyArrayOfObjects");
3228+
var sheet_asbaoo = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet2");
3229+
var arrObj_asbaoo = arrayOfObjectsSheet(sheet_asbaoo);
3230+
var subj_asbaoo = "Classroom update for %First% %Last%";
3231+
var body_asbaoo = "<p>%First% %Last% is in %Homeroom%'s homeroom this fall!</p>";
3232+
Logger.log(appendSubjectBodyArrayOfObjects(subj_asbaoo, body_asbaoo, arrObj_asbaoo)); // [{Last=Garret, Email=agarret@example.com, Homeroom=Muhsina, Grade=6.0, First=Arienne, Body=<p>Arienne Garret is in Muhsina's this fall!</p>, Subject=Classroom update for Arienne Garret}...]
32283233

32293234
// -- Run Mail Merge for Array of Objects
32303235

0 commit comments

Comments
 (0)
Please sign in to comment.