Skip to content
Snippets Groups Projects
Unverified Commit 4bf5288d authored by Bekerle, Patrizio's avatar Bekerle, Patrizio :fire:
Browse files

Integrate auth property into dbp-knowledge-base-web-page-element-view

parent cd0a1b54
No related branches found
No related tags found
No related merge requests found
Pipeline #16451 failed
Showing
with 24 additions and 18 deletions
......@@ -23,6 +23,8 @@ npm i @dbp-toolkit/knowledge-base-web-page-element-view
- example `<dbp-knowledge-base-web-page-element-view entry-point-url="http://127.0.0.1:8000"></dbp-knowledge-base-web-page-element-view>`
- `text` (optional): text to click to show the information loaded from the webpage
- example `<dbp-knowledge-base-web-page-element-view text="Click me to show more information"></dbp-knowledge-base-web-page-element-view>`
- `auth` object: you need to set that object property for the auth token
- example auth property: `{token: "THE_BEARER_TOKEN"}`
## Local development
......
......@@ -14,7 +14,7 @@
</style>
<body>
<dbp-knowledge-base-web-page-element-view-demo lang="de" entry-point-url="http://127.0.0.1:8000"></dbp-knowledge-base-web-page-element-view-demo>
<dbp-knowledge-base-web-page-element-view-demo auth lang="de" entry-point-url="http://127.0.0.1:8000"></dbp-knowledge-base-web-page-element-view-demo>
</body>
</html>
......@@ -86,23 +86,23 @@ export class KnowledgeBaseWebPageElementViewDemo extends ScopedElementsMixin(DBP
<div class="container">
<h2 class="subtitle">Deutsch</h2>
<p>Ein erster Schritt</p>
<dbp-knowledge-base-web-page-element-view lang="de" entry-point-url="${this.entryPointUrl}" value="bedienstete/bibliothek/buch-ausleihen" text="Ein Buch ausleihen"></dbp-knowledge-base-web-page-element-view>
<dbp-knowledge-base-web-page-element-view subscribe="auth:auth" lang="de" entry-point-url="${this.entryPointUrl}" value="bedienstete/bibliothek/buch-ausleihen" text="Ein Buch ausleihen"></dbp-knowledge-base-web-page-element-view>
</div>
<div class="container">
<h2 class="subtitle">Englisch</h2>
<p>A first step</p>
<dbp-knowledge-base-web-page-element-view lang="en" entry-point-url="${this.entryPointUrl}" value="bedienstete/bibliothek/buch-ausleihen" text="Borrow a book"></dbp-knowledge-base-web-page-element-view>
<dbp-knowledge-base-web-page-element-view subscribe="auth:auth" lang="en" entry-point-url="${this.entryPointUrl}" value="bedienstete/bibliothek/buch-ausleihen" text="Borrow a book"></dbp-knowledge-base-web-page-element-view>
</div>
<hr>
<div class="container">
<p>mit Text in der WebComponent:</p>
<dbp-knowledge-base-web-page-element-view lang="${this.lang}" value="abc/def/xyz" text="FAQ"></dbp-knowledge-base-web-page-element-view>
<dbp-knowledge-base-web-page-element-view subscribe="auth:auth" lang="${this.lang}" value="abc/def/xyz" text="FAQ"></dbp-knowledge-base-web-page-element-view>
</div>
<hr>
<div class="container">
<p>ohne Text in der WebComponent:</p>
Kontaktieren Sie uns unter...
<dbp-knowledge-base-web-page-element-view class="opt" lang="${this.lang}" value="abc/def/klm"></dbp-knowledge-base-web-page-element-view>
<dbp-knowledge-base-web-page-element-view subscribe="auth:auth" class="opt" lang="${this.lang}" value="abc/def/klm"></dbp-knowledge-base-web-page-element-view>
</div>
</section>
`;
......
import {i18n} from './i18n';
import {html, LitElement} from 'lit-element';
import {html} from 'lit-element';
import {ScopedElementsMixin} from '@open-wc/scoped-elements';
import {MiniSpinner} from '@dbp-toolkit/common';
import * as commonUtils from "@dbp-toolkit/common/utils";
import {unsafeHTML} from 'lit-html/directives/unsafe-html.js';
import {AdapterLitElement} from "@dbp-toolkit/provider/src/adapter-lit-element";
/**
* KnowledgeBaseWebPageElementView web component
*/
export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(LitElement) {
export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(AdapterLitElement) {
constructor() {
super();
this.lang = 'de';
......@@ -21,6 +22,7 @@ export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(LitElem
//this.css = 'kb.css';
this.text = '';
this.class = '';
this.auth = {};
}
static get scopedElements() {
......@@ -46,6 +48,7 @@ export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(LitElem
error: { type: String, attribute: false},
//css: { type: String },
text: { type: String },
auth: { type: Object },
};
}
......@@ -53,7 +56,7 @@ export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(LitElem
* Loads the data from the web page element
*/
loadWebPageElement() {
if (window.DBPAuthToken === undefined || window.DBPAuthToken === "") {
if (this.auth.token === undefined || this.auth.token === "") {
return;
}
......@@ -66,7 +69,7 @@ export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(LitElem
fetch(apiUrl, {
headers: {
'Content-Type': 'application/ld+json',
'Authorization': 'Bearer ' + window.DBPAuthToken,
'Authorization': 'Bearer ' + this.auth.token,
},
})
.then(function (res) {
......
......@@ -56,7 +56,7 @@ export class PersonProfile extends DBPLitElement {
fetch(apiUrl, {
headers: {
'Content-Type': 'application/ld+json',
'Authorization': 'Bearer ' + window.DBPAuthToken,
'Authorization': 'Bearer ' + this.auth.token,
},
})
.then(response => response.json())
......
......@@ -156,7 +156,7 @@ export class PersonSelect extends ScopedElementsMixin(AdapterLitElement) {
url: apiUrl,
contentType: "application/ld+json",
beforeSend: function (jqXHR) {
jqXHR.setRequestHeader('Authorization', 'Bearer ' + window.DBPAuthToken);
jqXHR.setRequestHeader('Authorization', 'Bearer ' + that.auth.token);
that.isSearching = true;
},
data: function (params) {
......@@ -223,7 +223,7 @@ export class PersonSelect extends ScopedElementsMixin(AdapterLitElement) {
fetch(apiUrl, {
headers: {
'Content-Type': 'application/ld+json',
'Authorization': 'Bearer ' + this.auth.token || window.DBPAuthToken,
'Authorization': 'Bearer ' + this.auth.token,
},
})
.then(result => {
......
......@@ -14,5 +14,5 @@
"de": "Ort Web Component",
"en": "Check-in place select web component"
},
"subscribe": "lang:lang,entry-point-url:entry-point-url"
"subscribe": "lang:lang,entry-point-url:entry-point-url,auth:auth"
}
......@@ -61,6 +61,7 @@
nextcloud-file-url="<%= nextcloudFileURL %>">
<<%= name %>
src="<%= getUrl(name + '.topic.metadata.json') %>"
auth
base-path="<%= getUrl('') %>"
keycloak-config='{"url": "<%= keyCloakBaseURL %>", "realm": "tugraz", "clientId": "<%= keyCloakClientId %>", "silentCheckSsoRedirectUri": "<%= getUrl('silent-check-sso.html') %>"}'
matomo-url="<%= matomoUrl %>" matomo-site-id="<%= matomoSiteId %>"
......
......@@ -14,5 +14,5 @@
"de": "Web Komponenten für file sink und file source. Für mehrere verschiedenen Quellen.",
"en": "Web components for file sink and file source. For several different sources."
},
"subscribe": "lang:lang,entry-point-url:entry-point-url,nextcloud-auth-url:nextcloud-auth-url,nextcloud-web-dav-url:nextcloud-web-dav-url,nextcloud-name:nextcloud-name,nextcloud-file-url:nextcloud-file-url,show-nextcloud-file-picker:show-nextcloud-file-picker"
"subscribe": "lang:lang,entry-point-url:entry-point-url,nextcloud-auth-url:nextcloud-auth-url,nextcloud-web-dav-url:nextcloud-web-dav-url,nextcloud-name:nextcloud-name,nextcloud-file-url:nextcloud-file-url,show-nextcloud-file-picker:show-nextcloud-file-picker,auth:auth"
}
......@@ -14,5 +14,5 @@
"de": "Erlaubt das Einfügen von Webinhalten",
"en": "Allows the inserting of web content"
},
"subscribe": "lang:lang,entry-point-url:entry-point-url"
"subscribe": "lang:lang,entry-point-url:entry-point-url,auth:auth"
}
......@@ -14,5 +14,5 @@
"de": "Gemeinsame Web Components",
"en": "Person profile web components"
},
"subscribe": "lang:lang,entry-point-url:entry-point-url"
"subscribe": "lang:lang,entry-point-url:entry-point-url,auth:auth"
}
......@@ -14,5 +14,5 @@
"de": "Erlaubt das Suchen von Personen",
"en": "Allows searching for persons"
},
"subscribe": "lang:lang,entry-point-url:entry-point-url"
"subscribe": "lang:lang,entry-point-url:entry-point-url,auth:auth"
}
......@@ -14,5 +14,5 @@
"de": "Scannt Qr Codes",
"en": "Scans Qr Codes"
},
"subscribe": "lang:lang,entry-point-url:entry-point-url"
"subscribe": "lang:lang,entry-point-url:entry-point-url,auth:auth"
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment