From 194ec1c956f7188d7290c830f14bd2fbd3c43f99 Mon Sep 17 00:00:00 2001
From: Patrizio Bekerle <patrizio@bekerle.com>
Date: Wed, 24 Mar 2021 11:36:55 +0100
Subject: [PATCH] Get app name for annotation author fields (#37)

---
 src/dbp-official-signature-pdf-upload.js  | 6 +++---
 src/dbp-qualified-signature-pdf-upload.js | 6 +++---
 src/dbp-signature-lit-element.js          | 4 +++-
 3 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/src/dbp-official-signature-pdf-upload.js b/src/dbp-official-signature-pdf-upload.js
index 891c417..4bd76b3 100644
--- a/src/dbp-official-signature-pdf-upload.js
+++ b/src/dbp-official-signature-pdf-upload.js
@@ -52,6 +52,7 @@ class OfficialSignaturePdfUpload extends ScopedElementsMixin(DBPSignatureLitElem
         this.allowAnnotating = false;
         this.queuedFilesAnnotations = [];
         this.queuedFilesAnnotationsCount = 0;
+        this.activity = new Activity(metadata);
     }
 
     static get scopedElements() {
@@ -819,14 +820,13 @@ class OfficialSignaturePdfUpload extends ScopedElementsMixin(DBPSignatureLitElem
 
     render() {
         const placeholderUrl = commonUtils.getAssetURL(pkgName, 'official-signature-placeholder.png');
-        const activity = new Activity(metadata);
 
         return html`
             <div class="${classMap({hidden: !this.isLoggedIn() || !this.hasSignaturePermissions() || this.isLoading()})}">
                 <div class="field">
-                    <h2>${activity.getName(this.lang)}</h2>
+                    <h2>${this.activity.getName(this.lang)}</h2>
                     <p class="subheadline">
-                        ${activity.getDescription(this.lang)}
+                        ${this.activity.getDescription(this.lang)}
                     </p>
                     <div class="control">
                        
diff --git a/src/dbp-qualified-signature-pdf-upload.js b/src/dbp-qualified-signature-pdf-upload.js
index 62ad583..12b23d4 100644
--- a/src/dbp-qualified-signature-pdf-upload.js
+++ b/src/dbp-qualified-signature-pdf-upload.js
@@ -51,6 +51,7 @@ class QualifiedSignaturePdfUpload extends ScopedElementsMixin(DBPSignatureLitEle
         this.queuedFilesNeedsPlacement = new Map();
         this.currentPreviewQueueKey = '';
         this.allowAnnotating = false;
+        this.activity = new Activity(metadata);
 
         this._onReceiveIframeMessage = this.onReceiveIframeMessage.bind(this);
         this._onReceiveBeforeUnload = this.onReceiveBeforeUnload.bind(this);
@@ -937,14 +938,13 @@ class QualifiedSignaturePdfUpload extends ScopedElementsMixin(DBPSignatureLitEle
 
     render() {
         const placeholderUrl = commonUtils.getAssetURL(pkgName, 'qualified-signature-placeholder.png');
-        const activity = new Activity(metadata);
 
         return html`
             <div class="${classMap({hidden: !this.isLoggedIn() || !this.hasSignaturePermissions() || this.isLoading()})}">
                 <div class="field ${classMap({"is-disabled": this.isUserInterfaceDisabled()})}">
-                    <h2>${activity.getName(this.lang)}</h2>
+                    <h2>${this.activity.getName(this.lang)}</h2>
                     <p class="subheadline">
-                        ${activity.getDescription(this.lang)}
+                        ${this.activity.getDescription(this.lang)}
                     </p>
                     <div class="control">
                         
diff --git a/src/dbp-signature-lit-element.js b/src/dbp-signature-lit-element.js
index d1a4c3d..33140be 100644
--- a/src/dbp-signature-lit-element.js
+++ b/src/dbp-signature-lit-element.js
@@ -142,6 +142,8 @@ export default class DBPSignatureLitElement extends DBPSignatureBaseLitElement {
         // We need to work with the AnnotationFactory because the pdf file is broken if
         // we add the multiple annotations to the file itself
         let pdfFactory = await utils.getAnnotationFactoryFromFile(file);
+        const appNameDE = this.activity.getName('de');
+        const appNameEN = this.activity.getName('en');
 
         await commonUtils.asyncObjectForEach(annotations, async (annotation) => {
             const key1 = (annotation.key1 || '').trim();
@@ -155,7 +157,7 @@ export default class DBPSignatureLitElement extends DBPSignatureBaseLitElement {
             const annotationTypeNames = utils.getAnnotationTypes(key1);
 
             pdfFactory = await utils.addKeyValuePdfAnnotationsToAnnotationFactory(
-                pdfFactory, 'AppNameDE', 'AppNameEN', this.auth['user-full-name'], key1,
+                pdfFactory, appNameDE, appNameEN, this.auth['user-full-name'], key1,
                 annotationTypeNames.de, annotationTypeNames.en, key2, value);
         });
 
-- 
GitLab