From 7625e7295ef6dbcf8edd1dbaccc0da6c8cfb29ea Mon Sep 17 00:00:00 2001 From: AlphaX-Projects <77661270+AlphaX-Projects@users.noreply.github.com> Date: Thu, 14 Apr 2022 19:26:07 +0200 Subject: [PATCH] Translate Node Management Page --- qortal-ui-core/language/cn.json | 32 ++ qortal-ui-core/language/de.json | 32 ++ qortal-ui-core/language/fr.json | 32 ++ qortal-ui-core/language/pl.json | 32 ++ qortal-ui-core/language/sp.json | 32 ++ qortal-ui-core/language/us.json | 32 ++ .../node-management/node-management.src.js | 335 ++++++++++-------- 7 files changed, 372 insertions(+), 155 deletions(-) diff --git a/qortal-ui-core/language/cn.json b/qortal-ui-core/language/cn.json index fdd04182..5a982124 100644 --- a/qortal-ui-core/language/cn.json +++ b/qortal-ui-core/language/cn.json @@ -505,5 +505,37 @@ "pchange15": "Submit", "pchange16": "Guess incorrect!", "pchange17": "Reward claim submitted - check wallet for reward!" + }, + "nodepage": { + "nchange1": "Node management for:", + "nchange2": "Node has been online for:", + "nchange3": "Node's minting accounts", + "nchange4": "Add minting account", + "nchange5": "If you would like to mint with your own account you will need to create a rewardshare transaction to yourself (with rewardshare percent set to 0), and then mint with the rewardshare key it gives you.", + "nchange6": "Rewardshare key", + "nchange7": "Adding minting account", + "nchange8": "Add", + "nchange9": "Minting Account", + "nchange10": "Recipient Account", + "nchange11": "Action", + "nchange12": "Remove", + "nchange13": "No minting accounts found for this node", + "nchange14": "Peers connected to this node", + "nchange15": "Add peer", + "nchange16": "Type the peer you wish to add's address below", + "nchange17": "Peer Address", + "nchange18": "Address", + "nchange19": "Last Height", + "nchange20": "Build Version", + "nchange21": "Connected for", + "nchange22": "Action", + "nchange23": "Force Sync", + "nchange24": "Node has no connected peers", + "nchange25": "Starting Sync with Peer: ", + "nchange26": "Successfully removed Peer: ", + "nchange27": "Minting Node Added Successfully!", + "nchange28": "Failed to Add Minting Node!", + "nchange29": "Successfully Removed Minting Account!", + "nchange30": "Failed to Remove Minting Account!" } } \ No newline at end of file diff --git a/qortal-ui-core/language/de.json b/qortal-ui-core/language/de.json index ff6d1d80..00297888 100644 --- a/qortal-ui-core/language/de.json +++ b/qortal-ui-core/language/de.json @@ -505,5 +505,37 @@ "pchange15": "Einreichen", "pchange16": "Vermutung falsch!", "pchange17": "Prämienanspruch eingereicht - Geldbörse auf Prämie prüfen!" + }, + "nodepage": { + "nchange1": "Knotenverwaltung für:", + "nchange2": "Knoten ist online für:", + "nchange3": "Prägekonten des Knotens", + "nchange4": "Prägekonto hinzufügen", + "nchange5": "Wenn Sie mit Ihrem eigenen Konto prägen möchten, müssen Sie eine Rewardshare-Transaktion für sich selbst erstellen (wobei der Rewardshare-Prozentsatz auf 0 gesetzt ist) und dann mit dem Rewardshare-Schlüssel prägen, den Ihnen zugeteilt wird.", + "nchange6": "Belohnungsschlüssel", + "nchange7": "Adding minting account", + "nchange8": "Hinzufügen", + "nchange9": "Minting-Konto hinzufügen", + "nchange10": "Empfängerkonto", + "nchange11": "Aktion", + "nchange12": "Entfernen", + "nchange13": "Keine Prägekonten für diesen Knoten gefunden", + "nchange14": "Mit diesem Knoten verbundene Peers", + "nchange15": "Peer hinzufügen", + "nchange16": "Geben Sie unten die Adresse des Peers ein, dessen Adresse Sie hinzufügen möchten", + "nchange17": "Peer-Adresse", + "nchange18": "Adresse", + "nchange19": "Letzte Höhe", + "nchange20": "Build-Version", + "nchange21": "Verbunden seit", + "nchange22": "Aktion", + "nchange23": "Sync erzwingen", + "nchange24": "Knoten hat keine verbundenen Peers", + "nchange25": "Starte Synchronisierung mit Peer: ", + "nchange26": "Peer erfolgreich entfernt: ", + "nchange27": "Prägeknoten erfolgreich hinzugefügt!", + "nchange28": "Prägeknoten konnte nicht hinzugefügt werden!", + "nchange29": "Prägekonto erfolgreich entfernt!", + "nchange30": "Fehler beim Entfernen des Prägekontos!" } } \ No newline at end of file diff --git a/qortal-ui-core/language/fr.json b/qortal-ui-core/language/fr.json index 6c2f69bb..a350102a 100644 --- a/qortal-ui-core/language/fr.json +++ b/qortal-ui-core/language/fr.json @@ -505,5 +505,37 @@ "pchange15": "Submit", "pchange16": "Guess incorrect!", "pchange17": "Reward claim submitted - check wallet for reward!" + }, + "nodepage": { + "nchange1": "Node management for:", + "nchange2": "Node has been online for:", + "nchange3": "Node's minting accounts", + "nchange4": "Add minting account", + "nchange5": "If you would like to mint with your own account you will need to create a rewardshare transaction to yourself (with rewardshare percent set to 0), and then mint with the rewardshare key it gives you.", + "nchange6": "Rewardshare key", + "nchange7": "Adding minting account", + "nchange8": "Add", + "nchange9": "Minting Account", + "nchange10": "Recipient Account", + "nchange11": "Action", + "nchange12": "Remove", + "nchange13": "No minting accounts found for this node", + "nchange14": "Peers connected to this node", + "nchange15": "Add peer", + "nchange16": "Type the peer you wish to add's address below", + "nchange17": "Peer Address", + "nchange18": "Address", + "nchange19": "Last Height", + "nchange20": "Build Version", + "nchange21": "Connected for", + "nchange22": "Action", + "nchange23": "Force Sync", + "nchange24": "Node has no connected peers", + "nchange25": "Starting Sync with Peer: ", + "nchange26": "Successfully removed Peer: ", + "nchange27": "Minting Node Added Successfully!", + "nchange28": "Failed to Add Minting Node!", + "nchange29": "Successfully Removed Minting Account!", + "nchange30": "Failed to Remove Minting Account!" } } \ No newline at end of file diff --git a/qortal-ui-core/language/pl.json b/qortal-ui-core/language/pl.json index c0f9430d..12a959e6 100644 --- a/qortal-ui-core/language/pl.json +++ b/qortal-ui-core/language/pl.json @@ -505,5 +505,37 @@ "pchange15": "Submit", "pchange16": "Guess incorrect!", "pchange17": "Reward claim submitted - check wallet for reward!" + }, + "nodepage": { + "nchange1": "Node management for:", + "nchange2": "Node has been online for:", + "nchange3": "Node's minting accounts", + "nchange4": "Add minting account", + "nchange5": "If you would like to mint with your own account you will need to create a rewardshare transaction to yourself (with rewardshare percent set to 0), and then mint with the rewardshare key it gives you.", + "nchange6": "Rewardshare key", + "nchange7": "Adding minting account", + "nchange8": "Add", + "nchange9": "Minting Account", + "nchange10": "Recipient Account", + "nchange11": "Action", + "nchange12": "Remove", + "nchange13": "No minting accounts found for this node", + "nchange14": "Peers connected to this node", + "nchange15": "Add peer", + "nchange16": "Type the peer you wish to add's address below", + "nchange17": "Peer Address", + "nchange18": "Address", + "nchange19": "Last Height", + "nchange20": "Build Version", + "nchange21": "Connected for", + "nchange22": "Action", + "nchange23": "Force Sync", + "nchange24": "Node has no connected peers", + "nchange25": "Starting Sync with Peer: ", + "nchange26": "Successfully removed Peer: ", + "nchange27": "Minting Node Added Successfully!", + "nchange28": "Failed to Add Minting Node!", + "nchange29": "Successfully Removed Minting Account!", + "nchange30": "Failed to Remove Minting Account!" } } diff --git a/qortal-ui-core/language/sp.json b/qortal-ui-core/language/sp.json index dbcd3c20..2715e6d9 100644 --- a/qortal-ui-core/language/sp.json +++ b/qortal-ui-core/language/sp.json @@ -505,5 +505,37 @@ "pchange15": "Submit", "pchange16": "Guess incorrect!", "pchange17": "Reward claim submitted - check wallet for reward!" + }, + "nodepage": { + "nchange1": "Node management for:", + "nchange2": "Node has been online for:", + "nchange3": "Node's minting accounts", + "nchange4": "Add minting account", + "nchange5": "If you would like to mint with your own account you will need to create a rewardshare transaction to yourself (with rewardshare percent set to 0), and then mint with the rewardshare key it gives you.", + "nchange6": "Rewardshare key", + "nchange7": "Adding minting account", + "nchange8": "Add", + "nchange9": "Minting Account", + "nchange10": "Recipient Account", + "nchange11": "Action", + "nchange12": "Remove", + "nchange13": "No minting accounts found for this node", + "nchange14": "Peers connected to this node", + "nchange15": "Add peer", + "nchange16": "Type the peer you wish to add's address below", + "nchange17": "Peer Address", + "nchange18": "Address", + "nchange19": "Last Height", + "nchange20": "Build Version", + "nchange21": "Connected for", + "nchange22": "Action", + "nchange23": "Force Sync", + "nchange24": "Node has no connected peers", + "nchange25": "Starting Sync with Peer: ", + "nchange26": "Successfully removed Peer: ", + "nchange27": "Minting Node Added Successfully!", + "nchange28": "Failed to Add Minting Node!", + "nchange29": "Successfully Removed Minting Account!", + "nchange30": "Failed to Remove Minting Account!" } } \ No newline at end of file diff --git a/qortal-ui-core/language/us.json b/qortal-ui-core/language/us.json index e28811fb..1d0805ec 100644 --- a/qortal-ui-core/language/us.json +++ b/qortal-ui-core/language/us.json @@ -505,5 +505,37 @@ "pchange15": "Submit", "pchange16": "Guess incorrect!", "pchange17": "Reward claim submitted - check wallet for reward!" + }, + "nodepage": { + "nchange1": "Node management for:", + "nchange2": "Node has been online for:", + "nchange3": "Node's minting accounts", + "nchange4": "Add minting account", + "nchange5": "If you would like to mint with your own account you will need to create a rewardshare transaction to yourself (with rewardshare percent set to 0), and then mint with the rewardshare key it gives you.", + "nchange6": "Rewardshare key", + "nchange7": "Adding minting account", + "nchange8": "Add", + "nchange9": "Minting Account", + "nchange10": "Recipient Account", + "nchange11": "Action", + "nchange12": "Remove", + "nchange13": "No minting accounts found for this node", + "nchange14": "Peers connected to this node", + "nchange15": "Add peer", + "nchange16": "Type the peer you wish to add's address below", + "nchange17": "Peer Address", + "nchange18": "Address", + "nchange19": "Last Height", + "nchange20": "Build Version", + "nchange21": "Connected for", + "nchange22": "Action", + "nchange23": "Force Sync", + "nchange24": "Node has no connected peers", + "nchange25": "Starting Sync with Peer: ", + "nchange26": "Successfully removed Peer: ", + "nchange27": "Minting Node Added Successfully!", + "nchange28": "Failed to Add Minting Node!", + "nchange29": "Successfully Removed Minting Account!", + "nchange30": "Failed to Remove Minting Account!" } } \ No newline at end of file diff --git a/qortal-ui-plugins/plugins/core/node-management/node-management.src.js b/qortal-ui-plugins/plugins/core/node-management/node-management.src.js index 1a702a06..59a85b90 100644 --- a/qortal-ui-plugins/plugins/core/node-management/node-management.src.js +++ b/qortal-ui-plugins/plugins/core/node-management/node-management.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, get, translate, translateUnsafeHTML, registerTranslateConfig } from 'lit-translate' + +registerTranslateConfig({ + loader: lang => fetch(`/language/${lang}.json`).then(res => res.json()) +}) import '@polymer/paper-spinner/paper-spinner-lite.js' import '@material/mwc-icon' @@ -143,168 +148,165 @@ class NodeManagement extends LitElement { } render() { - return html` -
-
-

Node management for: ${this.nodeDomain}

-
Node has been online for: ${this.upTime}
- -

-
-
-

- Node's minting accounts -

- - this.shadowRoot - .querySelector("#addMintingAccountDialog") - .show()} - >addAdd minting account -
- - - -
- If you would like to mint with your own account you will need to - create a rewardshare transaction to yourself (with rewardshare - percent set to 0), and then mint with the rewardshare key it - gives you. -
-
- -
- - ${this.addMintingAccountMessage}   - - - - Doing something delicious   - - -
- - Add - - - Close - -
- - - - - { - render(html` this.removeMintingAccount(data.item.publicKey)}>createRemove`, root) - }}> - - ${this.isEmptyArray(this.mintingAccounts) ? html`No minting accounts found for this node` : ""} -
- -
-
-
-

- Peers connected to node - (${this.peers.length}) -

- this.shadowRoot.querySelector("#addPeerDialog").show()}>addAdd peer -
- - -
Type the peer you wish to add's address below
-
- -
- ${this.addPeerMessage}   - - - -
- - Add - - - Close - -
- - - - - - - { - render(html` this.removePeer(data.item.address, data.index)}>deleteRemove this.forceSyncPeer(data.item.address, data.index)}>Force Sync`, root) - }}> - - - ${this.isEmptyArray(this.peers) ? html`Node has no connected peers` : ""} -
-
-
-
- `; + return html` +
+
+

${translate("nodepage.nchange1")} ${this.nodeDomain}

+
${translate("nodepage.nchange2")} ${this.upTime}
+

+
+
+

${translate("nodepage.nchange3")}

+ this.shadowRoot.querySelector("#addMintingAccountDialog").show()} + > + add + ${translate("nodepage.nchange4")} + +
+ + + +
${translate("nodepage.nchange5")}
+
+ + +
+ + ${this.addMintingAccountMessage}   + + + + ${translate("nodepage.nchange7")}   + + + +
+ + ${translate("nodepage.nchange8")} + + + ${translate("general.close")} + +
+ + + + + { + render(html` this.removeMintingAccount(data.item.publicKey)}>create ${translate("nodepage.nchange12")}`, root) + }}> + + ${this.isEmptyArray(this.mintingAccounts) ? html`${translate("nodepage.nchange13")}` : ""} +
+
+
+
+

+ ${translate("nodepage.nchange14")} + (${this.peers.length}) +

+ this.shadowRoot.querySelector("#addPeerDialog").show()}>add ${translate("nodepage.nchange15")} +
+ + +
${translate("nodepage.nchange16")}
+
+ +
+ ${this.addPeerMessage}   + + + + +
+ + ${translate("nodepage.nchange8")} + + + ${translate("general.close")} + +
+ + + + + + + { + render(html` this.removePeer(data.item.address, data.index)}>delete ${translate("nodepage.nchange12")} this.forceSyncPeer(data.item.address, data.index)}> ${translate("nodepage.nchange23")}`, root) + }}> + + ${this.isEmptyArray(this.peers) ? html`${translate("nodepage.nchange24")}` : ""} +
+
+
+
+ `; } firstUpdated() { this.changeTheme() - - setInterval(() => { - this.changeTheme(); - }, 100) + this.changeLanguage() // Call updateMintingAccounts - this.updateMintingAccounts(); + this.updateMintingAccounts() window.addEventListener("contextmenu", (event) => { event.preventDefault(); this._textMenu(event) - }); + }) + window.addEventListener("click", () => { parentEpml.request('closeCopyTextMenu', null) - }); + }) + + window.addEventListener('storage', () => { + const checkLanguage = localStorage.getItem('qortalLanguage') + const checkTheme = localStorage.getItem('qortalTheme') + + use(checkLanguage) + + if (checkTheme === 'dark') { + this.theme = 'dark' + } else { + this.theme = 'light' + } + document.querySelector('html').setAttribute('theme', this.theme) + }) + window.onkeyup = (e) => { if (e.keyCode === 27) parentEpml.request('closeCopyTextMenu', null) } @@ -396,6 +398,25 @@ class NodeManagement 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) + } + } + + renderErr1Text() { + return html`${translate("nodepage.nchange27")}` + } + + renderErr2Text() { + return html`${translate("nodepage.nchange28")}` + } + forceSyncPeer(peerAddress, rowIndex) { parentEpml .request("apiCall", { @@ -404,7 +425,8 @@ class NodeManagement extends LitElement { body: peerAddress, }) .then((res) => { - parentEpml.request('showSnackBar', "Starting Sync with Peer: " + peerAddress); + let err3string = get("nodepage.nchange25") + parentEpml.request('showSnackBar', `${err3string}` + peerAddress); }); } @@ -416,7 +438,8 @@ class NodeManagement extends LitElement { body: peerAddress, }) .then((res) => { - parentEpml.request('showSnackBar', "Successfully removed Peer: " + peerAddress); + let err4string = get("nodepage.nchange26") + parentEpml.request('showSnackBar', `${err4string}` + peerAddress); this.peers.splice(rowIndex, 1); }); } @@ -460,11 +483,11 @@ class NodeManagement extends LitElement { if (res === true) { this.updateMintingAccounts(); this.addMintingAccountKey = ""; - this.addMintingAccountMessage = "Minting Node Added Successfully!"; + this.addMintingAccountMessage = this.renderErr1Text(); this.addMintingAccountLoading = false; } else { this.addMintingAccountKey = ""; - this.addMintingAccountMessage = "Failed to Add Minting Node!"; // Corrected an error here thanks to crow (-_-) + this.addMintingAccountMessage = this.renderErr2Text(); // Corrected an error here thanks to crow (-_-) this.addMintingAccountLoading = false; } }); @@ -516,10 +539,12 @@ class NodeManagement extends LitElement { if (res === true) { this.updateMintingAccounts(); this.removeMintingAccountLoading = false; - parentEpml.request('showSnackBar', "Successfully Removed Minting Account!"); + let err5string = get("nodepage.nchange29") + parentEpml.request('showSnackBar', `${err5string}`); } else { this.removeMintingAccountLoading = false; - parentEpml.request('showSnackBar', "Failed to Remove Minting Account!"); + let err6string = get("nodepage.nchange30") + parentEpml.request('showSnackBar', `${err6string}`); } }); }