diff --git a/assets/vpu-signature.topic.metadata.json b/assets/vpu-signature.topic.metadata.json index 0efbf969308ba7f9529be7ea6a2963eaa763ce91..10ce72456da2e7d0f4586558a2aa6ea804772d00 100644 --- a/assets/vpu-signature.topic.metadata.json +++ b/assets/vpu-signature.topic.metadata.json @@ -1,11 +1,11 @@ { "name": { - "de": "Amtssignatur", - "en": "Offical Signature" + "de": "Signaturservice", + "en": "Signatureservice" }, "short_name": { - "de": "Amtssignatur", - "en": "Offical Signature" + "de": "Signaturservice", + "en": "Signatureservice" }, "description": { "de": "", @@ -13,7 +13,7 @@ }, "routing_name": "signature", "activities": [ - {"path": "vpu-signature-welcome.metadata.json"}, + {"path": "vpu-welcome.metadata.json"}, {"path": "vpu-signature-pdf-upload.metadata.json"}, {"path": "vpu-signature-profile.metadata.json", "visible": false} diff --git a/assets/vpu-signature-welcome.metadata.json b/assets/vpu-welcome.metadata.json similarity index 71% rename from assets/vpu-signature-welcome.metadata.json rename to assets/vpu-welcome.metadata.json index 89bcc75a25a12aaf8d54aedbe5c97f92842fcc1d..da6fff882ba271c0c5d457960ede76602cbfbe66 100644 --- a/assets/vpu-signature-welcome.metadata.json +++ b/assets/vpu-welcome.metadata.json @@ -1,6 +1,6 @@ { - "element": "vpu-signature-welcome", - "module_src": "vpu-signature-welcome.js", + "element": "vpu-welcome", + "module_src": "vpu-welcome.js", "routing_name": "welcome", "name": { "de": "Willkommen", diff --git a/rollup.config.js b/rollup.config.js index 3cf84dee5a2375ed0883879e06037b2acb237928..1c560a0fb55e4940a2bf5f0a1245c9a0ef952193 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -144,7 +144,7 @@ export default { 'src/vpu-signature.js', 'src/vpu-signature-pdf-upload.js', 'src/vpu-signature-profile.js', - 'src/vpu-signature-welcome.js', + 'src/vpu-welcome.js', ] : glob.sync('test/**/*.js'), output: { dir: 'dist', diff --git a/src/app/index.js b/src/app/index.js index a17d334dfbd795188275063e750d7a7291041952..5b2f9eee669f90b08c10fa0ef7497321cc5c7641 100644 --- a/src/app/index.js +++ b/src/app/index.js @@ -1,5 +1,6 @@ import {createI18nInstance} from '../i18n.js'; -import {html, css, LitElement} from 'lit-element'; +import {html, css} from 'lit-element'; +import VPULitElement from 'vpu-common/vpu-lit-element' import 'vpu-language-select'; import 'vpu-common/vpu-button.js'; import 'vpu-auth'; @@ -44,7 +45,7 @@ const importNotify = async (promise) => { }; -class VPUApp extends LitElement { +class VPUApp extends VPULitElement { constructor() { super(); this.lang = i18n.language; @@ -629,8 +630,15 @@ class VPUApp extends LitElement { if (!appHidden) { this.updateComplete.then(() => { const slot = this.shadowRoot.querySelector("slot"); - if (slot) + if (slot) { slot.remove(); + } + + const welcomeActivity = this._("vpu-welcome"); + + if (welcomeActivity) { + welcomeActivity.setMetaData(this.metadata, i18n.t('welcome.headline'), i18n.t('welcome.description')); + } }); } diff --git a/src/i18n/de/translation.json b/src/i18n/de/translation.json index 3be3753f3d4af3215847367d9a586f619d619d65..aa88e156de4e6a34b46c26208307c954025c85bd 100644 --- a/src/i18n/de/translation.json +++ b/src/i18n/de/translation.json @@ -19,7 +19,7 @@ "re-upload-all-button-title": "Alle fehlgeschlagen Uploads erneut hochladen" }, "welcome": { - "headline": "Willkommen beim Amtssignaturservice der TU Graz", + "headline": "Willkommen beim Signaturservice der TU Graz", "description": "Mit dieser Applikation können Sie, sofern Sie dazu berechtigt sind, PDF Dateien im Namen der TU Graz signieren" }, "error-summary": "Ein Fehler ist aufgetreten", diff --git a/src/i18n/en/translation.json b/src/i18n/en/translation.json index cc9ee368a4abdc4b14645a371f352dd102b1143a..cbced032189a0ae1a7c16f9a33e3d851f147e827 100644 --- a/src/i18n/en/translation.json +++ b/src/i18n/en/translation.json @@ -19,7 +19,7 @@ "re-upload-all-button-title": "Upload all failed uploads again" }, "welcome": { - "headline": "Welcome to the official signature service of the TU Graz", + "headline": "Welcome to the signature service of the TU Graz", "description": "With this application you can, provided you are authorized to do so, sign PDF files in the name of the TU Graz" }, "error-summary": "An error occurred", diff --git a/src/vpu-signature-welcome.js b/src/vpu-welcome.js similarity index 50% rename from src/vpu-signature-welcome.js rename to src/vpu-welcome.js index eb323014420c7f577b6f8c9357b6f21d399343a3..da9ef8ea7ae5e543f907c1aa805ec6c729641ac2 100644 --- a/src/vpu-signature-welcome.js +++ b/src/vpu-welcome.js @@ -11,15 +11,22 @@ class SignatureWelcome extends LitElement { constructor() { super(); this.lang = i18n.language; - + this.metadata = {}; } static get properties() { return { lang: { type: String }, + metadata: { type: Object, attribute: false }, }; } + setMetaData(metaData, headline, subHeadline) { + this.headline = headline || "Welcome"; + this.subHeadline = subHeadline || ""; + this.metadata = metaData; + } + update(changedProperties) { changedProperties.forEach((oldValue, propName) => { if (propName === "lang") { @@ -35,16 +42,33 @@ class SignatureWelcome extends LitElement { return css` ${commonStyles.getThemeCSS()} ${commonStyles.getGeneralCSS()} + + h2 { margin: inherit; } + p { margin: 0 0 10px 0; } + div.item { margin: 30px 0; } `; } render() { + let itemTemplates = []; + + for (let [key, data] of Object.entries(this.metadata)) { + + if (data['visible'] && (key !== "welcome")) { + itemTemplates.push(html` + <div class="item"> + <h2>${data.name[this.lang]}</h2> + ${data.description[this.lang]} + </div>`); + } + } + return html` - <p>${i18n.t('welcome.headline')}</p> - <br> - <p>${i18n.t('welcome.description')}</p> + <p>${this.headline}</p> + <p>${this.subHeadline}</p> + ${itemTemplates} `; } } -commonUtils.defineCustomElement('vpu-signature-welcome', SignatureWelcome); +commonUtils.defineCustomElement('vpu-welcome', SignatureWelcome);