Skip to content
Snippets Groups Projects
Commit deb2eb64 authored by Bekerle, Patrizio's avatar Bekerle, Patrizio :fire: Committed by Reiter, Christoph
Browse files

Start column search placeholder multi-language implementation (#4)

parent 4ea11e10
Branches
No related tags found
No related merge requests found
{ {
"print": "Drucken", "print": "Drucken",
"export-excel": "Excel Export", "export-excel": "Excel Export",
"export-csv": "CSV Export" "export-csv": "CSV Export",
"column-search-placeholder": "Nach {{fieldName}} suchen"
} }
\ No newline at end of file
{ {
"print": "Print", "print": "Print",
"export-excel": "Excel Export", "export-excel": "Excel Export",
"export-csv": "CSV Export" "export-csv": "CSV Export",
"column-search-placeholder": "Search for {{fieldName}}"
} }
\ No newline at end of file
...@@ -89,7 +89,7 @@ class DataTableView extends LitElement { ...@@ -89,7 +89,7 @@ class DataTableView extends LitElement {
return this; return this;
} }
set_datatable(data) { set_datatable(data, languageChange = false) {
const lang_obj = this.lang === 'de' ? de : en; const lang_obj = this.lang === 'de' ? de : en;
if (typeof this.columns === 'undefined' || !this.columns.length) { if (typeof this.columns === 'undefined' || !this.columns.length) {
...@@ -100,7 +100,11 @@ class DataTableView extends LitElement { ...@@ -100,7 +100,11 @@ class DataTableView extends LitElement {
if (this.columnSearching) { if (this.columnSearching) {
const existing_tfoot = this.shadowRoot.querySelector('table tfoot'); const existing_tfoot = this.shadowRoot.querySelector('table tfoot');
if (existing_tfoot === null || !existing_tfoot.hasChildNodes()) { if (existing_tfoot === null || !existing_tfoot.hasChildNodes() || languageChange) {
if (existing_tfoot !== null) {
existing_tfoot.remove();
}
const fragment = document.createDocumentFragment(); const fragment = document.createDocumentFragment();
const tfoot = document.createElement('tfoot'); const tfoot = document.createElement('tfoot');
const tr = document.createElement('tr'); const tr = document.createElement('tr');
...@@ -113,7 +117,7 @@ class DataTableView extends LitElement { ...@@ -113,7 +117,7 @@ class DataTableView extends LitElement {
input.type = 'text'; input.type = 'text';
input.className = 'column-search-line'; input.className = 'column-search-line';
input.id = 'input-col-' + index; input.id = 'input-col-' + index;
input.placeholder = 'Search in ' + element.title; input.placeholder = i18n.t('column-search-placeholder', {fieldName: element.title});
th.appendChild(input); th.appendChild(input);
} }
tr.appendChild(th); tr.appendChild(th);
...@@ -207,15 +211,18 @@ class DataTableView extends LitElement { ...@@ -207,15 +211,18 @@ class DataTableView extends LitElement {
} }
update(changedProperties) { update(changedProperties) {
let languageChange = false;
changedProperties.forEach((oldValue, propName) => { changedProperties.forEach((oldValue, propName) => {
if (propName === "lang") { if (propName === "lang") {
i18n.changeLanguage(this.lang).catch(e => { console.log(e)}); i18n.changeLanguage(this.lang).catch(e => { console.log(e)});
languageChange = true;
} }
}); });
super.update(changedProperties); super.update(changedProperties);
this.updateComplete.then(this.set_datatable(this.data)).catch(e => { console.log(e)}); this.updateComplete.then(this.set_datatable(this.data, languageChange)).catch(e => { console.log(e)});
} }
static get styles() { static get styles() {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment