From 43d7410454d7baa24d18b8a6cc97a5471e8e620d Mon Sep 17 00:00:00 2001
From: Benoit Lavenier <benoit.lavenier@e-is.pro>
Date: Sat, 25 Feb 2023 14:45:16 +0100
Subject: [PATCH] [enh] Add missing PT flag icon [fix] Fix flags icon size (DE,
 CT) [fix] Rename i18n file 'ca' into 'es-CT'

---
 resources/flag/flag-ca.svg                    |   0
 resources/flag/flag-ca.xcf                    | Bin 0 -> 3857 bytes
 resources/flag/flag-ct.svg                    |   4 +
 resources/flag/flag-ct.xcf                    | Bin 0 -> 4251 bytes
 resources/flag/flag-de.svg                    |   5 +
 resources/flag/flag-de.xcf                    | Bin 0 -> 4731 bytes
 resources/flag/flag-pt.svg                    |  57 ++
 resources/flag/flag-pt.xcf                    | Bin 0 -> 5465 bytes
 .../{locale-ca.json => locale-es-CT.json}     |   0
 www/img/flag-ca.png                           | Bin 5913 -> 0 bytes
 www/img/flag-ct.png                           | Bin 0 -> 751 bytes
 www/img/flag-de.png                           | Bin 162 -> 724 bytes
 www/js/services/settings-services.js          |   2 +-
 .../{locale-ca.json => locale-es-CT.json}     |   0
 www/plugins/es/locale-pt-PT.json              | 609 ------------------
 15 files changed, 67 insertions(+), 610 deletions(-)
 create mode 100644 resources/flag/flag-ca.svg
 create mode 100644 resources/flag/flag-ca.xcf
 create mode 100644 resources/flag/flag-ct.svg
 create mode 100644 resources/flag/flag-ct.xcf
 create mode 100644 resources/flag/flag-de.svg
 create mode 100644 resources/flag/flag-de.xcf
 create mode 100644 resources/flag/flag-pt.svg
 create mode 100644 resources/flag/flag-pt.xcf
 rename www/i18n/{locale-ca.json => locale-es-CT.json} (100%)
 delete mode 100644 www/img/flag-ca.png
 create mode 100644 www/img/flag-ct.png
 rename www/plugins/es/i18n/{locale-ca.json => locale-es-CT.json} (100%)
 delete mode 100644 www/plugins/es/locale-pt-PT.json

diff --git a/resources/flag/flag-ca.svg b/resources/flag/flag-ca.svg
new file mode 100644
index 000000000..e69de29bb
diff --git a/resources/flag/flag-ca.xcf b/resources/flag/flag-ca.xcf
new file mode 100644
index 0000000000000000000000000000000000000000..25a1517a26a3a7fb1e1a9cce264fb13089ab7c78
GIT binary patch
literal 3857
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
W7DUE#Hdy0V&4($o7S3|Q)c*-i9+-0g

literal 0
HcmV?d00001

diff --git a/resources/flag/flag-ct.svg b/resources/flag/flag-ct.svg
new file mode 100644
index 000000000..1c47d7d8d
--- /dev/null
+++ b/resources/flag/flag-ct.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icons-es-ct" viewBox="0 0 640 480">
+  <path fill="#fcdd09" d="M0 0h640v480H0z"/>
+  <path stroke="#da121a" stroke-width="60" d="M0 90h810m0 120H0m0 120h810m0 120H0" transform="scale(.79012 .88889)"/>
+</svg>
\ No newline at end of file
diff --git a/resources/flag/flag-ct.xcf b/resources/flag/flag-ct.xcf
new file mode 100644
index 0000000000000000000000000000000000000000..a8a14d272a6e87ed5bcc9597097b7739ddbafbc5
GIT binary patch
literal 4251
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

literal 0
HcmV?d00001

diff --git a/resources/flag/flag-de.svg b/resources/flag/flag-de.svg
new file mode 100644
index 000000000..e107b4aee
--- /dev/null
+++ b/resources/flag/flag-de.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icons-de" viewBox="0 0 640 480">
+  <path fill="#ffce00" d="M0 320h640v160H0z"/>
+  <path d="M0 0h640v160H0z"/>
+  <path fill="#d00" d="M0 160h640v160H0z"/>
+</svg>
\ No newline at end of file
diff --git a/resources/flag/flag-de.xcf b/resources/flag/flag-de.xcf
new file mode 100644
index 0000000000000000000000000000000000000000..7f3225bbc1933998a000d6467afd70ff77419217
GIT binary patch
literal 4731
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
BU#$QD

literal 0
HcmV?d00001

diff --git a/resources/flag/flag-pt.svg b/resources/flag/flag-pt.svg
new file mode 100644
index 000000000..ade26ec67
--- /dev/null
+++ b/resources/flag/flag-pt.svg
@@ -0,0 +1,57 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icons-pt" viewBox="0 0 640 480">
+  <path fill="red" d="M256 0h384v480H256z"/>
+  <path fill="#060" d="M0 0h256v480H0z"/>
+  <g fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width=".6">
+    <path d="M339.5 306.2c-32.3-1-180-93.2-181-108l8.1-13.5c14.7 21.3 165.7 111 180.6 107.8l-7.7 13.7"/>
+    <path d="M164.9 182.8c-2.9 7.8 38.6 33.4 88.4 63.8 49.9 30.3 92.9 49 96 46.4l1.5-2.8c-.6 1-2 1.3-4.3.6-13.5-3.9-48.6-20-92.1-46.4-43.6-26.4-81.4-50.7-87.3-61a6.3 6.3 0 0 1-.6-3.1h-.2l-1.2 2.2-.2.3zm175.3 123.8c-.5 1-1.6 1-3.5.8-12-1.3-48.6-19.1-91.9-45-50.4-30.2-92-57.6-87.4-64.8l1.2-2.2.2.1c-4 12.2 82.1 61.4 87.2 64.6 49.8 30.8 91.8 48.9 95.5 44.2l-1.3 2.3z"/>
+    <path d="M256.2 207.2c32.2-.3 72-4.4 95-13.6l-5-8c-13.5 7.5-53.5 12.5-90.3 13.2-43.4-.4-74.1-4.5-89.5-14.8l-4.6 8.6c28.2 12 57.2 14.5 94.4 14.6"/>
+    <path d="M352.5 193.8c-.8 1.3-15.8 6.4-37.8 10.2a381.2 381.2 0 0 1-58.6 4.3 416.1 416.1 0 0 1-56.2-3.6c-23.1-3.6-35-8.6-39.5-10.4l1.1-2.2c12.7 5 24.7 8 38.7 10.2A411.5 411.5 0 0 0 256 206a391.8 391.8 0 0 0 58.3-4.3c22.5-3.7 34.8-8.4 36.6-10.5l1.6 2.7zm-4.4-8.1c-2.4 2-14.6 6.3-36 9.7a388.2 388.2 0 0 1-55.8 4c-22 0-40.1-1.6-53.8-3.6-21.8-2.8-33.4-8-37.6-9.4l1.3-2.2c3.3 1.7 14.4 6.2 36.5 9.3a385 385 0 0 0 53.6 3.4 384 384 0 0 0 55.4-4c21.5-3 33.1-8.4 34.9-9.8l1.5 2.6zM150.3 246c19.8 10.7 63.9 16 105.6 16.4 38 .1 87.4-5.8 105.9-15.6l-.5-10.7c-5.8 9-58.8 17.7-105.8 17.4-47-.4-90.7-7.6-105.3-17v9.5"/>
+    <path d="M362.8 244.5v2.5c-2.8 3.4-20.2 8.4-42 12a434 434 0 0 1-65.4 4.4 400 400 0 0 1-62-4.3 155 155 0 0 1-44.4-12v-2.9c9.7 6.4 35.9 11.2 44.7 12.6 15.8 2.4 36.1 4.2 61.7 4.2 26.9 0 48.4-1.9 65-4.4 15.7-2.3 38-8.2 42.4-12.1zm0-9v2.5c-2.8 3.3-20.2 8.3-42 11.9a434 434 0 0 1-65.4 4.5 414 414 0 0 1-62-4.3 155 155 0 0 1-44.4-12v-3c9.7 6.5 36 11.2 44.7 12.6a408 408 0 0 0 61.7 4.3c26.9 0 48.5-2 65-4.5 15.7-2.2 38-8.1 42.4-12zm-107 68.8c-45.6-.2-84.7-12.4-93-14.4l6 9.4a249.8 249.8 0 0 0 87.4 14.3c34.7-1 65-3.7 86.3-14.1l6.2-9.8c-14.5 6.9-64 14.6-93 14.6"/>
+    <path d="M344.9 297.3a143 143 0 0 1-2.8 4c-10 3.6-26 7.4-32.6 8.4a295.5 295.5 0 0 1-53.7 5c-40.4-.6-73.5-8.5-89-15.3l-1.3-2.1.2-.4 2.1.9a286.5 286.5 0 0 0 88.2 14.5c18.8 0 37.5-2.1 52.6-4.8 23.2-4.7 32.6-8.2 35.5-9.8l.7-.4zm5.3-8.8a287.2 287.2 0 0 1-2 3.5c-5.4 2-20 6.2-41.3 9.2-14 1.9-22.7 3.8-50.6 4.3a347.4 347.4 0 0 1-94.2-14L161 289a390 390 0 0 0 95.4 14c25.5-.5 36.4-2.4 50.3-4.3 24.8-3.8 37.3-8 41-9.1a2.9 2.9 0 0 0 0-.2l2.6-1z"/>
+    <path d="M350.8 237.6c.1 30-15.3 57-27.6 68.8a99.3 99.3 0 0 1-67.8 28.2c-30.3.5-58.8-19.2-66.5-27.9a101 101 0 0 1-27.5-67.4c1.8-32.8 14.7-55.6 33.3-71.3a99.6 99.6 0 0 1 64.2-22.7 98.2 98.2 0 0 1 71 35.6c12.5 15.2 18 31.7 20.9 56.7zM255.6 135a106 106 0 0 1 106 105.2 105.6 105.6 0 1 1-211.4 0c-.1-58 47.3-105.2 105.4-105.2"/>
+    <path d="M255.9 134.5c58.2 0 105.6 47.4 105.6 105.6S314.1 345.7 256 345.7s-105.6-47.4-105.6-105.6c0-58.2 47.4-105.6 105.6-105.6zM152.6 240c0 56.8 46.7 103.3 103.3 103.3 56.6 0 103.3-46.5 103.3-103.3s-46.7-103.3-103.3-103.3S152.6 183.2 152.6 240z"/>
+    <path d="M256 143.3a97 97 0 0 1 96.7 96.7 97.1 97.1 0 0 1-96.7 96.8c-53 0-96.7-43.6-96.7-96.8a97.1 97.1 0 0 1 96.7-96.7zM161.6 240c0 52 42.6 94.4 94.4 94.4s94.4-42.5 94.4-94.4c0-52-42.6-94.4-94.4-94.4a94.8 94.8 0 0 0-94.4 94.4z"/>
+    <path d="M260.3 134h-9.1v212.3h9z"/>
+    <path d="M259.3 132.8h2.3v214.7h-2.2V132.8zm-9 0h2.4v214.7h-2.3V132.8z"/>
+    <path d="M361.6 244.2v-7.8l-6.4-6-36.3-9.6-52.2-5.3-63 3.2-44.8 10.6-9 6.7v7.9l22.9-10.3 54.4-8.5h52.3l38.4 4.2 26.6 6.4z"/>
+    <path d="M256 223.8c24.9 0 49 2.3 68.3 6 19.8 4 33.7 9 38.5 14.5v2.8c-5.8-7-24.5-12-39-15-19-3.6-43-6-67.9-6-26.1 0-50.5 2.6-69.3 6.2-15 3-35.1 9-37.6 14.8v-2.9c1.3-4 16.3-10 37.3-14.3 18.9-3.7 43.3-6.1 69.6-6.1zm0-9.1a383 383 0 0 1 68.3 6c19.8 4 33.7 9 38.5 14.6v2.7c-5.8-6.9-24.5-12-39-14.9-19-3.7-43-6-67.9-6a376 376 0 0 0-69.2 6.2c-14.5 2.7-35.4 8.9-37.7 14.7v-2.8c1.4-4 16.6-10.3 37.3-14.3 19-3.7 43.3-6.2 69.7-6.2zm-.6-46.2c39.3-.2 73.6 5.5 89.3 13.5l5.7 10c-13.6-7.4-50.6-15-94.9-14-36.1.3-74.7 4-94 14.4l6.8-11.4c15.9-8.3 53.3-12.5 87.1-12.5"/>
+    <path d="M256 176.7a354 354 0 0 1 61.3 4.3c16 3 31.3 7.4 33.5 9.8l1.7 3c-5.3-3.4-18.6-7.3-35.6-10.5s-38.7-4.3-61-4.2c-25.3-.1-45 1.2-61.8 4.2a108.9 108.9 0 0 0-33.3 10.3l1.7-3.1c6-3 15.3-6.7 31.1-9.6 17.5-3.2 37.4-4.1 62.4-4.2zm0-9c21.4-.2 42.6 1 59.1 4a96 96 0 0 1 30.6 10l2.5 4c-4.2-4.7-20-9.2-34.1-11.6-16.4-2.9-36.7-4-58.1-4.2a361 361 0 0 0-59.5 4.4 97.3 97.3 0 0 0-29.6 9.1l2.2-3.3c5.8-3 15.2-5.8 27-8.1a357 357 0 0 1 59.9-4.4zM308.4 284a276.4 276.4 0 0 0-52.5-4c-65.5.8-86.6 13.5-89.2 17.3l-5-8c16.8-12 52.4-18.8 94.6-18.2 21.9.4 40.8 1.9 56.6 5l-4.5 8"/>
+    <path d="M255.6 278.9c18.2.3 36 1 53.3 4.2l-1.2 2.2c-16-3-33.2-4-52-4-24.3-.2-48.7 2.1-70 8.2-6.7 1.9-17.8 6.2-19 9.8l-1.2-2c.4-2.2 7-6.6 19.6-10 24.4-7 47.2-8.3 70.5-8.4zm.8-9.2a327 327 0 0 1 57.3 5l-1.3 2.3a299 299 0 0 0-56-4.9c-24.2 0-49.9 1.8-73.3 8.6-7.5 2.2-20.6 7-21 10.7l-1.2-2.2c.2-3.4 11.5-7.9 21.7-10.8 23.5-6.9 49.3-8.6 73.8-8.7z"/>
+    <path d="m349.4 290.5-7.8 12.3-22.7-20.1-58.6-39.5-66.2-36.3-34.3-11.7 7.3-13.6 2.5-1.3 21.3 5.3 70.4 36.3 40.6 25.6L336 272l13.9 16z"/>
+    <path d="M158.6 195.5c6-4 50.2 15.6 96.6 43.6 46.1 28 90.3 59.6 86.3 65.5l-1.3 2.1-.6.5c.1-.1.8-1 0-3.1-2-6.5-33.4-31.5-85.3-62.9-50.7-30.1-92.9-48.3-97-43.1l1.3-2.6zM351 290.4c3.8-7.6-37.2-38.5-88.1-68.6-52-29.5-89.6-46.9-96.5-41.7L165 183c0 .1 0-.2.4-.5 1.2-1 3.3-1 4.2-1 11.8.2 45.5 15.7 92.8 42.8 20.8 12 87.6 55 87.3 67 0 1 .1 1.2-.3 1.8l1.7-2.6z"/>
+  </g>
+  <g transform="translate(0 26.7) scale(1.06667)">
+    <path fill="#fff" stroke="#000" stroke-width=".7" d="M180.6 211a58.7 58.7 0 0 0 17.5 41.7 59 59 0 0 0 41.8 17.6 59.4 59.4 0 0 0 42-17.4 59 59 0 0 0 17.4-41.8v-79.2l-118.7-.2V211z"/>
+    <path fill="red" stroke="#000" stroke-width=".5" d="M182.8 211.1a56.4 56.4 0 0 0 16.8 40 57 57 0 0 0 40.2 16.8 56.9 56.9 0 0 0 40.2-16.6 56.4 56.4 0 0 0 16.7-40v-77H183v76.8m91-53.7v48.9l-.1 5.1a33.2 33.2 0 0 1-10 24 34 34 0 0 1-24 10c-9.4 0-17.7-4-23.9-10.2a34 34 0 0 1-10-24v-54l68 .2z"/>
+    <g id="e">
+      <g id="d" fill="#ff0" stroke="#000" stroke-width=".5">
+        <path stroke="none" d="M190.2 154.4c.1-5.5 4-6.8 4-6.8.1 0 4.3 1.4 4.3 6.9h-8.3"/>
+        <path d="m186.8 147.7-.7 6.3h4.2c0-5.2 4-6 4-6 .1 0 4 1.1 4.1 6h4.2l-.8-6.4h-15zm-1 6.4h17c.3 0 .6.3.6.7 0 .5-.3.8-.6.8h-17c-.3 0-.6-.3-.6-.8 0-.4.3-.7.7-.7z"/>
+        <path d="M192 154c0-3.3 2.3-4.2 2.3-4.2s2.3 1 2.3 4.2H192m-5.8-9h16.3c.3 0 .6.4.6.8 0 .3-.3.6-.6.6h-16.3c-.3 0-.6-.3-.6-.7 0-.3.3-.6.6-.6zm.4 1.5H202c.3 0 .6.3.6.7 0 .4-.3.7-.6.7h-15.5c-.4 0-.6-.3-.6-.7 0-.4.2-.7.6-.7zm5-10.6h1.2v.8h.9v-.8h1.3v.9h.9v-1h1.2v2c0 .4-.2.6-.5.6h-4.4c-.3 0-.6-.2-.6-.5v-2zm4.6 2.7.3 6.4h-4.3l.3-6.5h3.7"/>
+        <path id="a" d="M191 141.6v3.4h-4v-3.4h4z"/>
+        <use xlink:href="#a" width="100%" height="100%" x="10.6"/>
+        <path id="b" d="M186.3 139h1.2v1h.9v-1h1.2v1h.9v-1h1.2v2c0 .4-.2.6-.5.6h-4.3a.6.6 0 0 1-.6-.6v-2z"/>
+        <use xlink:href="#b" width="100%" height="100%" x="10.6"/>
+        <path fill="#000" stroke="none" d="M193.9 140.6c0-.6.9-.6.9 0v1.6h-.9v-1.6"/>
+        <path id="c" fill="#000" stroke="none" d="M188.6 142.8c0-.6.8-.6.8 0v1.2h-.8v-1.2"/>
+        <use xlink:href="#c" width="100%" height="100%" x="10.6"/>
+      </g>
+      <use xlink:href="#d" width="100%" height="100%" y="46.3"/>
+      <use xlink:href="#d" width="100%" height="100%" transform="rotate(-45.2 312.8 180)"/>
+    </g>
+    <use xlink:href="#d" width="100%" height="100%" x="45.7"/>
+    <use xlink:href="#e" width="100%" height="100%" transform="matrix(-1 0 0 1 479.8 0)"/>
+    <g id="f" fill="#fff">
+      <path fill="#039" d="M232.6 202.4a8.3 8.3 0 0 0 2.2 5.7 7.2 7.2 0 0 0 5.3 2.4c2.1 0 4-1 5.3-2.4a8.3 8.3 0 0 0 2.2-5.7v-10.8h-15v10.8"/>
+      <circle cx="236.1" cy="195.7" r="1.5"/>
+      <circle cx="244.4" cy="195.7" r="1.5"/>
+      <circle cx="240.2" cy="199.7" r="1.5"/>
+      <circle cx="236.1" cy="203.9" r="1.5"/>
+      <circle cx="244.4" cy="203.9" r="1.5"/>
+    </g>
+    <use xlink:href="#f" width="100%" height="100%" y="-26"/>
+    <use xlink:href="#f" width="100%" height="100%" x="-20.8"/>
+    <use xlink:href="#f" width="100%" height="100%" x="20.8"/>
+    <use xlink:href="#f" width="100%" height="100%" y="25.8"/>
+  </g>
+</svg>
\ No newline at end of file
diff --git a/resources/flag/flag-pt.xcf b/resources/flag/flag-pt.xcf
new file mode 100644
index 0000000000000000000000000000000000000000..26c73a11b9e99329012439676f9a80737edbd3d8
GIT binary patch
literal 5465
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

literal 0
HcmV?d00001

diff --git a/www/i18n/locale-ca.json b/www/i18n/locale-es-CT.json
similarity index 100%
rename from www/i18n/locale-ca.json
rename to www/i18n/locale-es-CT.json
diff --git a/www/img/flag-ca.png b/www/img/flag-ca.png
deleted file mode 100644
index 50ba903b2c94ce278ff0d9523251bf6ea7653684..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 5913
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
ZBlfH2JNDcA?S`=kSC*%9$)eB={|3gJ-iH7H

diff --git a/www/img/flag-ct.png b/www/img/flag-ct.png
new file mode 100644
index 0000000000000000000000000000000000000000..aa91abc2b2a24eabd5cccd4cfd76d39aa95c23b5
GIT binary patch
literal 751
zcmV<L0ucR)P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80004lX+uL$Nkc;*
zaB^>EX>4Tx04R}tkv&MmKpe$iQ$>*$hjvhL$WWauh>AFB6^c+H)C#RSm|Xe=O&XFE
z7e~Rh;NZt%)xpJCR|i)?5c~jfb#YR3krMxx6k5c1aNLh~_a1le0HIM~n$<N9Xu55t
zlL;}KTNQg=Az%<;L=lmhWz0!Z3clm(9s$1I#d((hxj#o(&07ozh{UtZFm2)u;^|G>
z;Ji;9WhGf9J|`YC>4L<MTvt4P<6LxE;F(b~lb$Dz5{tzSRyvrKOpSPoIHqbk<qKJl
zRnA+SwMvb(?#W*m%Iho3T&FpVBo?s*2_h8KP(}qd;<W0dSV+@;!pA@4`XzEH<SK)a
zV*yoYkX=9cAN=mtDojpzNudPL{o*(uBS6nC(5ySo_p#$NPk`VvaHY5X)dn#0NqW7l
z#g2gfZQ$a%ttorJ<qk0LWXPuMN<o@Jp#Z#}(KqFQ$Su&f=JnRv$LRx*p{`Olz`-Ff
zTBPiCpLh3m_V(|YR)0S?Npg<_uh9_z000SaNLh0L01FcU01FcV0GgZ_00007bV*G`
z2j>DA4J0<E&Mkug0093<L_t(o!|j%_N&`U{guh*XjBAt>30epuqzm{K>3j<t>y#-{
zr}PaheFHlipFu1GB3LNKaLDCQj=L1QwdGEc4E$_4!|eRS4?Ao-T$;V~=0poL1{?wd
zAOJoSc>`3ymjQ!%5ndJc+pxOu$pICD0q*_!Sj1mB1NeP5nFR*WpHv$5SzNtQy$CO&
z5RMF>eB4)MAb!Eev?~%&L;-fvX!yTV2+to1jeudk>ivHW->!Pv5Z0ew>%i%})Ue+q
z0p0PR)`8;wK%0T(Z4e1qMFE}5TEqVozo0$4`%x89>w&efht>`_0{ZDR%XyTRz|tjB
hPySkN((JJ1*Z_PMHP}jqn-~B9002ovPDHLkV1jM%O8Ec)

literal 0
HcmV?d00001

diff --git a/www/img/flag-de.png b/www/img/flag-de.png
index 828672c0d83623c88f776fcd5d1c12355f53515e..24c0d44e2bcafe14d2a7de8f4ee564b5d605cc23 100644
GIT binary patch
delta 712
zcmV;(0yq7l0n`PM7=H)`0001UdV2H#00Dz(LqkwWLqi~Na&Km7Y-IodD3N`UJxIeq
z9K~N#MUfVVc2IH1P@OD@ia2T&iclfc3avVrT>1q~8j=(jN5Qq=;KyRs!Nplu2UkH5
z`~Y!vaZ+@V691PJTEuv8+>dwn9(V5mp;2L))in-ix^1SD34bx0TNQg=Az%<;L=lmh
zWz0!Z3clm(9s$1I#d((hxj#o(&07ozh{UtZFm2)u;^|G>;Ji;9WhGf9J|`YC>4L<M
zTvt4P<6LxE;F(b~lb$Dz5{tzSRyvrKOpSPoIHqbk<qKJlRnA+SwMvb(?#W*m%Iho3
zT&FpVBo?s*34bCK)KEqRHsZAEq*zGPe!|B;<oYFYDdZ}Hkz)Z>Xpmh$_#gc4)+$U+
zcuAoI(EZ{#A0t4|F3_wy&iAq7G*5uwGjOH1{nZ9A^GSNWt;LRj{%zpmx~(aDz~v4w
z@MOrQ>`FnJLZJY>pV2qvfXFS-x90WM+Q;bwkfE+pH-EsvAuw8`>~)`a_jdO7@0nJA
zKQ~Eoj|8vL5dZ)H32;bRa{vGf6951U69E94oEQKA00(qQO+^Ri0vQb`0kX!&fB*mh
z<Vi$9R9M69)<H_cKp4gGUna4k;>t?41#ja8yny%cFug_(;Q?F<A|-ArMw+CFi;mz4
zCWYp~$A2upKQr$Qk6D+lEKVNJlo~M<xW*lp2#J;t_(2V8yrPR#DdvC|tV6tkMdBw2
zD6tIxd@zas!qh340Sb6vS5joB{~$#M`-Xb^2k=a_qRJBiboB4+x3dRkfU}9=@yYHh
zq>JHk)c390CIZ|)s;XO6o~Hq5JN?^-z0K@_GeH3uWya)X;IwlLXckx6l$9g|L%DE3
uli>!dSj|$F(r<ibacP*q4?~<;7p`BbY)wBZ`(A(m0000<MNUMnLSTX+ze8I9

delta 126
zcmcb@x`=Utgf$a00|Nt}$fR^2#S`EY;tHgJ;6D)kXZSNQ^eB+SSQ6wH%;50sMjD8d
z<n8Xl(7`I}F?j={gt?NZi(`ny<>Ukf?vA!5M~<01YeN$@G?}#htvC4Ltk$f<z+fMl
UAh~#I<$930p00i_>zopr09Ys__W%F@

diff --git a/www/js/services/settings-services.js b/www/js/services/settings-services.js
index 93d65e276..15e3db750 100644
--- a/www/js/services/settings-services.js
+++ b/www/js/services/settings-services.js
@@ -12,7 +12,7 @@ angular.module('cesium.settings.services', ['ngApi', 'cesium.config'])
     {id:'fr-FR', label:'Français', flag: 'fr'},
     {id:'nl-NL', label:'Nederlands', flag: 'nl'},
     {id:'es-ES', label:'Español', flag: 'es'},
-    {id:'ca', label:'Català', flag: 'ca'},
+    {id:'es-CT', label:'Català', flag: 'ct'},
     {id:'it-IT', label:'Italiano', flag: 'it'},
     {id:'pt-PT', label:'Português', flag: 'pt'},
     {id:'de-DE', label:'Deutsch', flag: 'de'}
diff --git a/www/plugins/es/i18n/locale-ca.json b/www/plugins/es/i18n/locale-es-CT.json
similarity index 100%
rename from www/plugins/es/i18n/locale-ca.json
rename to www/plugins/es/i18n/locale-es-CT.json
diff --git a/www/plugins/es/locale-pt-PT.json b/www/plugins/es/locale-pt-PT.json
deleted file mode 100644
index f0a051194..000000000
--- a/www/plugins/es/locale-pt-PT.json
+++ /dev/null
@@ -1,609 +0,0 @@
-{
-  "COMMON": {
-    "ABUSES_TEXT": "{{total}} pessoa{{total > 1 ? 's' : ''}} {{total > 1 ? 'sinalizaram' : 'sinalizoua'}}  um problema",
-    "BTN_LIKE": "Gosta de mim",
-    "BTN_LIKE_REMOVE": "Deixou de gostar de mim",
-    "BTN_REMOVE_REPORTED_ABUSE": "Cancelar reportar",
-    "BTN_REPORT_ABUSE_DOTS": "Reportar um problema ou um abuso...",
-    "COMMENT_HELP": "Comentário",
-    "LIKES_TEXT": "A {{total}} pessoa{{total > 1 ? 's' : ''}} {{total > 1 ? 'gostaram' : 'gostou'}} desta página",
-    "NOTIFICATION": {
-        "HAS_UNREAD": "Tem {{count}} notifica{{count>0?'ções':'ção'}} não lida{{count>0?'s':''}}",
-        "TITLE": "Nova notificação | {{'COMMON.APP_NAME'|translate}}"
-    },
-    "REPORT_ABUSE": {
-      "ASK_DELETE": "Pedir a eliminação?",
-      "CONFIRM": {
-          "SENT": "Reporte enviado. Grato!"
-      },
-      "REASON_HELP": "Eu explico o problema...",
-      "SUB_TITLE": "Por favor explique brevemente o problema :",
-      "TITLE": "Assinalar um problema"
-    },
-
-    "CATEGORY": "Categoria",
-    "CATEGORIES": "Categorias",
-    "CATEGORY_SEARCH_HELP": "Procurar",
-    "LAST_MODIFICATION_DATE": "Atualização em",
-    "SUBMIT_BY": "Enviado por",
-    "BTN_PUBLISH": "Publicar",
-    "BTN_PICTURE_DELETE": "Apagar",
-    "BTN_PICTURE_FAVORISE": "Principal",
-    "BTN_PICTURE_ROTATE": "Rodar",
-    "BTN_ADD_PICTURE": "Adicionar uma foto",
-    "NOTIFICATIONS": {
-      "TITLE": "Notificações",
-      "MARK_ALL_AS_READ": "Marcar tudo como lido",
-      "NO_RESULT": "Nenhuma notificação",
-      "SHOW_ALL": "Ver tudo",
-      "LOAD_NOTIFICATIONS_FAILED": "Falha ao carregar as notificações"
-    }
-  },
-  "DOCUMENT": {
-    "HASH": "Hash: ",
-    "LOOKUP": {
-      "BTN_COMPACT": "Compactar",
-      "HAS_CREATE_OR_UPDATE_PROFILE": "Perfil criado ou modificado",
-      "LAST_DOCUMENTS_DOTS": "Últimos documentos :",
-      "TITLE": "Procura de documentos",
-      "BTN_ACTIONS": "Ações",
-      "SEARCH_HELP": "issuer:AAA*, time:1508406169",
-      "LAST_DOCUMENTS": "Últimos documentos",
-      "SHOW_QUERY": "Ver a procura",
-      "HIDE_QUERY": "Esconder a procura",
-      "HEADER_TIME": "Data/Hora",
-      "HEADER_ISSUER": "Emissor",
-      "HEADER_RECIPIENT": "Destinatário",
-      "HEADER_AMOUNT": "Quantia",
-      "READ": "Lido",
-      "BTN_REMOVE": "Apagar este documento",
-      "POPOVER_ACTIONS": {
-        "TITLE": "Acções",
-        "REMOVE_ALL": "Apagar estes documentos..."
-      }
-    },
-    "INFO": {
-      "REMOVED": "Documento apagado"
-    },
-    "CONFIRM": {
-      "REMOVE": "Deseja <b>apagar este documento</b>?",
-      "REMOVE_ALL": "Deseja <b>apagar estes documentos</b>?"
-    },
-    "ERROR": {
-      "LOAD_DOCUMENTS_FAILED": "Falha ao procurar os documentos",
-      "REMOVE_FAILED": "Falha ao apagar o documento",
-      "REMOVE_ALL_FAILED": "Falha ao apagar os documentos"
-    }
-  },
-  "MENU": {
-    "REGISTRY": "Páginas",
-    "USER_PROFILE": "O meu perfil",
-    "MESSAGES": "Mensagens",
-    "NOTIFICATIONS": "Notificações",
-    "INVITATIONS": "Convites"
-  },
-  "ACCOUNT": {
-    "NEW": {
-      "ORGANIZATION_ACCOUNT": "Conta para uma organização",
-      "ORGANIZATION_ACCOUNT_HELP": "Se representa uma empresa, uma associação, etc.<br/>Nenhum dividendo universal será criado por esta conta."
-    },
-    "EVENT": {
-      "MEMBER_WITHOUT_PROFILE": "Para obter as suas certificações mais rapidamente, complete <a ui-sref=\"app.edit_profile\">o seu perfil de usuário</a>. Os membros concederão mais facilmente a sua confiança a uma identidade verificável."
-    },
-    "ERROR": {
-      "WS_CONNECTION_FAILED": "Cesium não pode receber as notificações, por causa de uma falha técnica (conexão ao nó de dados Cesium+).<br/><br/>Se o problema persistir, por favor <b>escolha outro nó de dados</b> nas definições de Cesium+."
-    }
-  },
-  "WOT": {
-    "BTN_SUGGEST_CERTIFICATIONS_DOTS": "Sugerir identidades a certificar…",
-    "BTN_ASK_CERTIFICATIONS_DOTS": "Pedir a membros que o certifiquem…",
-    "BTN_ASK_CERTIFICATION": "Pedir uma certificação",
-    "SUGGEST_CERTIFICATIONS_MODAL": {
-      "TITLE": "Sugerir certificações",
-      "HELP": "Selecionar as suas sugestões"
-    },
-    "ASK_CERTIFICATIONS_MODAL": {
-      "TITLE": "Solicitar certificações",
-      "HELP": "Selecionar os destinatários"
-    },
-    "SEARCH": {
-      "DIVIDER_PROFILE": "Contas",
-      "DIVIDER_PAGE": "Páginas",
-      "DIVIDER_GROUP": "Grupos"
-    },
-    "CONFIRM": {
-      "SUGGEST_CERTIFICATIONS": "Deseja <b>enviar estas sugestões de certificação</b> ?",
-      "ASK_CERTIFICATION": "Deseja <b>enviar um pedido de certificação</b> ?",
-      "ASK_CERTIFICATIONS": "Deseja <b>enviar um pedido de certificação</b> a estas pessoas ?"
-    }
-  },
-  "INVITATION": {
-    "TITLE": "Convites",
-    "NO_RESULT": "Nenhum convite em espera",
-    "BTN_DELETE_ALL": "Apagar todos os convites",
-    "BTN_DELETE": "Apagar o convite",
-    "BTN_NEW_INVITATION": "Novo convite",
-    "ASK_CERTIFICATION": "<a href=\"#/app/wot/{{pubkey}}/{{::uid}}\">{{::name||uid}}</a> solicita a sua certificação",
-    "SUGGESTION_CERTIFICATION": "<a href=\"#/app/wot/{{::pubkey}}/{{::uid}}\">{{::name||uid}}</a> foi sugerido/a para certificação",
-    "SUGGESTED_BY": "Sugestão enviada por <a class=\"positive\" href=\"#/app/wot/{{::issuer.pubkey}}/{{::issuer.uid}}\">{{::issuer.name||issuer.uid}}</a>",
-    "NOTIFICATIONS": {
-      "TITLE": "Convites"
-    },
-    "LIST": {
-      "TITLE": "Convites"
-    },
-    "NEW": {
-      "TITLE": "Novo convite",
-      "RECIPIENTS": "Para",
-      "RECIPIENTS_HELP": "Destinatários do convite",
-      "RECIPIENTS_MODAL_TITLE": "Destinatários",
-      "RECIPIENTS_MODAL_HELP": "Por favor, escolha os destinatários :",
-      "SUGGESTION_IDENTITIES": "Sugestão de certificação",
-      "SUGGESTION_IDENTITIES_HELP": "Certificações a sugerir",
-      "SUGGESTION_IDENTITIES_MODAL_TITLE": "Sugestões",
-      "SUGGESTION_IDENTITIES_MODAL_HELP": "Por favor, escolha as suas sugestões :"
-    },
-    "CONFIRM": {
-      "DELETE_ALL_CONFIRMATION": "A eliminação dos convites é uma <b>operação irreversível</b>.<br/><br/>Deseja continuar ?",
-      "SEND_INVITATIONS_TO_CERTIFY": "Deseja <b>enviar este convite a certificar</b> ?"
-    },
-    "INFO": {
-      "INVITATION_SENT": "Convite enviado"
-    },
-    "ERROR": {
-      "LOAD_INVITATIONS_FAILED": "Falha ao carregar os convites",
-      "REMOVE_INVITATION_FAILED": "Falha ao eliminar convite",
-      "REMOVE_ALL_INVITATIONS_FAILED": "Falha ao eliminar os convites",
-      "SEND_INVITATION_FAILED": "Falha ao enviar convite",
-      "BAD_INVITATION_FORMAT": "<span class=\"assertive\"><i class=\"ion-close-circled\"></i> convite ilegível (formato desconhecido)</span> - enviado por <a ui-sref=\"app.wot_identity({pubkey: '{{::pubkey}}', uid: '{{::uid}}' })\">{{::name||uid}}</a>"
-    }
-  },
-  "COMMENTS": {
-    "DIVIDER": "Comentários",
-    "SHOW_MORE_COMMENTS": "Visualizar os comentários anteriores",
-    "COMMENT_HELP": "O seu comentário, perguntas, etc.",
-    "COMMENT_HELP_REPLY_TO": "A sua reposta…",
-    "BTN_SEND": "Enviar",
-    "POPOVER_SHARE_TITLE": "Mensagem #{{number}}",
-    "MODIFIED_ON": "modificado em {{time|formatDate}}",
-    "MODIFIED_PARENTHESIS": "(modificado então)",
-    "REPLY": "Responder",
-    "REPLY_TO": "Reposta a :",
-    "REPLY_TO_LINK": "Em reposta a ",
-    "REPLY_TO_DELETED_COMMENT": "Em reposta a um comentário apagado",
-    "REPLY_COUNT": "{{replyCount}} repostas",
-    "DELETED_COMMENT": "Comentário apagado",
-    "ERROR": {
-      "FAILED_SAVE_COMMENT": "Falha ao gravar o comentário",
-      "FAILED_REMOVE_COMMENT": "Falha ao eliminar comentário"
-    }
-  },
-  "MESSAGE": {
-    "REPLY_TITLE_PREFIX": "Rep: ",
-    "FORWARD_TITLE_PREFIX": "Tr: ",
-    "BTN_REPLY": "Responder",
-    "BTN_COMPOSE": "Nova mensagem",
-    "BTN_WRITE": "Escrever",
-    "NO_MESSAGE_INBOX": "Nenhuma mensagem recebida",
-    "NO_MESSAGE_OUTBOX": "Nenhuma mensagem enviada",
-    "NOTIFICATIONS": {
-      "TITLE": "Mensajes",
-      "MESSAGE_RECEIVED": "<b>Mensagem recebida</b><br/>de"
-    },
-    "LIST": {
-      "INBOX": "Caixa de entrada",
-      "OUTBOX": "Mensagens enviadas",
-      "LAST_INBOX": "Novas mensagens",
-      "LAST_OUTBOX": "Mensagens enviadas",
-      "BTN_LAST_MESSAGES": "Mensagens recentes",
-      "TITLE": "Mensagens",
-      "SEARCH_HELP": "Procurar em mensagens",
-      "POPOVER_ACTIONS": {
-        "TITLE": "Opções",
-        "DELETE_ALL": "Apagar todas as mensagens"
-      }
-    },
-    "COMPOSE": {
-      "TITLE": "Nova mensagem",
-      "TITLE_REPLY": "Responder",
-      "SUB_TITLE": "Nova mensagem",
-      "TO": "Para",
-      "OBJECT": "Objeto",
-      "OBJECT_HELP": "Objeto",
-      "ENCRYPTED_HELP": "Tenha em conta que esta mensagem será cifrada antes do envio, com o fim de que só o destinatário possa lê la, e que se tenha a segurança de que é da sua autoria.",
-      "MESSAGE": "Mensagem",
-      "MESSAGE_HELP": "Conteúdo da mensagem",
-      "CONTENT_CONFIRMATION": "O conteúdo da mensagem está vazio.<br/><br/>deseja enviar a mensagem assim?"
-    },
-    "VIEW": {
-      "TITLE": "Mensagem",
-      "SENDER": "Enviado por",
-      "RECIPIENT": "Enviado para",
-      "NO_CONTENT": "Mensagem vazia",
-      "DELETE": "Eliminar a mensagem"
-    },
-    "CONFIRM": {
-      "REMOVE": "Deseja <b>apagar esta mensagem</b> ?<br/><br/>Esta operação é irreversível.",
-      "REMOVE_ALL" : "Deseja <b>apagar todas as mensagens</b> ?<br/><br/>Esta operação é irreversível.",
-      "MARK_ALL_AS_READ": "Deseja <b>marcar todas as mensagens como lidas</b> ?",
-      "USER_HAS_NO_PROFILE": "Esta identidade não tem nenhum perfil Cesium+. Pode não estar habilitada a extensão Cesium+, y <b>não poderá ver a sua mensagem</b>.<br/><br/>Deseja <b>continuar</b> de qualquer forma?"
-    },
-    "INFO": {
-      "MESSAGE_REMOVED": "Mensagem apagada",
-      "All_MESSAGE_REMOVED": "Toda as mensagens foram apagadas",      "MESSAGE_SENT": "Mensagem enviada"
-    },
-    "ERROR": {
-      "SEND_MSG_FAILED": "Falha no envio da mensagem.",
-      "LOAD_MESSAGES_FAILED": "Falha ao recuperar as mensagens.",
-      "LOAD_MESSAGE_FAILED": "Falha ao recuperar a mensagem.",
-      "MESSAGE_NOT_READABLE": "Leitura da mensagem impossível.",
-      "USER_NOT_RECIPIENT": "Não há destinatário nesta mensagem : impossível decifrar.",
-      "NOT_AUTHENTICATED_MESSAGE": "A autenticidade da mensagem é duvidosa ou o seu conteúdo está corrompido.",
-      "REMOVE_MESSAGE_FAILED": "Falha ao eliminar mensagem",
-      "MESSAGE_CONTENT_TOO_LONG": "Valor demasiado longo ({{maxLength}} caracteres max).",
-      "MARK_AS_READ_FAILED": "Impossível marcar a mensagem como 'lida'.",
-      "LOAD_NOTIFICATIONS_FAILED": "Falha ao recuperar as notificações de mensagens.",
-      "REMOVE_All_MESSAGES_FAILED": "Falha ao eliminar todas as mensagens.",
-      "MARK_ALL_AS_READ_FAILED": "Falha ao marcar as mensagens como lidas.",
-      "RECIPIENT_IS_MANDATORY": "O destinatário é obrigatório."
-    }
-  },
-  "BLOCKCHAIN": {
-    "LOOKUP": {
-      "SEARCH_HELP": "Número de bloco, hash, chave pública, etc.",
-      "POPOVER_FILTER_TITLE": "Filtros",
-      "HEADER_MEDIAN_TIME": "Data / Hora",
-      "HEADER_BLOCK": "Bloco #",
-      "HEADER_ISSUER": "Nó emissor",
-      "BTN_LAST": "Últimos blocos",
-      "DISPLAY_QUERY": "Mostrar a consulta",
-      "HIDE_QUERY": "Ocultar a consulta",
-      "TX_SEARCH_FILTER": {
-        "MEMBER_FLOWS": "Entradas/saídas de membros",
-        "EXISTING_TRANSACTION": "transações existentes",
-        "PERIOD": "<b class=\"ion-clock\"></b> Entre o <b class=\"gray\">{{params[1]|medianDateShort}}</b> ({{params[1]|medianTime}}) e o <b class=\"gray\">{{params[2]|medianDateShort}}</b> ({{params[2]|medianTime}})",
-        "ISSUER": "<b class=\"ion-android-desktop\"></b> Calculado por <b class=\"ion-key\"></b> {{params[1]|formatPubkey}}",
-        "TX_PUBKEY": "<b class=\"ion-card\"></b> Transações que implicam <b class=\"ion-key\"></b> {{params[1]|formatPubkey}}"
-      }
-    },
-    "ERROR": {
-      "SEARCH_BLOCKS_FAILED": "Falha na procura dos blocos."
-    }
-  },
-  "GROUP": {
-    "GENERAL_DIVIDER": "Informações gerais",
-    "LOCATION_DIVIDER": "Localização",
-    "SOCIAL_NETWORKS_DIVIDER": "Redes sociais e site",
-    "TECHNICAL_DIVIDER": "Informações técnicas",
-    "CREATED_TIME": "Criada {{creationTime|formatFromNow}}",
-    "NOTIFICATIONS": {
-      "TITLE": "Convites"
-    },
-    "LOOKUP": {
-      "TITLE": "Grupos",
-      "SEARCH_HELP": "Nome de grupo, palavras , lugar, etc.",
-      "LAST_RESULTS_LIST": "Novos grupos :",
-      "OPEN_RESULTS_LIST": "Grupos abertos :",
-      "MANAGED_RESULTS_LIST": "Grupos fechados :",
-      "BTN_LAST": "Novos grupos",
-      "BTN_NEW": "Adiciono um grupo"
-    },
-    "TYPE": {
-      "TITLE": "Novo grupo",
-      "SELECT_TYPE": "Tipo de grupo :",
-      "OPEN_GROUP": "Grupo aberto",
-      "OPEN_GROUP_HELP": "Um grupo aberto é acessível por qualquer membro da moeda.",
-      "MANAGED_GROUP": "Grupo administrado",
-      "MANAGED_GROUP_HELP": "Um grupo administrado é gerido por administradores e moderadores, que podem aceitar, recusar ou excluir um membro do seu seio.",
-      "ENUM": {
-        "OPEN": "Grupo aberto",
-        "MANAGED": "Grupo administrado"
-      }
-    },
-    "VIEW": {
-      "POPOVER_SHARE_TITLE": "{{title}}",
-      "MENU_TITLE": "Opções",
-      "REMOVE_CONFIRMATION" : "Deseja eliminar este grupo?<br/><br/>Esta operação é irreversível."
-    },
-    "EDIT": {
-      "TITLE": "Grupo",
-      "TITLE_NEW": "Novo grupo",
-      "RECORD_TITLE": "Título",
-      "RECORD_TITLE_HELP": "Título",
-      "RECORD_DESCRIPTION": "Descrição",
-      "RECORD_DESCRIPTION_HELP": "Descrição"
-    },
-    "ERROR": {
-      "SEARCH_GROUPS_FAILED": "Falha na procura de grupos",
-      "REMOVE_RECORD_FAILED": "Falha ao eliminar o grupo"
-    },
-    "INFO": {
-      "RECORD_REMOVED" : "Grupo eliminado"
-    }
-  },
-  "REGISTRY": {
-    "CATEGORY": "Atividade principal",
-    "GENERAL_DIVIDER": "Informações gerais",
-    "LOCATION_DIVIDER": "Localização",
-    "SOCIAL_NETWORKS_DIVIDER": "Redes sociais e site",
-    "TECHNICAL_DIVIDER": "Informações técnicas",
-    "BTN_SHOW_WOT": "Pessoas",
-    "BTN_SHOW_WOT_HELP": "Procurar pessoas",
-    "BTN_SHOW_PAGES": "Páginas",
-    "BTN_SHOW_PAGES_HELP": "Procura de páginas",
-    "BTN_NEW": "Criar uma página",
-    "MY_PAGES": "As minhas páginas",
-    "NO_PAGE": "Sem páginas",
-    "SEARCH": {
-      "TITLE": "Páginas",
-      "SEARCH_HELP": "O quê, Quem, ex: cabeleireiro, restaurante Sol.",
-      "BTN_ADD": "Novo",
-      "BTN_LAST_RECORDS": "Páginas recentes",
-      "BTN_ADVANCED_SEARCH": "Procura avançada",
-      "BTN_OPTIONS": "Procura avançada",
-      "TYPE": "Tipo de página",
-      "LOCATION_HELP": "Cidade",
-      "RESULTS": "Resultados",
-      "RESULT_COUNT_LOCATION": "{{count}} Resultado{{count>0?'s':''}}, próximo de {{location}}",
-      "RESULT_COUNT": "{{count}} resultado{{count>0?'s':''}}",
-      "LAST_RECORDS": "Páginas recentes",
-      "LAST_RECORD_COUNT_LOCATION": "{{count}} página{{count>0?'s':''}} reciente{{count>0?'s':''}}, próximo de {{location}}",
-      "LAST_RECORD_COUNT": "{{count}} página{{count>0?'s':''}} reciente{{count>0?'s':''}}",
-      "POPOVER_FILTERS": {
-        "BTN_ADVANCED_SEARCH": "Opções avançadas"
-      }
-    },
-    "VIEW": {
-      "TITLE": "Anuário",
-      "CATEGORY": "Atividade principal :",
-      "LOCATION": "Localização :",
-      "MENU_TITLE": "Opções",
-      "POPOVER_SHARE_TITLE": "{{title}}",
-      "REMOVE_CONFIRMATION" : "Deseja apagar esta página ?<br/><br/>Esta operação é irreversível."
-    },
-    "TYPE": {
-      "TITLE": "Nueva página",
-      "SELECT_TYPE": "Tipo de página :",
-      "ENUM": {
-        "SHOP": "Comercio local",
-        "COMPANY": "Empresa",
-        "ASSOCIATION": "Associação",
-        "INSTITUTION": "Instituição"
-      }
-    },
-    "EDIT": {
-      "TITLE": "Edição",
-      "TITLE_NEW": "Nova página",
-      "RECORD_TYPE":"Tipo de página",
-      "RECORD_TITLE": "Nome",
-      "RECORD_TITLE_HELP": "Nome",
-      "RECORD_DESCRIPTION": "Descrição",
-      "RECORD_DESCRIPTION_HELP": "Descrição da atividade",
-      "RECORD_ADDRESS": "Rua",
-      "RECORD_ADDRESS_HELP": "Rua, edifício…",
-      "RECORD_CITY": "Cidade",
-      "RECORD_CITY_HELP": "Cidade",
-      "RECORD_SOCIAL_NETWORKS": "Redes sociais e site",
-      "RECORD_PUBKEY": "Chave pública",
-      "RECORD_PUBKEY_HELP": "Chave pública para receber pagamentos"
-    },
-    "WALLET": {
-      "PAGE_DIVIDER": "Páginas",
-      "PAGE_DIVIDER_HELP": "As páginas referem-se a coletivos que aceitam moeda ou a promovem: lojas, empresas, negócios, associações, instituições. Armazenam-se fora da rede da moeda, em <a ui-sref=\"app.es_network\">a rede Cesium+</a>."
-    },
-    "ERROR": {
-      "LOAD_CATEGORY_FAILED": "Falha no carregamento da lista de atividades",
-      "LOAD_RECORD_FAILED": "Falha durante o carregamento da página",
-      "LOOKUP_RECORDS_FAILED": "Falha durante a execução de procura.",
-      "REMOVE_RECORD_FAILED": "Falha na eliminação da página",
-      "SAVE_RECORD_FAILED": "Falha durante a gravação",
-      "RECORD_NOT_EXISTS": "Página inexistente",
-      "GEO_LOCATION_NOT_FOUND": "Cidade ou código postal não encontrado"
-    },
-    "INFO": {
-      "RECORD_REMOVED" : "Página apagada",
-      "RECORD_SAVED": "Página guardada"
-    }
-  },
-  "PROFILE": {
-    "PROFILE_DIVIDER": "Perfil Cesium+",
-    "PROFILE_DIVIDER_HELP": "Estes são dados auxiliares, armazenados fora da rede monetária",
-    "NO_PROFILE_DEFINED": "Nenhum perfil Cesium+",
-    "BTN_ADD": "Entra no meu perfil",
-    "BTN_EDIT": "Editar o meu perfil",
-    "BTN_DELETE": "Eliminar o meu perfil",
-    "BTN_REORDER": "Reordenar",
-    "UID": "Pseudónimo",
-    "TITLE": "Nome, Apelidos",
-    "TITLE_HELP": "Nome, Apelidos",
-    "DESCRIPTION": "Sobre mim",
-    "DESCRIPTION_HELP": "Sobre mim…",
-    "SOCIAL_HELP": "http://...",
-    "GENERAL_DIVIDER": "Informações gerais",
-    "SOCIAL_NETWORKS_DIVIDER": "Redes sociais, sites",
-    "TECHNICAL_DIVIDER": "Informações técnicas",
-    "MODAL_AVATAR": {
-      "TITLE": "Foto de perfil",
-      "SELECT_FILE_HELP": "Por favor, <b>escolha uma imagem</b>:",
-      "BTN_SELECT_FILE": "Escolher uma imagem",
-      "RESIZE_HELP": "<b>Enquadre a imagem</b>, se necessário. Um clique pressionado sobre a imagem permite deslocá-la. faça clique na zona inferior esquerda para fazer zoom.",
-      "RESULT_HELP": "<b>Aqui está o resultado</b> tal como se verá no seu perfil :"
-    },
-    "CONFIRM": {
-      "DELETE": "Deseja <b>eliminar o seu perfil Cesium+?</b><br/><br/>Esta operação é irreversível.",
-      "DELETE_BY_MODERATOR": "Deseja <b>eliminar este perfil Cesium+?</b><br/><br/>Esta operação é irreversível ."
-    },
-    "ERROR": {
-      "DELETE_PROFILE_FAILED": "falhar durante a eliminação do perfil",
-      "REMOVE_PROFILE_FAILED": "Falha de eliminação do perfil",
-      "LOAD_PROFILE_FAILED": "Falha no carregamento do perfil de usuário.",
-      "SAVE_PROFILE_FAILED": "Falha durante a gravação",
-      "INVALID_SOCIAL_NETWORK_FORMAT": "Formato inválido: por favor, indique uma direção válida.<br/><br/>Exemplos :<ul><li>- Uma página Facebook (https://www.facebook.com/user)</li><li>- Uma página web (http://www.meusitio.pt)</li><li>- Uma direção de email (jose@dalton.com)</li></ul>",
-      "IMAGE_RESIZE_FAILED": "Falhou o redimensionamento da imagem"
-    },
-    "INFO": {
-      "PROFILE_REMOVED": "Perfil eliminado",
-      "PROFILE_SAVED": "Perfil guardado"
-    },
-    "HELP": {
-      "WARNING_PUBLIC_DATA": "A informação do seu perfil <b>é pública</b>: visível também por pessoas <b>sem conta</b>.<br/>{{'PROFILE.PROFILE_DIVIDER_HELP'|translate}}"
-    }
-  },
-  "LIKE": {
-    "ERROR": {
-        "FAILED_TOGGLE_LIKE": "Impossível executar esta ação."
-    }
-  },
-  "LOCATION": {
-    "BTN_GEOLOC_ADDRESS": "Atualizar a partir do endereço",
-    "USE_GEO_POINT": "Aparecer no mapa {{'COMMON.APP_NAME'|translate}}",
-    "LOADING_LOCATION": "Encontrar a direção…",
-    "LOCATION_DIVIDER": "Localização",
-    "ADDRESS": "Rua",
-    "ADDRESS_HELP": "Rua, número, etc…",
-    "CITY": "Cidade",
-    "CITY_HELP": "Cidade, País",
-    "DISTANCE": "Distancia máxima dos arredores da cidade",
-    "DISTANCE_UNIT": "km",
-    "DISTANCE_OPTION": "{{value}} {{'LOCATION.DISTANCE_UNIT'|translate}}",
-    "SEARCH_HELP": "Cidade, País",
-    "PROFILE_POSITION": "Posição do perfil",
-    "MODAL": {
-      "TITLE": "Procurar por direção",
-      "SEARCH_HELP": "Cidade, País",
-      "ALTERNATIVE_RESULT_DIVIDER": "Resultados alternativos para <b>{{address}}</b> :",
-      "POSITION": "Latitud/Longitud : {{lat}} / {{lon}}"
-    },
-    "ERROR": {
-      "CITY_REQUIRED_IF_STREET": "Requerido sei uma rua foi inserida",
-      "REQUIRED_FOR_LOCATION": "Campo obrigatório para aparecer no mapa",
-      "INVALID_FOR_LOCATION": "Localização desconhecida",
-      "GEO_LOCATION_FAILED": "Não se pode recuperar a sua localização Por favor use o botão de procura",
-      "ADDRESS_LOCATION_FAILED": "Não se pode recuperar a posição da direção."
-    }
-  },
-  "SUBSCRIPTION": {
-    "SUBSCRIPTION_DIVIDER": "Serviços on line",
-    "SUBSCRIPTION_DIVIDER_HELP": "Os serviços on line oferecem serviços adicionais, proporcionados por um terceiro.",
-    "BTN_ADD": "Agregar um serviço",
-    "BTN_EDIT": "Administrar os meus serviços",
-    "NO_SUBSCRIPTION": "Nenhum serviço definido",
-    "SUBSCRIPTION_COUNT": "Serviços / Subscrição",
-    "EDIT": {
-      "TITLE": "Serviços on line",
-      "HELP_TEXT": "Faça a gestão das suas subscrições e outros serviços on line aqui",
-      "PROVIDER": "Provedor:"
-    },
-    "TYPE": {
-      "ENUM": {
-        "EMAIL": "Receber notificações por correio eletrónico"
-      }
-    },
-    "CONFIRM": {
-      "DELETE_SUBSCRIPTION": "Deseja <b>eliminar</b> esta subscrição ?"
-    },
-    "ERROR": {
-      "LOAD_SUBSCRIPTIONS_FAILED": "Falha ao carregar serviços em linha",
-      "ADD_SUBSCRIPTION_FAILED": "Falha ao carregar subscrição",
-      "UPDATE_SUBSCRIPTION_FAILED": "Falha durante a atualização da subscrição",
-      "DELETE_SUBSCRIPTION_FAILED": "Falha ao eliminar a subscrição"
-    },
-    "MODAL_EMAIL": {
-      "TITLE" : "Notificação por correio eletrónico",
-      "HELP" : "Preencha este formulário para <b>ser notificado por correio eletrónico</b> dos eventos da sua conta. <br/> A sua direção de correi eletrónico será cifrada e visível unicamente para o provedor de serviços.",
-      "EMAIL_LABEL" : "O seu correio eletrónico :",
-      "EMAIL_HELP": "maria@dominio.com",
-      "FREQUENCY_LABEL": "Frequência das notificações :",
-      "FREQUENCY_DAILY": "Diária",
-      "FREQUENCY_WEEKLY": "Semanal",
-      "PROVIDER": "Provedor de serviço :"
-    }
-  },
-  "ES_PEER": {
-    "DOCUMENT_COUNT": "Número de documentos",
-    "DOCUMENTS": "Documentos",
-    "EMAIL_SUBSCRIPTION_COUNT": "{{emailSubscription}} suscrito/a{{emailSubscription ? 's' : ''}} para notificações por correio",
-    "NAME": "Nome",
-    "SOFTWARE": "Software"
-  },
-  "ES_SETTINGS": {
-    "PLUGIN_NAME": "Cesium+",
-    "PLUGIN_NAME_HELP": "Perfis, notificações, mensagens privadas",
-    "ENABLE_TOGGLE": "Ativar a extensão",
-    "ENABLE_MESSAGE_TOGGLE": "Ativar as mensagens privadas",
-    "ENABLE_REMOTE_STORAGE": "Ativar o armazenamento remoto",
-    "ENABLE_REMOTE_STORAGE_HELP": "Permite armazenar (cifrado) as suas definições nos nós Cesium+",
-    "PEER": "Localização do nó de dados",
-    "POPUP_PEER": {
-      "TITLE" : "Nodo de dados",
-      "HELP" : "Ingresse a direção do nó que quer utilizar:",
-      "PEER_HELP": "servidor.domínio.com:porta"
-    },
-    "NOTIFICATIONS": {
-      "DIVIDER": "Notificações",
-      "HELP_TEXT": "Ative os tipos de notificações que deseja receber:",
-      "ENABLE_TX_SENT": "Notificar a validação dos <b>pagamentos emitidos</b>",
-      "ENABLE_TX_RECEIVED": "Notificar a validação dos <b>pagamentos recebidos</b>",
-      "ENABLE_CERT_SENT": "Notificar a validação das <b>certificações emitidas</b>",
-      "ENABLE_CERT_RECEIVED": "Notificar a validação das <b>certificações recebidas</b>",
-      "ENABLE_HTML5_NOTIFICATION": "Alertar a cada nova notificação",
-      "ENABLE_HTML5_NOTIFICATION_HELP": "Abre uma pequena janela pop-up a cada nova notificação."
-    },
-    "CONFIRM": {
-      "ASK_ENABLE_TITLE": "Outras funcionalidades",
-      "ASK_ENABLE": "A extensão de Cesium+ está desabilitada nas definições, desativando certas funcionalidades: <ul><li>&nbsp;&nbsp;<b><i class=\"icon ion-person\"></i> Perfis de usuário/a</b>;<li>&nbsp;&nbsp;<b><i class=\"icon ion-android-notification\"></i> Notificações</b>;<li>&nbsp;&nbsp;<b><i class=\"icon ion-email\"></i> Mensagens privados</b>.</ul><br/><br/><b>Deseja reativar</b> a extensão?"
-    }
-  },
-  "ES_WALLET": {
-    "ERROR": {
-      "RECIPIENT_IS_MANDATORY": "Um destinatário é obrigatório para cifrar."
-    }
-  },
-  "EVENT": {
-    "NODE_STARTED": "O Seu nó PT API <b>{{params[0]}}</b> foi iniciado",
-    "NODE_BMA_DOWN": "O nó <b>{{params[0]}}:{{params[1]}}</b> (utilizado pelo seu nó PT API) <b>não é localizável</b>.",
-    "NODE_BMA_UP": "O nó <b>{{params[0]}}:{{params[1]}}</b> está novamente acessível.",
-    "MEMBER_JOIN": "Agora é <b>membro</b> da moeda <b>{{params[0]}}</b> !",
-    "MEMBER_LEAVE": "Não é <b>membro</b> da moeda <b>{{params[0]}}</b>!",
-    "MEMBER_EXCLUDE": "Você já não é membro da moeda <b>{{params[0]}}</b>, por falta de renovação ou certificações.",
-    "MEMBER_REVOKE": "O seu estado de membro foi revogado. já não é membro da moeda <b>{{params[0]}}</b>.",
-    "MEMBER_ACTIVE": "O seu estado de membro <b>{{params[0]}}</b> foi <b>renovado com sucesso</b>.",
-    "TX_SENT": "O seu <b>pagamento</b> para <span ng-class=\"{'gray': !notification.uid, 'positive':notification.uid}\" ><i class=\"icon\" ng-class=\"{'ion-person': notification.uid, 'ion-key': !notification.uid}\"></i>&thinsp;{{name||uid||params[1]}}</span> fue efectuado.",
-    "TX_SENT_MULTI": "O seu <b>pagamento</b> para <b>{{params[1]}}</b> foi efetuado.",
-    "TX_RECEIVED": "<b>Recebeu um pagamento</b> de <span ng-class=\"{'gray': !notification.uid, 'positive':notification.uid}\"><i class=\"icon\" ng-class=\"{'ion-person': notification.uid, 'ion-key': !notification.uid}\"></i>&thinsp;{{name||uid||params[1]}}</span>.",
-    "TX_RECEIVED_MULTI": "<b>Recebeu um pagamento</b> de <b>{{params[1]}}</b>.",
-    "CERT_SENT": "A sua <b>certificação</b> a <span ng-class=\"{'gray': !notification.uid, 'positive':notification.uid}\" ><i class=\"icon\" ng-class=\"{'ion-person': notification.uid, 'ion-key': !notification.uid}\"></i>&thinsp;{{name||uid||params[1]}}</span> foi efetuada.",
-    "CERT_RECEIVED": "<b>Recebeu uma certificação</b> de <span ng-class=\"{'gray': !notification.uid, 'positive':notification.uid}\"><i class=\"icon\" ng-class=\"{'ion-person': notification.uid, 'ion-key': !notification.uid}\"></i>&thinsp;{{name||uid||params[1]}}</span>.",
-    "USER": {
-        "ABUSE_RECEIVED": "<span class=\"positive\"><i class=\"icon ion-person\"></i>&thinsp;{{name||params[1]}}</span> reportou o seu perfil",
-        "DELETION_RECEIVED": "<span class=\"positive\"><i class=\"icon ion-person\"></i>&thinsp;{{name||params[1]}}</span> reportou um perfil para apagar : <b>{{params[2]}}</b>",
-        "FOLLOW_RECEIVED": "<span class=\"positive\"><i class=\"icon ion-person\"></i>&thinsp;{{name||params[1]}}</span> veja a atividade do seu perfil",
-        "LIKE_RECEIVED": "A <span class=\"positive\"><i class=\"icon ion-person\"></i>&thinsp;{{name||params[1]}}</span> gostou do seu perfil</b>",
-        "MODERATION_RECEIVED": "<span class=\"positive\"><i class=\"icon ion-person\"></i>&thinsp;{{name||params[1]}}</span> pede moderação sobre o perfil : <b>{{params[2]}}</b><br/><b class=\"dark ion-quote\"> </b><span class=\"text-italic\">{{params[3]}}</span>",
-        "STAR_RECEIVED": "<span class=\"positive\"><i class=\"icon ion-person\"></i>&thinsp;{{name||params[1]}}</span> pontuou com ({{params[3]}} <b class=\"ion-star\">)"
-    },
-    "PAGE": {
-      "ABUSE_RECEIVED": "<span class=\"positive\"><i class=\"icon ion-person\"></i>&thinsp;{{name||params[1]}}</span> reportou a sua página : <b>{{params[2]}}</b>",
-      "DELETION_RECEIVED": "<span class=\"positive\"><i class=\"icon ion-person\"></i>&thinsp;{{name||params[1]}}</span> reportou uma página para apagar : <b>{{params[2]}}</b>",
-      "FOLLOW_CLOSE": "<span class=\"positive\"><i class=\"icon ion-person\"></i>&thinsp;{{name||params[1]}}</span> fechou a página : <b>{{params[2]}}</b>",
-      "FOLLOW_NEW": "<span class=\"positive\"><i class=\"icon ion-person\"></i>&thinsp;{{name||params[1]}}</span> adicionou a página : <b>{{params[2]}}</b>",
-      "FOLLOW_NEW_COMMENT": "<span class=\"positive\"><i class=\"icon ion-person\"></i>&thinsp;{{name||params[1]}}</span> comentou a página : <b>{{params[2]}}</b>",
-      "FOLLOW_RECEIVED": "<span class=\"positive\"><i class=\"icon ion-person\"></i>&thinsp;{{name||params[1]}}</span> segue a sua página : <b>{{params[2]}}</b>",
-      "FOLLOW_UPDATE": "<span class=\"positive\"><i class=\"icon ion-person\"></i>&thinsp;{{name||params[1]}}</span> modificou a página : <b>{{params[2]}}</b>",
-      "FOLLOW_UPDATE_COMMENT": "<span class=\"positive\"><i class=\"icon ion-person\"></i>&thinsp;{{name||params[1]}}</span> modificou o seu comentário na página : <b>{{params[2]}}</b>",
-      "MODERATION_RECEIVED": "<span class=\"positive\"><i class=\"icon ion-person\"></i>&thinsp;{{name||params[1]}}</span> pede-vos moderação sobre a página : <b>{{params[2]}}</b><br/><b class=\"dark ion-quote\"> </b><span class=\"text-italic\">{{params[3]}}</span>",
-
-      "NEW_COMMENT": "<span ng-class=\"{'gray': !notification.uid, 'positive':notification.uid}\"><i class=\"icon\" ng-class=\"{'ion-person': notification.uid, 'ion-key': !notification.uid}\"></i>&thinsp;{{name||uid||params[1]}}</span> comentou a sua referencia : <b>{{params[2]}}</b>",
-      "UPDATE_COMMENT": "<span ng-class=\"{'gray': !notification.uid, 'positive':notification.uid }\"><i class=\"icon\" ng-class=\"{'ion-person': notification.uid, 'ion-key': !notification.uid}\"></i>&thinsp;{{name||uid||params[1]}}</span> modificou o seu comentário sobre a sua referencia : <b>{{params[2]}}</b>",
-      "NEW_REPLY_COMMENT": "<span ng-class=\"{'gray': !notification.uid, 'positive':notification.uid}\"><i class=\"icon\" ng-class=\"{'ion-person': notification.uid, 'ion-key': !notification.uid}\"></i>&thinsp;{{name||uid||params[1]}}</span> contestou o seu comentário sobre a referencia : <b>{{params[2]}}</b>",
-      "UPDATE_REPLY_COMMENT": "<span ng-class=\"{'gray': !notification.uid, 'positive':notification.uid }\"><i class=\"icon\" ng-class=\"{'ion-person': notification.uid, 'ion-key': !notification.uid}\"></i>&thinsp;{{name||uid||params[1]}}</span> modificou a reposta ao seu comentário sobre a referencia : <b>{{params[2]}}</b>"
-    }
-  },
-  "CONFIRM": {
-    "ES_USE_FALLBACK_NODE": "Nó de dados <b>{{old}}</b> indisponível ou endereço inválido.<br/><br/>Deseja utilizar temporariamente o nó de dados <b>{{new}}</b>?"
-  },
-  "ERROR": {
-    "ES_CONNECTION_ERROR": "Nó de dados <b>{{server}}</b> indisponível ou endereço inválido.<br/><br/>Cesium continuará funcionando, <b>sem a extensão Cesium+</b> (perfis de usuário, mensagens privadas), mapas e gráficos).<br/><br/>Verifique a sua ligação à Internet, o altere o nó de dados em <a class=\"positive\" ng-click=\"doQuickFix('settings')\"> nas definições da extensão </a>.",
-    "ES_MAX_UPLOAD_BODY_SIZE": "O volume de dados a enviar excede o limite estabelecido pelo servidor.<br/><br/>Por favor, tente novamente depois, por exemplo, apagando fotos."
-  }
-}
-- 
GitLab