Created
January 25, 2022 08:48
-
-
Save neno-tech/7a8e336ba6832765fb91375a2a89aa0e to your computer and use it in GitHub Desktop.
Google form + pdf + sendMail
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function formSubmit(e) { | |
let info = e.namedValues | |
let pdfFile = createPDF(info) | |
let entryRow = e.range.getRow() | |
let ws = SpreadsheetApp.getActive().getSheets()[0] | |
let userMail = ws.getRange(entryRow, 2).getValue() | |
ws.getRange(entryRow, 6).setValue(pdfFile.getUrl()) | |
sendEmail(userMail, pdfFile) | |
} | |
function sendEmail(email, pdfFile){ | |
GmailApp.sendEmail(email, "xxx","xxx", { | |
attachments: [pdfFile], | |
name: 'xxx' | |
}); | |
} | |
function createPDF(info){ | |
var date = Utilities.formatDate(new Date(), "GMT+7", "dd/MM/yyyy"); | |
let pdfFolder = DriveApp.getFolderById("xxx") | |
let tempFolder = DriveApp.getFolderById ("xxx") | |
let templateDoc = DriveApp.getFileById("xxx") | |
let newDoc = templateDoc.makeCopy(tempFolder) | |
let openDoc = DocumentApp.openById(newDoc.getId()) | |
openDoc.getBody().replaceText("{xxx}", info['xxx'][0]) | |
openDoc.getBody().replaceText("{xxx}", info['xxx'][0]) | |
openDoc.getBody().replaceText("{xxx}", info['xxx'][0]) | |
openDoc.saveAndClose() | |
let blobPDF = newDoc.getAs(MimeType.PDF); | |
let pdfFile = pdfFolder.createFile(blobPDF).setName(info['xxx'][0] + " " + info['xxx'][0] + "-" +date) | |
tempFolder.removeFile(newDoc) | |
return pdfFile | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment