-
Notifications
You must be signed in to change notification settings - Fork 4
/
final.js
99 lines (60 loc) · 2.29 KB
/
final.js
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
var HEADER_SIZE=1;
var FOOTER_SIZE=0;
var TEMPLATE_ID="";
var SPREADSHEET_ID="";
function myFunction(){
getUsersData();
}
function getUsersData() {
var ss=SpreadsheetApp.openById(SPREADSHEET_ID);
ss.setActiveSheet(ss.getSheets()[0]);
var sheet = ss.getActiveSheet();
Utilities.sleep(3000);
var data = sheet.getDataRange().getValues();
var total =(data.length)-(HEADER_SIZE+FOOTER_SIZE);
var sl = HEADER_SIZE;
var il = (total+HEADER_SIZE);
var users = [];
for(i=sl; i<il; i++){
users.push(data[i]);
}
var usersData = [];
for(i in users){
var row = users[i];
var tiempoRegistro = row[0];
var nombre = row[1];
var twitter = row[2];
var correo = row[3];
var userData= new toObject(tiempoRegistro,nombre, twitter,correo); //creamos un objeto, con cada usuario
Logger.log(userData);
usersData[i] = userData;
}
return usersData;
}
function toObject(tiempoRegistro, nombre, twitter, correo){
this.tiempoRegistro = tiempoRegistro;
this.nombre = nombre;
this.twitter = twitter;
this.correo = correo;
}
function onFormSubmit(e) {
var tiempoRegistro = e.values[0];
var nombre = e.values[1];
var twitter= e.values[2];
var correo = e.values[3];
var docId = DocsList.getFileById(TEMPLATE_ID).makeCopy().getId();
var doc = DocumentApp.openById(docId);
doc.setName("Exito al Registrarte "+nombre);
var body = doc.getActiveSection();
body.replaceText("%nombre%", nombre);
body.replaceText("%twitter%", twitter);
doc.saveAndClose();
//Una pausa para el servidor, de no ser así se satura y manda error
Utilities.sleep(3000);
GmailApp.sendEmail(correo, "Hola! "+nombre+" y Gracias por Registrarte", "Los datos del evento estan aqui:" +doc.getUrl());
}
function doGet() {
Logger.log("HOla")
var datos = getUsersData();
return ContentService.createTextOutput(JSON.stringify(datos)).setMimeType(ContentService.MimeType.JSON);
}