У меня есть триггер, который помещает URL-адрес редактирования ответа в 100-й столбец.
Не уверен, от кого я плагиат это, пожалуйста, не стесняйтесь цитировать себя, lol
function assignEditUrls() {
var form = FormApp.openById('XXXXXXXXXXXXXX');
//enter form ID here
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Current');
//Change the sheet name as appropriate
var data = sheet.getDataRange().getValues();
var urlCol = 100; // column number where URL's should be populated; A = 1, B = 2 etc
var responses = form.getResponses();
var timestamps = [], urls = [], resultUrls = [];
for (var i = 0; i < responses.length; i++) {
timestamps.push(responses[i].getTimestamp().setMilliseconds(0));
urls.push(responses[i].getEditResponseUrl());
}
for (var j = 1; j < data.length; j++) {
resultUrls.push([data[j][0]?urls[timestamps.indexOf(data[j][0].setMilliseconds(0))]:'']);
}
sheet.getRange(2, urlCol, resultUrls.length).setValues(resultUrls);
}
Однако мне нужно расширить его, чтобы запустить один из двух разных сценариев, в зависимости от того, если это исходный ответ на форму или редактирование существующего ответа
//first run
if (check_if_edited(e)==false)
{
do_something();
}
//all other runs
else
{
do_something_else();
}
Как мне это сделать?
[Редактировать]
Я прошу прощения: я хочу делайте это для каждого ответа, а не для первого представления формы. Таким образом, первоначальный ответ запускает один скрипт, но если пользователь редактирует свой ответ, мне нужно запустить отдельный скрипт