From fa60cd9cfa96ba8163d8d645cdf1c88551e85967 Mon Sep 17 00:00:00 2001 From: AlphaX-Projects <77661270+AlphaX-Projects@users.noreply.github.com> Date: Tue, 12 Apr 2022 12:17:01 +0200 Subject: [PATCH] Translate Name Registration --- qortal-ui-core/language/cn.json | 20 +++++ qortal-ui-core/language/de.json | 20 +++++ qortal-ui-core/language/fr.json | 20 +++++ qortal-ui-core/language/pl.json | 20 +++++ qortal-ui-core/language/sp.json | 20 +++++ qortal-ui-core/language/us.json | 20 +++++ .../name-registration.src.js | 79 +++++++++++++------ 7 files changed, 177 insertions(+), 22 deletions(-) diff --git a/qortal-ui-core/language/cn.json b/qortal-ui-core/language/cn.json index 0b6e57d7..0deea356 100644 --- a/qortal-ui-core/language/cn.json +++ b/qortal-ui-core/language/cn.json @@ -263,5 +263,25 @@ "rchange20": "CANNOT CREATE REWARD SHARE! at level", "rchange21": "Reward Share Successful!", "rchange22": "Reward Share Removed Successfully!" + }, + "registernamepage": { + "nchange1": "Name Registration", + "nchange2": "Register Name", + "nchange3": "Registered Names", + "nchange4": "Avatar", + "nchange5": "Name", + "nchange6": "Owner", + "nchange7": "Action", + "nchange8": "No names registered by this account!", + "nchange9": "Register a Name!", + "nchange10": "Description (optional)", + "nchange11": "Doing something delicious", + "nchange12": "Registering Name", + "nchange13": "The current name registration fee is", + "nchange14": "Register", + "nchange15": "Set Avatar", + "nchange16": "Need Core Update", + "nchange17": "Name Already Exists!", + "nchange18": "Name Registration Successful!" } } \ No newline at end of file diff --git a/qortal-ui-core/language/de.json b/qortal-ui-core/language/de.json index 06e0ea07..bfc8f665 100644 --- a/qortal-ui-core/language/de.json +++ b/qortal-ui-core/language/de.json @@ -263,5 +263,25 @@ "rchange20": "BELOHNUNGSANTEIL KANN NICHT ERSTELLT WERDEN! auf Ebene", "rchange21": "Belohnungsanteil erfolgreich!", "rchange22": "Belohnungsanteil wurde erfolgreich entfernt!" + }, + "registernamepage": { + "nchange1": "Namensregistrierung", + "nchange2": "Registrieren Sie einen Namen", + "nchange3": "Eingetragene Namen", + "nchange4": "Avatar", + "nchange5": "Name", + "nchange6": "Eigentümer", + "nchange7": "Aktion", + "nchange8": "Keine Namen von diesem Konto registriert!", + "nchange9": "Registrieren Sie einen Namen!", + "nchange10": "Beschreibung (optional)", + "nchange11": "Mache Etwas Leckeres", + "nchange12": "Registriere den Name", + "nchange13": "Die aktuelle Namensregistrierungsgebühr beträgt", + "nchange14": "Registrieren", + "nchange15": "Avatar festlegen", + "nchange16": "Core-Update erforderlich", + "nchange17": "Name existiert bereits!", + "nchange18": "Namensregistrierung erfolgreich!" } } \ No newline at end of file diff --git a/qortal-ui-core/language/fr.json b/qortal-ui-core/language/fr.json index 6f557512..ee4c99e8 100644 --- a/qortal-ui-core/language/fr.json +++ b/qortal-ui-core/language/fr.json @@ -263,5 +263,25 @@ "rchange20": "CANNOT CREATE REWARD SHARE! at level", "rchange21": "Reward Share Successful!", "rchange22": "Reward Share Removed Successfully!" + }, + "registernamepage": { + "nchange1": "Name Registration", + "nchange2": "Register Name", + "nchange3": "Registered Names", + "nchange4": "Avatar", + "nchange5": "Name", + "nchange6": "Owner", + "nchange7": "Action", + "nchange8": "No names registered by this account!", + "nchange9": "Register a Name!", + "nchange10": "Description (optional)", + "nchange11": "Doing something delicious", + "nchange12": "Registering Name", + "nchange13": "The current name registration fee is", + "nchange14": "Register", + "nchange15": "Set Avatar", + "nchange16": "Need Core Update", + "nchange17": "Name Already Exists!", + "nchange18": "Name Registration Successful!" } } \ No newline at end of file diff --git a/qortal-ui-core/language/pl.json b/qortal-ui-core/language/pl.json index 8b487573..0f76a6d7 100644 --- a/qortal-ui-core/language/pl.json +++ b/qortal-ui-core/language/pl.json @@ -263,5 +263,25 @@ "rchange20": "CANNOT CREATE REWARD SHARE! at level", "rchange21": "Reward Share Successful!", "rchange22": "Reward Share Removed Successfully!" + }, + "registernamepage": { + "nchange1": "Name Registration", + "nchange2": "Register Name", + "nchange3": "Registered Names", + "nchange4": "Avatar", + "nchange5": "Name", + "nchange6": "Owner", + "nchange7": "Action", + "nchange8": "No names registered by this account!", + "nchange9": "Register a Name!", + "nchange10": "Description (optional)", + "nchange11": "Doing something delicious", + "nchange12": "Registering Name", + "nchange13": "The current name registration fee is", + "nchange14": "Register", + "nchange15": "Set Avatar", + "nchange16": "Need Core Update", + "nchange17": "Name Already Exists!", + "nchange18": "Name Registration Successful!" } } diff --git a/qortal-ui-core/language/sp.json b/qortal-ui-core/language/sp.json index 465b1f08..a0ff1f28 100644 --- a/qortal-ui-core/language/sp.json +++ b/qortal-ui-core/language/sp.json @@ -263,5 +263,25 @@ "rchange20": "CANNOT CREATE REWARD SHARE! at level", "rchange21": "Reward Share Successful!", "rchange22": "Reward Share Removed Successfully!" + }, + "registernamepage": { + "nchange1": "Name Registration", + "nchange2": "Register Name", + "nchange3": "Registered Names", + "nchange4": "Avatar", + "nchange5": "Name", + "nchange6": "Owner", + "nchange7": "Action", + "nchange8": "No names registered by this account!", + "nchange9": "Register a Name!", + "nchange10": "Description (optional)", + "nchange11": "Doing something delicious", + "nchange12": "Registering Name", + "nchange13": "The current name registration fee is", + "nchange14": "Register", + "nchange15": "Set Avatar", + "nchange16": "Need Core Update", + "nchange17": "Name Already Exists!", + "nchange18": "Name Registration Successful!" } } \ No newline at end of file diff --git a/qortal-ui-core/language/us.json b/qortal-ui-core/language/us.json index 15205840..fe0c2d4d 100644 --- a/qortal-ui-core/language/us.json +++ b/qortal-ui-core/language/us.json @@ -263,5 +263,25 @@ "rchange20": "CANNOT CREATE REWARD SHARE! at level", "rchange21": "Reward Share Successful!", "rchange22": "Reward Share Removed Successfully!" + }, + "registernamepage": { + "nchange1": "Name Registration", + "nchange2": "Register Name", + "nchange3": "Registered Names", + "nchange4": "Avatar", + "nchange5": "Name", + "nchange6": "Owner", + "nchange7": "Action", + "nchange8": "No names registered by this account!", + "nchange9": "Register a Name!", + "nchange10": "Description (optional)", + "nchange11": "Doing something delicious", + "nchange12": "Registering Name", + "nchange13": "The current name registration fee is", + "nchange14": "Register", + "nchange15": "Set Avatar", + "nchange16": "Need Core Update", + "nchange17": "Name Already Exists!", + "nchange18": "Name Registration Successful!" } } \ No newline at end of file diff --git a/qortal-ui-plugins/plugins/core/name-registration/name-registration.src.js b/qortal-ui-plugins/plugins/core/name-registration/name-registration.src.js index ae86dcbf..b1faa934 100644 --- a/qortal-ui-plugins/plugins/core/name-registration/name-registration.src.js +++ b/qortal-ui-plugins/plugins/core/name-registration/name-registration.src.js @@ -1,6 +1,11 @@ import { LitElement, html, css } from 'lit' import { render } from 'lit/html.js' import { Epml } from '../../../epml.js' +import { use, translate, translateUnsafeHTML, registerTranslateConfig } from 'lit-translate' + +registerTranslateConfig({ + loader: lang => fetch(`/language/${lang}.json`).then(res => res.json()) +}) import '@material/mwc-icon' import '@material/mwc-button' @@ -94,49 +99,49 @@ class NameRegistration extends LitElement { return html`
-

Name Registration

- this.shadowRoot.querySelector('#registerNameDialog').show()}>addRegister Name +

${translate("registernamepage.nchange1")}

+ this.shadowRoot.querySelector('#registerNameDialog').show()}>add${translate("registernamepage.nchange2")}
-

Registered Names

+

${translate("registernamepage.nchange3")}

- { + { render(html`${this.renderAvatar(data.item)}`, root) }}> - - - { + + + { render(html`${this.renderAvatarButton(data.item)}`, root) }}> ${this.isEmptyArray(this.names) ? html` - No names registered by this account! + ${translate("registernamepage.nchange8")} `: ''}
-
Register a Name!
+
${translate("registernamepage.nchange9")}

- +

- +

- Doing something delicious   + ${translate("registernamepage.nchange11")}   + alt="${translate("registernamepage.nchange12")}"> ${this.message}
- The current name registration fee is ${this.fee} QORT. + ${translate("registernamepage.nchange13")} ${this.fee} QORT.
@@ -144,15 +149,16 @@ class NameRegistration extends LitElement { ?disabled="${this.registerNameLoading}" slot="primaryAction" @click=${this.registerName} - > - Register + > + ${translate("registernamepage.nchange14")} - Close + class="red" + > + ${translate("general.close")}
@@ -167,6 +173,12 @@ class NameRegistration extends LitElement { this.changeTheme(); }, 100) + this.changeLanguage() + + setInterval(() => { + this.changeLanguage() + }, 100) + this.unitFee(); window.addEventListener("contextmenu", (event) => { @@ -228,6 +240,29 @@ class NameRegistration extends LitElement { document.querySelector('html').setAttribute('theme', this.theme); } + changeLanguage() { + const checkLanguage = localStorage.getItem('qortalLanguage') + + if (checkLanguage === null || checkLanguage.length === 0) { + localStorage.setItem('qortalLanguage', 'us') + use('us') + } else { + use(checkLanguage) + } + } + + renderCoreText() { + return html`${translate("registernamepage.nchange16")}` + } + + renderSuccessText() { + return html`${translate("registernamepage.nchange18")}` + } + + renderFailText() { + return html`${translate("registernamepage.nchange17")}` + } + renderAvatar(nameObj) { let name = nameObj.name const myNode = window.parent.reduxStore.getState().app.nodeConfig.knownNodes[window.parent.reduxStore.getState().app.nodeConfig.node] @@ -237,7 +272,7 @@ class NameRegistration extends LitElement { } renderAvatarButton(nameObj) { - return html` this.uploadAvatar(nameObj)}>perm_identity Set Avatar` + return html` this.uploadAvatar(nameObj)}>perm_identity ${translate("registernamepage.nchange15")}` } async uploadAvatar(nameObj) { @@ -260,7 +295,7 @@ class NameRegistration extends LitElement { this.fee = (Number(json) / 1e8).toFixed(2); }) .catch((response) => { - console.log(response.status, response.statusText, 'Need Core Update'); + console.log(response.status, response.statusText, this.renderCoreText()); }) } @@ -314,7 +349,7 @@ class NameRegistration extends LitElement { getTxnRequestResponse(myTransaction) } else { this.error = true - this.message = `Name Already Exists!` + this.message = this.renderFailText() } } @@ -339,7 +374,7 @@ class NameRegistration extends LitElement { this.message = txnResponse.message throw new Error(txnResponse) } else if (txnResponse.success === true && !txnResponse.data.error) { - this.message = 'Name Registration Successful!' + this.message = this.renderSuccessText() this.error = false } else { this.error = true