diff --git a/server/AyaNova/biz/ReportBiz.cs b/server/AyaNova/biz/ReportBiz.cs index 86978ade..97f049d6 100644 --- a/server/AyaNova/biz/ReportBiz.cs +++ b/server/AyaNova/biz/ReportBiz.cs @@ -395,9 +395,15 @@ namespace AyaNova.Biz //add report pre-render, helpers and style //TODO: Add code to vet / evaluate these scripts and see if they are safe and contain valid methods expected + if(string.IsNullOrWhiteSpace(report.JsPrerender)){ + report.JsPrerender="async function ayPrepareData(reportData){return reportData;}"; + } await page.AddScriptTagAsync(new AddTagOptions() { Content = report.JsPrerender }); - await page.AddScriptTagAsync(new AddTagOptions() { Content = report.JsHelpers }); - await page.AddStyleTagAsync(new AddTagOptions() { Content = report.Style }); + + if (!string.IsNullOrWhiteSpace(report.JsHelpers)) + await page.AddScriptTagAsync(new AddTagOptions() { Content = report.JsHelpers }); + if (!string.IsNullOrWhiteSpace(report.Style)) + await page.AddStyleTagAsync(new AddTagOptions() { Content = report.Style }); log.LogDebug($"Preparing page: adding Client meta data"); diff --git a/server/AyaNova/resource/rpt/stock-report-templates/EXAMPLE WIKI helper.ayrt b/server/AyaNova/resource/rpt/stock-report-templates/EXAMPLE WIKI helper.ayrt new file mode 100644 index 00000000..002e0259 --- /dev/null +++ b/server/AyaNova/resource/rpt/stock-report-templates/EXAMPLE WIKI helper.ayrt @@ -0,0 +1 @@ +{"Name":"EXAMPLE WIKI helper","Active":true,"Notes":"","Roles":124927,"ObjectType":2,"Template":"\n\n\n\t{{#each ayReportData}}\n\t

Object name:

\n\t{{ Name }}\n\t

Object WIKI:

\n\t{{ ayWiki Wiki }}\n\t{{/each}}\n\n\n","Style":"","JsPrerender":"async function ayPrepareData(reportData){ \n //this function (if present) is called with the report data \n //before the report is rendered\n //modify data as required here and return it to change the data before the report renders\n //see the help documentation for details\n return reportData;\n}","JsHelpers":"//Register custom Handlebars helpers here to use in your report script\n//https://handlebarsjs.com/guide/#custom-helpers\n","RenderType":0} \ No newline at end of file