Home > Software design >  Modify Google Forms confirmation page to display the time stamp using App Script .gs
Modify Google Forms confirmation page to display the time stamp using App Script .gs

Time:05-28

I watched this youtube [video][1] which is in Hindi. I don't understand what he says but see what he does and that it works. So I tried to replicate to get the same result: for the Confirmation Page of a Google Form to display the date and time. I actually prefer to get the submission time stamp, but perhaps it doesn't matter. [1]: https://www.youtube.com/watch?v=oC4Os1N5Tjs

So I wrote this in Apps Script, copying directly from the video (shown at 9:40 of the runtime):

function confirmationPage1() {
  let form = FormApp.openById("1fbdR0F8zBFyn_oz1P4uSdRUBzEAp3EsfemB44LiDaXE");
  let date = Utilities.formatDate(new Date(),Session.getScriptTimeZone(), "yyyy-MM-dd HH:mm:ss");
  Logger.log(date)
  form.setConfirmationMessage()
}

This doesn't work, and it's not telling me the reason: "other error". So I tried something else using a method which works for generating an email that includes the time stamp, like this:

function confirmationPage2(e) {
  var formResponse = e.response;
  var date = e.response.getTimestamp().toString().substring(0, 24);
  let form = FormApp.openById("1fbdR0F8zBFyn_oz1P4uSdRUBzEAp3EsfemB44LiDaXE");
  Logger.log(date)
  form.setConfirmationMessage()
}

Again, same result - doesn't work. Any help - greatly appreciated!

Bonus: at the end, I don't really just want to display the time stamp in the confirmation page, but a link that includes the time stamp (a link to another google form that's pre-filled with the time stamp of this one, so that I know which respondent continued to the next one. But this should not be difficult, if I manage to get it to display the time stamp in the first place.

CodePudding user response:

Instead of this:

form.setConfirmationMessage()

Try this:

form.setConfirmationMessage(date)

As for the second script, add a trigger that runs confirmationPage2, Event Source = From Form Event type = on form submit Otherwise time will not change for each submission.

enter image description here

  • Related