From 10abb41a0c6394e61f56d662e28aca9ff6f06bcc Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Tue, 8 Sep 2020 18:33:57 +0000 Subject: [PATCH] --- server/AyaNova/biz/ReportBiz.cs | 19 +++++++------------ server/AyaNova/resource/rpt/ay-report.js | 22 +++++++++++----------- 2 files changed, 18 insertions(+), 23 deletions(-) diff --git a/server/AyaNova/biz/ReportBiz.cs b/server/AyaNova/biz/ReportBiz.cs index 2ad8c066..0b24f3af 100644 --- a/server/AyaNova/biz/ReportBiz.cs +++ b/server/AyaNova/biz/ReportBiz.cs @@ -405,27 +405,22 @@ namespace AyaNova.Biz var serverMeta=$"{{ayApiUrl:`{apiUrl}`}}"; - //this is how you view the contents of the page + #if (DEBUG) +//view page contents var pagecontent = await page.GetContentAsync(); #endif - //compile and run handlebars template - //var compileScript = $"Handlebars.compile(`{report.Template}`)({{ ayReportData:ayPreRender({ReportData}), ayClientMetaData:{clientMeta}, ayServerMetaData:{{ayApiUrl:`{apiUrl}`}} }});"; - //var compileScript = $"Handlebars.compile(`{report.Template}`)( (async () => {{await ayPreRender({{ ayReportData:{ReportData}, ayClientMetaData:{clientMeta}, ayServerMetaData:{serverMeta} }})}})());"; - - var ReportDataObject=$"{{ ayReportData:{ReportData}, ayClientMetaData:{clientMeta}, ayServerMetaData:{serverMeta} }}"; - // var ReportDataObject=$"{{ ayReportData:[1,2] }}"; - + //prePareData / preRender + var ReportDataObject=$"{{ ayReportData:{ReportData}, ayClientMetaData:{clientMeta}, ayServerMetaData:{serverMeta} }}"; var preRenderResult=await page.EvaluateExpressionAsync($"ayPreRender({ReportDataObject});"); - // var preRenderResult=await page.EvaluateExpressionAsync("ayPreRender('stringofdata');"); - + //compile the template var compileScript = $"Handlebars.compile(`{report.Template}`)({preRenderResult});"; - var resultHTML = await page.EvaluateExpressionAsync(compileScript); + var compiledHTML = await page.EvaluateExpressionAsync(compileScript); //render report as HTML - await page.SetContentAsync(resultHTML); + await page.SetContentAsync(compiledHTML); //add style (after page or it won't work) if (!string.IsNullOrWhiteSpace(report.Style)) diff --git a/server/AyaNova/resource/rpt/ay-report.js b/server/AyaNova/resource/rpt/ay-report.js index e4c8b06a..b3094de5 100644 --- a/server/AyaNova/resource/rpt/ay-report.js +++ b/server/AyaNova/resource/rpt/ay-report.js @@ -26,13 +26,13 @@ function ayRegisterHelpers() { }); } //eof -// async function ayPreRender(ayAllData) { -// if (typeof ayPrepareData === "function") { -// return await ayPrepareData(ayAllData); -// } else { -// return ayAllData; -// } -// } +async function ayPreRender(ayAllData) { + if (typeof ayPrepareData === "function") { + return await ayPrepareData(ayAllData); + } else { + return ayAllData; + } +} // function ayPreRender(ayAllData) { // if (typeof ayPrepareData === "function") { @@ -42,7 +42,7 @@ function ayRegisterHelpers() { // } // } -function ayPreRender(ayAllData) { - return ayAllData; - // return typeof ayPrepareData; -} +// function ayPreRender(ayAllData) { +// return ayAllData; +// // return typeof ayPrepareData; +// }