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

Implement generic welcome activity (#3)

parent b1f987c5
No related branches found
No related tags found
No related merge requests found
Pipeline #9895 passed with warnings
{ {
"name": { "name": {
"de": "Amtssignatur", "de": "Signaturservice",
"en": "Offical Signature" "en": "Signatureservice"
}, },
"short_name": { "short_name": {
"de": "Amtssignatur", "de": "Signaturservice",
"en": "Offical Signature" "en": "Signatureservice"
}, },
"description": { "description": {
"de": "", "de": "",
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
}, },
"routing_name": "signature", "routing_name": "signature",
"activities": [ "activities": [
{"path": "vpu-signature-welcome.metadata.json"}, {"path": "vpu-welcome.metadata.json"},
{"path": "vpu-signature-pdf-upload.metadata.json"}, {"path": "vpu-signature-pdf-upload.metadata.json"},
{"path": "vpu-signature-profile.metadata.json", {"path": "vpu-signature-profile.metadata.json",
"visible": false} "visible": false}
......
{ {
"element": "vpu-signature-welcome", "element": "vpu-welcome",
"module_src": "vpu-signature-welcome.js", "module_src": "vpu-welcome.js",
"routing_name": "welcome", "routing_name": "welcome",
"name": { "name": {
"de": "Willkommen", "de": "Willkommen",
......
...@@ -144,7 +144,7 @@ export default { ...@@ -144,7 +144,7 @@ export default {
'src/vpu-signature.js', 'src/vpu-signature.js',
'src/vpu-signature-pdf-upload.js', 'src/vpu-signature-pdf-upload.js',
'src/vpu-signature-profile.js', 'src/vpu-signature-profile.js',
'src/vpu-signature-welcome.js', 'src/vpu-welcome.js',
] : glob.sync('test/**/*.js'), ] : glob.sync('test/**/*.js'),
output: { output: {
dir: 'dist', dir: 'dist',
......
import {createI18nInstance} from '../i18n.js'; 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-language-select';
import 'vpu-common/vpu-button.js'; import 'vpu-common/vpu-button.js';
import 'vpu-auth'; import 'vpu-auth';
...@@ -44,7 +45,7 @@ const importNotify = async (promise) => { ...@@ -44,7 +45,7 @@ const importNotify = async (promise) => {
}; };
class VPUApp extends LitElement { class VPUApp extends VPULitElement {
constructor() { constructor() {
super(); super();
this.lang = i18n.language; this.lang = i18n.language;
...@@ -629,8 +630,15 @@ class VPUApp extends LitElement { ...@@ -629,8 +630,15 @@ class VPUApp extends LitElement {
if (!appHidden) { if (!appHidden) {
this.updateComplete.then(() => { this.updateComplete.then(() => {
const slot = this.shadowRoot.querySelector("slot"); const slot = this.shadowRoot.querySelector("slot");
if (slot) if (slot) {
slot.remove(); slot.remove();
}
const welcomeActivity = this._("vpu-welcome");
if (welcomeActivity) {
welcomeActivity.setMetaData(this.metadata, i18n.t('welcome.headline'), i18n.t('welcome.description'));
}
}); });
} }
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
"re-upload-all-button-title": "Alle fehlgeschlagen Uploads erneut hochladen" "re-upload-all-button-title": "Alle fehlgeschlagen Uploads erneut hochladen"
}, },
"welcome": { "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" "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", "error-summary": "Ein Fehler ist aufgetreten",
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
"re-upload-all-button-title": "Upload all failed uploads again" "re-upload-all-button-title": "Upload all failed uploads again"
}, },
"welcome": { "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" "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", "error-summary": "An error occurred",
......
...@@ -11,15 +11,22 @@ class SignatureWelcome extends LitElement { ...@@ -11,15 +11,22 @@ class SignatureWelcome extends LitElement {
constructor() { constructor() {
super(); super();
this.lang = i18n.language; this.lang = i18n.language;
this.metadata = {};
} }
static get properties() { static get properties() {
return { return {
lang: { type: String }, lang: { type: String },
metadata: { type: Object, attribute: false },
}; };
} }
setMetaData(metaData, headline, subHeadline) {
this.headline = headline || "Welcome";
this.subHeadline = subHeadline || "";
this.metadata = metaData;
}
update(changedProperties) { update(changedProperties) {
changedProperties.forEach((oldValue, propName) => { changedProperties.forEach((oldValue, propName) => {
if (propName === "lang") { if (propName === "lang") {
...@@ -35,16 +42,33 @@ class SignatureWelcome extends LitElement { ...@@ -35,16 +42,33 @@ class SignatureWelcome extends LitElement {
return css` return css`
${commonStyles.getThemeCSS()} ${commonStyles.getThemeCSS()}
${commonStyles.getGeneralCSS()} ${commonStyles.getGeneralCSS()}
h2 { margin: inherit; }
p { margin: 0 0 10px 0; }
div.item { margin: 30px 0; }
`; `;
} }
render() { 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` return html`
<p>${i18n.t('welcome.headline')}</p> <p>${this.headline}</p>
<br> <p>${this.subHeadline}</p>
<p>${i18n.t('welcome.description')}</p> ${itemTemplates}
`; `;
} }
} }
commonUtils.defineCustomElement('vpu-signature-welcome', SignatureWelcome); commonUtils.defineCustomElement('vpu-welcome', SignatureWelcome);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment