From 87d04ed68a446eee210ae1e73d864a76db8b5487 Mon Sep 17 00:00:00 2001 From: yflory Date: Wed, 30 Jun 2021 12:36:24 +0200 Subject: [PATCH] Fix form CSV export --- www/form/export.js | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/www/form/export.js b/www/form/export.js index e29c6dd87..93f3ff6d3 100644 --- a/www/form/export.js +++ b/www/form/export.js @@ -5,7 +5,7 @@ define([ var Export = {}; var escapeCSV = function (v) { - if (!/("|,)/.test(v)) { + if (!/("|,|\n)/.test(v)) { return v || ''; } var value = ''; @@ -14,7 +14,6 @@ define([ return value; }; Export.results = function (content, answers, TYPES) { - console.log(content, answers, TYPES); if (!content || !content.form) { return; } var csv = ""; var form = content.form; @@ -24,8 +23,8 @@ define([ if (!obj) { return; } return obj.q || Messages.form_default; }).filter(Boolean); - questions.unshift(Messages.form_poll_time); // "Time" questions.unshift(Messages.share_formView); // "Participant" + questions.unshift(Messages.form_poll_time); // "Time" questions.forEach(function (v, i) { if (i) { csv += ','; } @@ -37,14 +36,14 @@ define([ csv += '\n'; var time = new Date(obj.time).toISOString(); var msg = obj.msg || {}; - var user = msg._userdata; + var user = msg._userdata || {}; csv += escapeCSV(time); csv += ',' + escapeCSV(user.name || Messages.anonymous); Object.keys(form).forEach(function (key) { - csv += ',' + escapeCSV(String(msg[key])); + if (msg[key] && typeof(msg[key]) !== "string") { console.warn(key, msg[key]); } + csv += ',' + escapeCSV(String(msg[key] || '')); }); }); - console.log(csv); return csv; };