feature: online services push notifications

This commit is contained in:
Gary Sharp
2025-01-01 19:23:18 +11:00
parent 4006bdbcc6
commit 296f7a13fd
19 changed files with 667 additions and 271 deletions
@@ -17,13 +17,12 @@ namespace Disco.BI.Extensions
{
public static class DocumentTemplateExtensions
{
private static Tuple<Dictionary<string, Expression>, List<DocumentField>> CreateExpressions(DocumentTemplate dt, DiscoDataContext database)
public static Tuple<Dictionary<string, Expression>, List<DocumentField>> CreateExpressions(string templateFileName, DiscoDataContext database)
{
Dictionary<string, Expression> expressions = new Dictionary<string, Expression>();
List<DocumentField> fields = new List<DocumentField>();
string templateFilename = dt.RepositoryFilename(database);
PdfReader pdfReader = new PdfReader(templateFilename);
PdfReader pdfReader = new PdfReader(templateFileName);
int pdfFieldOrdinal = 0;
foreach (string pdfFieldKey in pdfReader.AcroFields.Fields.Keys)
{
@@ -61,6 +60,12 @@ namespace Disco.BI.Extensions
return Tuple.Create(expressions, fields);
}
private static Tuple<Dictionary<string, Expression>, List<DocumentField>> CreateExpressions(DocumentTemplate dt, DiscoDataContext database)
{
string templateFileName = dt.RepositoryFilename(database);
return CreateExpressions(templateFileName, database);
}
public static Dictionary<string, Expression> PdfExpressionsFromCache(this DocumentTemplate dt, DiscoDataContext Database)
{
return ExpressionCache.GetOrCreateExpressions(dt, () => CreateExpressions(dt, Database));