From d94a4d1a1aec32c29c6284fa4040e80e0a60a34f Mon Sep 17 00:00:00 2001
From: Eugen Neuber <eugen.neuber@tugraz.at>
Date: Wed, 7 Aug 2019 09:45:34 +0200
Subject: [PATCH] Lazy load for kb texts

---
 .../src/vpu-kb-wpe-view.js                             | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/packages/knowledge-base-web-page-element-view/src/vpu-kb-wpe-view.js b/packages/knowledge-base-web-page-element-view/src/vpu-kb-wpe-view.js
index fd000f7b..4aa316e6 100644
--- a/packages/knowledge-base-web-page-element-view/src/vpu-kb-wpe-view.js
+++ b/packages/knowledge-base-web-page-element-view/src/vpu-kb-wpe-view.js
@@ -40,6 +40,7 @@ class VPUKnowledgeBaseWebPageElementView extends VPULitElement {
         };
     }
 
+    /*
     connectedCallback() {
         super.connectedCallback();
         const that = this;
@@ -49,8 +50,10 @@ class VPUKnowledgeBaseWebPageElementView extends VPULitElement {
         //         encodeURIComponent(commonUtils.base64EncodeUnicode(encodeURIComponent(that.value)));
         // });
 
+        // disabled, load first on toggle to visible
         window.addEventListener("vpu-auth-init", () => that.loadWebPageElement());
     }
+    */
 
     /**
      * Loads the data from the web page element
@@ -113,7 +116,7 @@ class VPUKnowledgeBaseWebPageElementView extends VPULitElement {
                 case "lang":
                 case "value":
                 case "entry-point-url":
-                    this.loadWebPageElement();
+                    this.html = '';
                     break;
                 case "text":
                     this.class = this.text !== '' ? 'has-text' : '';
@@ -129,12 +132,15 @@ class VPUKnowledgeBaseWebPageElementView extends VPULitElement {
         const img = e.target;
         const d = element.style.display;
         if(d === '' || d === 'none') {
-            element.style.display = 'flex';
+            element.style.display = 'block';
             img.src = this.eyeClose;
         } else {
             element.style.display = 'none';
             img.src = this.eyeOpen;
         }
+        if (this.html === '' && element.style.display !== 'none') {
+            this.loadWebPageElement();
+        }
     }
 
     render() {
-- 
GitLab