From 5d86a939d97901f64f4e274f806058d2770654c6 Mon Sep 17 00:00:00 2001 From: Emanuel Pastrana Date: Mon, 25 Sep 2023 18:29:41 -0600 Subject: [PATCH 01/29] first page translated --- src/web/package-lock.json | 303 ++++++++++++++++-- src/web/package.json | 5 +- src/web/src/App.vue | 53 ++- src/web/src/components/Employees.vue | 2 +- src/web/src/components/UI/FeedbackForm.vue | 2 +- src/web/src/components/UI/SearchBarHeader.vue | 6 +- src/web/src/i18n.js | 24 ++ src/web/src/locales/en.json | 19 ++ src/web/src/locales/fr.json | 19 ++ src/web/src/main.js | 40 +-- src/web/src/router/index.js | 2 +- src/web/src/store/index.js | 32 +- src/web/vue.config.js | 12 + 13 files changed, 462 insertions(+), 57 deletions(-) create mode 100644 src/web/src/i18n.js create mode 100644 src/web/src/locales/en.json create mode 100644 src/web/src/locales/fr.json create mode 100644 src/web/vue.config.js diff --git a/src/web/package-lock.json b/src/web/package-lock.json index e00dc02..55f2242 100644 --- a/src/web/package-lock.json +++ b/src/web/package-lock.json @@ -13,6 +13,7 @@ "glob-parent": ">=5.1.2", "leaflet-control-geocoder": "2.4.0", "vue": "2.6.14", + "vue-i18n": "^8.26.3", "vue-matomo": "4.2.0", "vue-router": "3.5.3", "vue2-leaflet": "2.7.1", @@ -30,6 +31,7 @@ "eslint": "8.21.0", "eslint-plugin-prettier": "4.0.0", "eslint-plugin-vue": "9.3.0", + "vue-cli-plugin-i18n": "~2.3.2", "vue-template-compiler": "2.6.14" } }, @@ -2157,9 +2159,9 @@ } }, "node_modules/@types/geojson": { - "version": "7946.0.10", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.10.tgz", - "integrity": "sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA==", + "version": "7946.0.11", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.11.tgz", + "integrity": "sha512-L7A0AINMXQpVwxHJ4jxD6/XjZ4NDufaRlUJHjNIFKYUFBH1SvOW+neaqb0VTRSLW5suSrSu19ObFEFnfNcr+qg==", "peer": true }, "node_modules/@types/html-minifier-terser": { @@ -2183,9 +2185,9 @@ "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" }, "node_modules/@types/leaflet": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/leaflet/-/leaflet-1.9.1.tgz", - "integrity": "sha512-lYawM3I3lLO6rmBASaqdGgY6zUL4YHr3H79/axx7FNYyPXuj0P1DZHbkNo8Itbv0i7Y9EryLWtDXXROMygXhRA==", + "version": "1.9.6", + "resolved": "https://registry.npmjs.org/@types/leaflet/-/leaflet-1.9.6.tgz", + "integrity": "sha512-HakGTK5LBBWegNWsAmTlG55zN1zszYec7aG47/z6SzT90bW2vqjmbqk3YKAbrtveO+G7fSTKTYqVbIwAFnTrbg==", "peer": true, "dependencies": { "@types/geojson": "*" @@ -4950,6 +4952,28 @@ "tslib": "^2.0.3" } }, + "node_modules/dot-object": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/dot-object/-/dot-object-2.1.4.tgz", + "integrity": "sha512-7FXnyyCLFawNYJ+NhkqyP9Wd2yzuo+7n9pGiYpkmXCTYa8Ci2U0eUNDVg5OuO5Pm6aFXI2SWN8/N/w7SJWu1WA==", + "dev": true, + "dependencies": { + "commander": "^4.0.0", + "glob": "^7.1.5" + }, + "bin": { + "dot-object": "bin/dot-object" + } + }, + "node_modules/dot-object/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, "node_modules/dotenv": { "version": "10.0.0", "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", @@ -5439,6 +5463,19 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/esquery": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", @@ -5820,6 +5857,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true, + "bin": { + "flat": "cli.js" + } + }, "node_modules/flat-cache": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", @@ -6590,6 +6636,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/is-valid-glob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz", + "integrity": "sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/is-wsl": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", @@ -6800,9 +6855,9 @@ } }, "node_modules/leaflet": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/leaflet/-/leaflet-1.9.3.tgz", - "integrity": "sha512-iB2cR9vAkDOu5l3HAay2obcUHZ7xwUBBjph8+PGtmW/2lYhbLizWtG7nTeYht36WfOslixQF9D/uSIzhZgGMfQ==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/leaflet/-/leaflet-1.9.4.tgz", + "integrity": "sha512-nxS1ynzJOmOlHp+iL3FyWqK89GtNL8U8rvlMOsQdTTssxZwCXh8N2NB3GDQOL+YR3XnWyZAxwQixURb+FA74PA==", "peer": true }, "node_modules/leaflet-control-geocoder": { @@ -9529,6 +9584,12 @@ "wbuf": "^1.7.3" } }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, "node_modules/ssri": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", @@ -10085,6 +10146,43 @@ "resolved": "https://registry.npmjs.org/vue/-/vue-2.6.14.tgz", "integrity": "sha512-x2284lgYvjOMj3Za7kqzRcUSxBboHqtgRE2zlos1qWaOye5yUmHn42LB1250NJBLRwEcdrB0JRwyPTEPhfQjiQ==" }, + "node_modules/vue-cli-plugin-i18n": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/vue-cli-plugin-i18n/-/vue-cli-plugin-i18n-2.3.2.tgz", + "integrity": "sha512-FM2soNhewEt1ebdwRQ4JrX9upSzA+5QJLOHBUcSlMqzfRkVCGVYva28QZ/DeObB+ODklpA/1Dwr+1x3e4xrLew==", + "dev": true, + "dependencies": { + "debug": "^4.3.0", + "deepmerge": "^4.2.0", + "dotenv": "^8.2.0", + "flat": "^5.0.0", + "rimraf": "^3.0.0", + "vue": "^2.6.11", + "vue-i18n": "^8.17.0", + "vue-i18n-extract": "^1.0.2" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/vue-cli-plugin-i18n/node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/vue-cli-plugin-i18n/node_modules/dotenv": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", + "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/vue-eslint-parser": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.1.0.tgz", @@ -10157,6 +10255,58 @@ "integrity": "sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==", "dev": true }, + "node_modules/vue-i18n": { + "version": "8.28.2", + "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-8.28.2.tgz", + "integrity": "sha512-C5GZjs1tYlAqjwymaaCPDjCyGo10ajUphiwA922jKt9n7KPpqR7oM1PCwYzhB/E7+nT3wfdG3oRre5raIT1rKA==" + }, + "node_modules/vue-i18n-extract": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/vue-i18n-extract/-/vue-i18n-extract-1.2.3.tgz", + "integrity": "sha512-ZLtF6wp732KHKawHx5ZSmjyydkli9g26z0NfGLP89DkiGx4nKFYZ2oIH35HtImdhcfq1zqkeSwxs7kRzarLoVw==", + "dev": true, + "dependencies": { + "commander": "^6.1.0", + "dot-object": "^2.1.4", + "glob": "^7.1.6", + "is-valid-glob": "^1.0.0", + "js-yaml": "^3.14.0" + }, + "bin": { + "vue-i18n-extract": "bin/vue-i18n-extract.js" + } + }, + "node_modules/vue-i18n-extract/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/vue-i18n-extract/node_modules/commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/vue-i18n-extract/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, "node_modules/vue-loader": { "version": "17.0.1", "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-17.0.1.tgz", @@ -12565,9 +12715,9 @@ } }, "@types/geojson": { - "version": "7946.0.10", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.10.tgz", - "integrity": "sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA==", + "version": "7946.0.11", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.11.tgz", + "integrity": "sha512-L7A0AINMXQpVwxHJ4jxD6/XjZ4NDufaRlUJHjNIFKYUFBH1SvOW+neaqb0VTRSLW5suSrSu19ObFEFnfNcr+qg==", "peer": true }, "@types/html-minifier-terser": { @@ -12591,9 +12741,9 @@ "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" }, "@types/leaflet": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/leaflet/-/leaflet-1.9.1.tgz", - "integrity": "sha512-lYawM3I3lLO6rmBASaqdGgY6zUL4YHr3H79/axx7FNYyPXuj0P1DZHbkNo8Itbv0i7Y9EryLWtDXXROMygXhRA==", + "version": "1.9.6", + "resolved": "https://registry.npmjs.org/@types/leaflet/-/leaflet-1.9.6.tgz", + "integrity": "sha512-HakGTK5LBBWegNWsAmTlG55zN1zszYec7aG47/z6SzT90bW2vqjmbqk3YKAbrtveO+G7fSTKTYqVbIwAFnTrbg==", "peer": true, "requires": { "@types/geojson": "*" @@ -14658,6 +14808,24 @@ "tslib": "^2.0.3" } }, + "dot-object": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/dot-object/-/dot-object-2.1.4.tgz", + "integrity": "sha512-7FXnyyCLFawNYJ+NhkqyP9Wd2yzuo+7n9pGiYpkmXCTYa8Ci2U0eUNDVg5OuO5Pm6aFXI2SWN8/N/w7SJWu1WA==", + "dev": true, + "requires": { + "commander": "^4.0.0", + "glob": "^7.1.5" + }, + "dependencies": { + "commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true + } + } + }, "dotenv": { "version": "10.0.0", "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", @@ -15018,6 +15186,12 @@ } } }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, "esquery": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", @@ -15330,6 +15504,12 @@ "path-exists": "^4.0.0" } }, + "flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true + }, "flat-cache": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", @@ -15880,6 +16060,12 @@ "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", "dev": true }, + "is-valid-glob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz", + "integrity": "sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA==", + "dev": true + }, "is-wsl": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", @@ -16048,9 +16234,9 @@ } }, "leaflet": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/leaflet/-/leaflet-1.9.3.tgz", - "integrity": "sha512-iB2cR9vAkDOu5l3HAay2obcUHZ7xwUBBjph8+PGtmW/2lYhbLizWtG7nTeYht36WfOslixQF9D/uSIzhZgGMfQ==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/leaflet/-/leaflet-1.9.4.tgz", + "integrity": "sha512-nxS1ynzJOmOlHp+iL3FyWqK89GtNL8U8rvlMOsQdTTssxZwCXh8N2NB3GDQOL+YR3XnWyZAxwQixURb+FA74PA==", "peer": true }, "leaflet-control-geocoder": { @@ -18066,6 +18252,12 @@ "wbuf": "^1.7.3" } }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, "ssri": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", @@ -18461,6 +18653,36 @@ "resolved": "https://registry.npmjs.org/vue/-/vue-2.6.14.tgz", "integrity": "sha512-x2284lgYvjOMj3Za7kqzRcUSxBboHqtgRE2zlos1qWaOye5yUmHn42LB1250NJBLRwEcdrB0JRwyPTEPhfQjiQ==" }, + "vue-cli-plugin-i18n": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/vue-cli-plugin-i18n/-/vue-cli-plugin-i18n-2.3.2.tgz", + "integrity": "sha512-FM2soNhewEt1ebdwRQ4JrX9upSzA+5QJLOHBUcSlMqzfRkVCGVYva28QZ/DeObB+ODklpA/1Dwr+1x3e4xrLew==", + "dev": true, + "requires": { + "debug": "^4.3.0", + "deepmerge": "^4.2.0", + "dotenv": "^8.2.0", + "flat": "^5.0.0", + "rimraf": "^3.0.0", + "vue": "^2.6.11", + "vue-i18n": "^8.17.0", + "vue-i18n-extract": "^1.0.2" + }, + "dependencies": { + "deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true + }, + "dotenv": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", + "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==", + "dev": true + } + } + }, "vue-eslint-parser": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.1.0.tgz", @@ -18514,6 +18736,51 @@ "integrity": "sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==", "dev": true }, + "vue-i18n": { + "version": "8.28.2", + "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-8.28.2.tgz", + "integrity": "sha512-C5GZjs1tYlAqjwymaaCPDjCyGo10ajUphiwA922jKt9n7KPpqR7oM1PCwYzhB/E7+nT3wfdG3oRre5raIT1rKA==" + }, + "vue-i18n-extract": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/vue-i18n-extract/-/vue-i18n-extract-1.2.3.tgz", + "integrity": "sha512-ZLtF6wp732KHKawHx5ZSmjyydkli9g26z0NfGLP89DkiGx4nKFYZ2oIH35HtImdhcfq1zqkeSwxs7kRzarLoVw==", + "dev": true, + "requires": { + "commander": "^6.1.0", + "dot-object": "^2.1.4", + "glob": "^7.1.6", + "is-valid-glob": "^1.0.0", + "js-yaml": "^3.14.0" + }, + "dependencies": { + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "dev": true + }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + } + } + }, "vue-loader": { "version": "17.0.1", "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-17.0.1.tgz", diff --git a/src/web/package.json b/src/web/package.json index 815ed1c..d5e1da9 100644 --- a/src/web/package.json +++ b/src/web/package.json @@ -7,7 +7,8 @@ "build:web": "vue-cli-service build", "build:docker": "vue-cli-service build --dest ../app/dist/web", "lint": "vue-cli-service lint", - "build": "vue-cli-service build --skip-plugins @vue/cli-plugin-eslint" + "build": "vue-cli-service build --skip-plugins @vue/cli-plugin-eslint", + "i18n:report": "vue-cli-service i18n:report --src \"./src/**/*.?(js|vue)\" --locales \"./src/locales/**/*.json\"" }, "dependencies": { "axios": "0.24.0", @@ -15,6 +16,7 @@ "glob-parent": ">=5.1.2", "leaflet-control-geocoder": "2.4.0", "vue": "2.6.14", + "vue-i18n": "^8.26.3", "vue-matomo": "4.2.0", "vue-router": "3.5.3", "vue2-leaflet": "2.7.1", @@ -32,6 +34,7 @@ "eslint": "8.21.0", "eslint-plugin-prettier": "4.0.0", "eslint-plugin-vue": "9.3.0", + "vue-cli-plugin-i18n": "~2.3.2", "vue-template-compiler": "2.6.14" }, "eslintConfig": { diff --git a/src/web/src/App.vue b/src/web/src/App.vue index 6ce0293..fd8b5cd 100644 --- a/src/web/src/App.vue +++ b/src/web/src/App.vue @@ -9,15 +9,24 @@ box-shadow: 1px 3px 3px 0px rgba(163,163,163,0.33) !important; " color="#fff" flat height="77" max-height="77" class="shadow">
- + + class="ml-4"> -
-
+ + + {{ locale === 'en' ? 'Français' : 'English' }} +
@@ -49,13 +58,13 @@ box-shadow: 1px 3px 3px 0px rgba(163,163,163,0.33) !important;
- © {{ new Date().getFullYear() }} Government of Yukon + © {{ new Date().getFullYear() }} {{ $t("footer.government") }}
@@ -75,6 +84,7 @@ import * as config from "./config"; import { mapState } from "vuex"; import IconLoader from "./components/icons/IconLoader.vue"; import FeedbackForm from "./components/UI/FeedbackForm.vue"; +import { mapGetters, mapActions } from "vuex"; export default { name: "App", @@ -94,6 +104,10 @@ export default { }, watch: {}, methods: { + ...mapActions({ + loadLocale: "setLocale", + changeLocale: "setCookieLocale" + }), changeBackground() { this.noBgImg = false; }, @@ -107,7 +121,26 @@ export default { this.menuShow = !this.menuShow; }, }, - components: { IconLoader, FeedbackForm } + components: { IconLoader, FeedbackForm }, + computed: { + ...mapGetters(["locale"]), + }, + mounted() { + const cookie = {}; + + document.cookie.split(';').forEach(function(el) { + let [key,value] = el.split('='); + cookie[key.trim()] = value; + }) + + if (!cookie["locale"]) { + document.cookie = "locale=en" + } else { + this.loadLocale(cookie["locale"]); + this.$i18n.locale = cookie["locale"]; + } + + }, }; diff --git a/src/web/src/components/Employees.vue b/src/web/src/components/Employees.vue index 86f7007..d55d8e0 100644 --- a/src/web/src/components/Employees.vue +++ b/src/web/src/components/Employees.vue @@ -20,7 +20,7 @@

- Browse the employee directory by department + {{ $t("Employees.directoryByDepartment") }}

diff --git a/src/web/src/components/UI/FeedbackForm.vue b/src/web/src/components/UI/FeedbackForm.vue index 7409181..f7612fb 100644 --- a/src/web/src/components/UI/FeedbackForm.vue +++ b/src/web/src/components/UI/FeedbackForm.vue @@ -5,7 +5,7 @@
-

Was this page helpful? *

+

{{ $t("feedbackForm.question")}} *

diff --git a/src/web/src/components/UI/SearchBarHeader.vue b/src/web/src/components/UI/SearchBarHeader.vue index 0d7e72d..1547abd 100644 --- a/src/web/src/components/UI/SearchBarHeader.vue +++ b/src/web/src/components/UI/SearchBarHeader.vue @@ -1,7 +1,7 @@ -

Your search for {{ this.searchTitle.replace(/-/g, " ") }} in the department {{this.department}} had no results.

-

Your search for {{ this.searchTitle.replace(/-/g, " ") }} has no results.

-

Your search for {{ this.searchTitle.replace(/-/g, " ") }} in the department {{this.department}} found {{ this.itemsLength }} results.

-

Your search for {{ this.searchTitle.replace(/-/g, " ") }} found {{ this.itemsLength }} results. +

{{ $t("EmployeeSearch.noResultsByDepartment.text1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("EmployeeSearch.noResultsByDepartment.text2") }} {{this.department}} {{ $t("EmployeeSearch.noResultsByDepartment.text3") }}

+

{{ $t("EmployeeSearch.noResults.text1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("EmployeeSearch.noResults.text2") }}

+

{{ $t("EmployeeSearch.resultsByDepartment.text1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("EmployeeSearch.resultsByDepartment.text2") }} {{this.department}} {{ $t("EmployeeSearch.resultsByDepartment.text3") }} {{ this.itemsLength }} {{ $t("EmployeeSearch.resultsByDepartment.text4") }}

+

{{ $t("EmployeeSearch.results.text1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("EmployeeSearch.results.text3") }} {{ this.itemsLength }} {{ $t("EmployeeSearch.results.text3") }}

-

Group by:

+

{{ $t("EmployeeSearch.groupBy") }}:

- See all government employees - Department - Location - Position + {{ $t("EmployeeSearch.groupBy") }} + {{ $t("EmployeeSearch.department") }} + {{ $t("EmployeeSearch.location") }} + {{ $t("EmployeeSearch.position") }} diff --git a/src/web/src/locales/en.json b/src/web/src/locales/en.json index 8e7b68d..4558185 100644 --- a/src/web/src/locales/en.json +++ b/src/web/src/locales/en.json @@ -49,5 +49,32 @@ "community": "Community", "postalCode": "Postal code", "mailCode": "Mail code" + }, + "EmployeeSearch": { + "noResultsByDepartment": { + "text1": "Your search for", + "text2": "in the department", + "text3": "had no results." + }, + "noResults": { + "text1": "Your search for", + "text2": "has no results." + }, + "resultsByDepartment": { + "text1": "Your search for", + "text2": "in the department", + "text3": "found", + "text4": "results." + }, + "results": { + "text1": "Your search for", + "text2": "found", + "text3": "results." + }, + "groupBy": "Group by", + "seeAll": "See all government employees", + "department": "Department", + "location": "Location", + "position": "Position" } } \ No newline at end of file diff --git a/src/web/src/locales/fr.json b/src/web/src/locales/fr.json index 431fdb1..3587185 100644 --- a/src/web/src/locales/fr.json +++ b/src/web/src/locales/fr.json @@ -49,5 +49,32 @@ "community": "Communauté", "postalCode": "Code postal", "mailCode": "Code courrier" + }, + "EmployeeSearch": { + "noResultsByDepartment": { + "text1": "Votre recherche", + "text2": "dans le département", + "text3": "n'a donné aucun résultat." + }, + "noResults": { + "text1": "Votre recherche", + "text2": "n'a donné aucun résultat." + }, + "resultsByDepartment": { + "text1": "Votre recherche", + "text2": "dans le département", + "text3": "a abouti à", + "text4": "résultats." + }, + "results": { + "text1": "Votre recherche", + "text2": "a abouti à", + "text3": "résultats." + }, + "groupBy": "Group by", + "seeAll": "Voir tous les employés du gouvernement", + "department": "Département", + "location": "Emplacement", + "position": "Position" } } \ No newline at end of file From 676d9a9abb1ea5294e0612627654e1af1b9036d0 Mon Sep 17 00:00:00 2001 From: Emanuel Pastrana Date: Tue, 26 Sep 2023 17:35:46 -0600 Subject: [PATCH 08/29] Grid translated --- src/web/src/components/Grid.vue | 14 +++++++------- src/web/src/locales/en.json | 8 ++++++++ src/web/src/locales/fr.json | 10 +++++++++- 3 files changed, 24 insertions(+), 8 deletions(-) diff --git a/src/web/src/components/Grid.vue b/src/web/src/components/Grid.vue index 1f12f26..5e3f910 100644 --- a/src/web/src/components/Grid.vue +++ b/src/web/src/components/Grid.vue @@ -15,15 +15,15 @@ -

Group by:

+

{{ $t("Grid.groupBy") }}:

- See all government employees - Location - Position + {{ $t("Grid.seeAll") }} + {{ $t("Grid.location") }} + {{ $t("Grid.position") }} @@ -37,16 +37,16 @@
-

There are no results

+

{{ $t("Grid.noResults") }}

{{ div }}

-

( {{ divisionLength }} Results )

+

( {{ divisionLength }} {{ $t("Grid.results") }} )

{{ branch }}

-

( {{ totalLength }} Results )

+

( {{ totalLength }} {{ $t("Grid.results") }} )

diff --git a/src/web/src/locales/en.json b/src/web/src/locales/en.json index 4558185..996eea8 100644 --- a/src/web/src/locales/en.json +++ b/src/web/src/locales/en.json @@ -76,5 +76,13 @@ "department": "Department", "location": "Location", "position": "Position" + }, + "Grid": { + "groupBy": "Group by", + "seeAll": "See all government employees", + "location": "Location", + "position": "Position", + "noResults": "There are no results.", + "results": "Results" } } \ No newline at end of file diff --git a/src/web/src/locales/fr.json b/src/web/src/locales/fr.json index 3587185..b3b9234 100644 --- a/src/web/src/locales/fr.json +++ b/src/web/src/locales/fr.json @@ -71,10 +71,18 @@ "text2": "a abouti à", "text3": "résultats." }, - "groupBy": "Group by", + "groupBy": "Par groupe", "seeAll": "Voir tous les employés du gouvernement", "department": "Département", "location": "Emplacement", "position": "Position" + }, + "Grid": { + "groupBy": "Par groupe", + "seeAll": "Voir tous les employés du gouvernement", + "location": "Emplacement", + "position": "Position", + "noResults": "Il n'y a aucun résultat", + "results": "Résultats" } } \ No newline at end of file From df2dfb3f405e4f03fa7d2d0fefaa931849d99a8e Mon Sep 17 00:00:00 2001 From: Emanuel Pastrana Date: Tue, 26 Sep 2023 17:37:03 -0600 Subject: [PATCH 09/29] tab size: 2 --- src/web/src/locales/fr.json | 172 ++++++++++++++++++------------------ 1 file changed, 86 insertions(+), 86 deletions(-) diff --git a/src/web/src/locales/fr.json b/src/web/src/locales/fr.json index b3b9234..09491e4 100644 --- a/src/web/src/locales/fr.json +++ b/src/web/src/locales/fr.json @@ -1,88 +1,88 @@ { - "SearchBarHeader": { - "title": "Trouver un employé du gouvernement", - "search": "Saisissez le nom, le titre du poste, l'e-mail ou le numéro de téléphone d'une personne dans la barre de recherche.", - "keywords": "mots clés" - }, - "Employees": { - "directoryByDepartment": "Parcourez l'annuaire des employés par département" - }, - "footer": { - "government": "Gouvernement du Yukon", - "copyright": "Droits d'auteur", - "disclaimer": "Clause de non-responsabilité", - "privacy": "Déclaration de confidentialité" - }, - "FeedbackForm": { - "question": "Cette page vous a été utile?", - "likeQuestion": "Comment cette page vous a-t-elle aidé ?", - "dislikeQuestion": "Comment pouvons nous améliorer cette page?", - "submitFeedback": "Soumettre des commentaires", - "thanksFeedback": "Merci d'avoir pris le temps de nous envoyer vos commentaires.", - "fieldIsRequired": "Champ requis.", - "tryAgain": "Veuillez réessayer plus tard!" - }, - "Department": { - "browseEmployeesByDivisions": "Parcourir les employés par ces divisions", - "notResults": "Aucun résultat.", - "viewList": "Afficher une liste de tous les départements de", - "groupBy:": "Regrouper par :", - "seeAll": "Voir tous les employés du gouvernement", - "location": "Emplacement", - "position": "Position", - "results": "Résultats" - }, - "EmployeeDetails": { - "organization": "Organisation", - "department": "Département", - "division": "Division", - "branch": "Branche", - "unit": "Unité", - "contact": "Contacter", - "phoneOffice": "Bureau téléphonique", - "emailAddress": "Adresse email", - "faxOffice": "Bureau de fax", - "positionInformation": "Informations de position", - "manager": "Gérant", - "location": "Emplacement", - "address": "Aadresse", - "community": "Communauté", - "postalCode": "Code postal", - "mailCode": "Code courrier" - }, - "EmployeeSearch": { - "noResultsByDepartment": { - "text1": "Votre recherche", - "text2": "dans le département", - "text3": "n'a donné aucun résultat." - }, - "noResults": { - "text1": "Votre recherche", - "text2": "n'a donné aucun résultat." - }, - "resultsByDepartment": { - "text1": "Votre recherche", - "text2": "dans le département", - "text3": "a abouti à", - "text4": "résultats." - }, - "results": { - "text1": "Votre recherche", - "text2": "a abouti à", - "text3": "résultats." - }, - "groupBy": "Par groupe", - "seeAll": "Voir tous les employés du gouvernement", - "department": "Département", - "location": "Emplacement", - "position": "Position" - }, - "Grid": { - "groupBy": "Par groupe", - "seeAll": "Voir tous les employés du gouvernement", - "location": "Emplacement", - "position": "Position", - "noResults": "Il n'y a aucun résultat", - "results": "Résultats" - } + "SearchBarHeader": { + "title": "Trouver un employé du gouvernement", + "search": "Saisissez le nom, le titre du poste, l'e-mail ou le numéro de téléphone d'une personne dans la barre de recherche.", + "keywords": "mots clés" + }, + "Employees": { + "directoryByDepartment": "Parcourez l'annuaire des employés par département" + }, + "footer": { + "government": "Gouvernement du Yukon", + "copyright": "Droits d'auteur", + "disclaimer": "Clause de non-responsabilité", + "privacy": "Déclaration de confidentialité" + }, + "FeedbackForm": { + "question": "Cette page vous a été utile?", + "likeQuestion": "Comment cette page vous a-t-elle aidé ?", + "dislikeQuestion": "Comment pouvons nous améliorer cette page?", + "submitFeedback": "Soumettre des commentaires", + "thanksFeedback": "Merci d'avoir pris le temps de nous envoyer vos commentaires.", + "fieldIsRequired": "Champ requis.", + "tryAgain": "Veuillez réessayer plus tard!" + }, + "Department": { + "browseEmployeesByDivisions": "Parcourir les employés par ces divisions", + "notResults": "Aucun résultat.", + "viewList": "Afficher une liste de tous les départements de", + "groupBy:": "Regrouper par :", + "seeAll": "Voir tous les employés du gouvernement", + "location": "Emplacement", + "position": "Position", + "results": "Résultats" + }, + "EmployeeDetails": { + "organization": "Organisation", + "department": "Département", + "division": "Division", + "branch": "Branche", + "unit": "Unité", + "contact": "Contacter", + "phoneOffice": "Bureau téléphonique", + "emailAddress": "Adresse email", + "faxOffice": "Bureau de fax", + "positionInformation": "Informations de position", + "manager": "Gérant", + "location": "Emplacement", + "address": "Aadresse", + "community": "Communauté", + "postalCode": "Code postal", + "mailCode": "Code courrier" + }, + "EmployeeSearch": { + "noResultsByDepartment": { + "text1": "Votre recherche", + "text2": "dans le département", + "text3": "n'a donné aucun résultat." + }, + "noResults": { + "text1": "Votre recherche", + "text2": "n'a donné aucun résultat." + }, + "resultsByDepartment": { + "text1": "Votre recherche", + "text2": "dans le département", + "text3": "a abouti à", + "text4": "résultats." + }, + "results": { + "text1": "Votre recherche", + "text2": "a abouti à", + "text3": "résultats." + }, + "groupBy": "Par groupe", + "seeAll": "Voir tous les employés du gouvernement", + "department": "Département", + "location": "Emplacement", + "position": "Position" + }, + "Grid": { + "groupBy": "Par groupe", + "seeAll": "Voir tous les employés du gouvernement", + "location": "Emplacement", + "position": "Position", + "noResults": "Il n'y a aucun résultat", + "results": "Résultats" + } } \ No newline at end of file From d2228b3ba7cb6964adbc61f7657492f56c6cafa5 Mon Sep 17 00:00:00 2001 From: Emanuel Pastrana Date: Wed, 27 Sep 2023 12:44:42 -0600 Subject: [PATCH 10/29] replaced 'Manager' to 'Reports to' --- src/web/src/locales/en.json | 2 +- src/web/src/locales/fr.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/web/src/locales/en.json b/src/web/src/locales/en.json index 996eea8..f81dbe5 100644 --- a/src/web/src/locales/en.json +++ b/src/web/src/locales/en.json @@ -43,7 +43,7 @@ "emailAddress": "Email address", "faxOffice": "Fax office", "positionInformation": "Position information", - "manager": "Manager", + "manager": "Reports to", "location": "Location", "address": "Address", "community": "Community", diff --git a/src/web/src/locales/fr.json b/src/web/src/locales/fr.json index 09491e4..6affaed 100644 --- a/src/web/src/locales/fr.json +++ b/src/web/src/locales/fr.json @@ -43,7 +43,7 @@ "emailAddress": "Adresse email", "faxOffice": "Bureau de fax", "positionInformation": "Informations de position", - "manager": "Gérant", + "manager": "Rapports à", "location": "Emplacement", "address": "Aadresse", "community": "Communauté", From c5a9d32d7f8c38114eda433d7b5788c8d635d3f7 Mon Sep 17 00:00:00 2001 From: Emanuel Pastrana Date: Wed, 27 Sep 2023 13:22:37 -0600 Subject: [PATCH 11/29] progress bar error fixed --- src/web/src/components/Department.vue | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/web/src/components/Department.vue b/src/web/src/components/Department.vue index 1d76504..f70eced 100644 --- a/src/web/src/components/Department.vue +++ b/src/web/src/components/Department.vue @@ -29,11 +29,11 @@

{{ title }}

- {{ $("Department.") }} + -

{{ $("Department.browseEmployeesByDivisions") }}

+

{{ $t("Department.browseEmployeesByDivisions") }}

-

{{ $("Department.notResults") }}

+

{{ $t("Department.notResults") }}

@@ -55,7 +55,7 @@
{{ $("Department.viewList") }} {{ title }} + style="font-size: 22px; font-weight: 700;" :class="{ colorOnClick: checkGrid }">{{ $t("Department.viewList") }} {{ title }}
@@ -64,24 +64,24 @@
-

{{ $("Department.groupBy") }}

+

{{ $t("Department.groupBy") }}

- {{ $("Department.seeAll") }} - {{ $("Department.location") }} - {{ $("Department.position") }} + {{ $t("Department.seeAll") }} + {{ $t("Department.location") }} + {{ $t("Department.position") }}
-

{{ $("Department.notResults") }}

+

{{ $t("Department.notResults") }}

-

{{ divisionLength }} {{ $("Department.results") }}

+

{{ divisionLength }} {{ $t("Department.results") }}

From 751f2aaee08e975bbeb7eeb6fed731e90bf9a59d Mon Sep 17 00:00:00 2001 From: Emanuel Pastrana Date: Wed, 27 Sep 2023 15:16:35 -0600 Subject: [PATCH 12/29] breadcrumbs tralated --- src/web/src/components/EmployeeDetail.vue | 2 +- src/web/src/components/EmployeeSearch.vue | 2 +- src/web/src/components/Employees.vue | 2 +- src/web/src/components/Grid.vue | 2 +- src/web/src/locales/en.json | 11 ++++++ src/web/src/locales/fr.json | 11 ++++++ src/web/src/router/index.js | 46 +++++++++++------------ src/web/src/views/NotFound.vue | 2 +- 8 files changed, 50 insertions(+), 28 deletions(-) diff --git a/src/web/src/components/EmployeeDetail.vue b/src/web/src/components/EmployeeDetail.vue index 2d9871f..213597a 100644 --- a/src/web/src/components/EmployeeDetail.vue +++ b/src/web/src/components/EmployeeDetail.vue @@ -7,7 +7,7 @@ diff --git a/src/web/src/components/EmployeeSearch.vue b/src/web/src/components/EmployeeSearch.vue index 70653eb..2c8b64d 100644 --- a/src/web/src/components/EmployeeSearch.vue +++ b/src/web/src/components/EmployeeSearch.vue @@ -7,7 +7,7 @@ diff --git a/src/web/src/components/Employees.vue b/src/web/src/components/Employees.vue index fced2eb..e16fd7f 100644 --- a/src/web/src/components/Employees.vue +++ b/src/web/src/components/Employees.vue @@ -10,7 +10,7 @@ diff --git a/src/web/src/components/Grid.vue b/src/web/src/components/Grid.vue index 5e3f910..2f957c7 100644 --- a/src/web/src/components/Grid.vue +++ b/src/web/src/components/Grid.vue @@ -8,7 +8,7 @@ diff --git a/src/web/src/locales/en.json b/src/web/src/locales/en.json index f81dbe5..f582bab 100644 --- a/src/web/src/locales/en.json +++ b/src/web/src/locales/en.json @@ -84,5 +84,16 @@ "position": "Position", "noResults": "There are no results.", "results": "Results" + }, + "Router": { + "home": "Yukon.ca home", + "FindAGovernmentEmployee": "Find a government employee", + "department": "Department", + "search": "Search", + "division": "Division", + "branch": "Branch", + "username": "Username", + "findEmployee": "Find Employee", + "pageNotFound": "Page not found" } } \ No newline at end of file diff --git a/src/web/src/locales/fr.json b/src/web/src/locales/fr.json index 6affaed..f2fd375 100644 --- a/src/web/src/locales/fr.json +++ b/src/web/src/locales/fr.json @@ -84,5 +84,16 @@ "position": "Position", "noResults": "Il n'y a aucun résultat", "results": "Résultats" + }, + "Router": { + "home": "Accueil Yukon.ca", + "FindAGovernmentEmployee": "Trouver un employé du gouvernement", + "department": "Département", + "search": "Recherche", + "division": "Division", + "branch": "Branche", + "username": "Nom d'utilisateur", + "findEmployee": "Trouver un employé", + "pageNotFound": "Page non trouvée" } } \ No newline at end of file diff --git a/src/web/src/router/index.js b/src/web/src/router/index.js index 755f57c..b7c5f1f 100644 --- a/src/web/src/router/index.js +++ b/src/web/src/router/index.js @@ -22,12 +22,12 @@ const routes = [ component: EmployeeDetail, meta: { breadcrumb: [ - {name: 'Yukon.ca home', link: 'https://yukon.ca/'}, - {name: 'Find a government employee', link: '/Find-Employee'}, - {name: 'Department', link: '/find-employee/Department' , dynamic: true}, - {name: 'Division', link: '/find-employee/Department/Division' , dynamic: true}, - {name: 'Branch', link: '/find-employee/Department/Division/Branch' , dynamic: true}, - {name: 'Username', dynamic: true} + {name: 'Router.home', link: 'https://yukon.ca/'}, + {name: 'Router.FindAGovernmentEmployee', link: '/Find-Employee'}, + {name: 'Router.department', link: '/find-employee/Department' , dynamic: true}, + {name: 'Router.division', link: '/find-employee/Department/Division' , dynamic: true}, + {name: 'Router.branch', link: '/find-employee/Department/Division/Branch' , dynamic: true}, + {name: 'Router.username', dynamic: true} ] } }, @@ -37,10 +37,10 @@ const routes = [ component: EmployeeSearch, meta: { breadcrumb: [ - {name: 'Yukon.ca home', link: 'https://yukon.ca/'}, - {name: 'Find a government employee', link: '/Find-Employee'}, - {name: 'Department', link: '/find-employee/Department' , dynamic: true}, - {name: 'Search', dynamic: true}, + {name: 'Router.home', link: 'https://yukon.ca/'}, + {name: 'Router.FindAGovernmentEmployee', link: '/Find-Employee'}, + {name: 'Router.department', link: '/find-employee/Department' , dynamic: true}, + {name: 'Router.search', dynamic: true}, ] } }, @@ -50,11 +50,11 @@ const routes = [ component: Grid, meta: { breadcrumb: [ - {name: 'Yukon.ca home', link: 'https://yukon.ca/'}, - {name: 'Find a government employee', link: '/find-employee'}, - {name: 'Department', link: '/find-employee/Department', dynamic: true}, - {name: 'Division', link: '/find-employee/Department/Division', dynamic: true}, - {name: 'Branch', dynamic: true} + {name: 'Router.home', link: 'https://yukon.ca/'}, + {name: 'Router.FindAGovernmentEmployee', link: '/find-employee'}, + {name: 'Router.department', link: '/find-employee/Department', dynamic: true}, + {name: 'Router.division', link: '/find-employee/Department/Division', dynamic: true}, + {name: 'Router.branch', dynamic: true} ] } }, @@ -65,9 +65,9 @@ const routes = [ meta: { breadcrumb: [ - {name: 'Yukon.ca home', link: 'https://yukon.ca/'}, - {name: 'Find a government employee', link: '/find-employee'}, - {name: 'Department', dynamic: true} + {name: 'Router.home', link: 'https://yukon.ca/'}, + {name: 'Router.FindAGovernmentEmployee', link: '/find-employee'}, + {name: 'DeRouter.departmentpartment', dynamic: true} ] } }, @@ -77,9 +77,9 @@ const routes = [ component: NotFound, meta: { breadcrumb: [ - {name: 'Yukon.ca home', link: 'https://yukon.ca/'}, - {name: 'Find Employee', link: `/find-employee`}, - {name: 'Page not found'}, + {name: 'Router.home', link: 'https://yukon.ca/'}, + {name: 'Router.findEmployee', link: `/find-employee`}, + {name: 'Router.pageNotFound'}, ] } }, @@ -92,8 +92,8 @@ const routes = [ ], meta: { breadcrumb: [ - {name: 'Yukon.ca home', link: 'https://yukon.ca/'}, - {name: 'Find a government employee'}, + {name: 'Router.home', link: 'https://yukon.ca/'}, + {name: 'Router.FindAGovernmentEmployee'}, ] } }, diff --git a/src/web/src/views/NotFound.vue b/src/web/src/views/NotFound.vue index 13d1055..7cb2cd1 100644 --- a/src/web/src/views/NotFound.vue +++ b/src/web/src/views/NotFound.vue @@ -9,7 +9,7 @@ From e7aedd7231941e51b8f5a1aab2bd4ceaaab01da5 Mon Sep 17 00:00:00 2001 From: Emanuel Pastrana Date: Wed, 27 Sep 2023 15:51:44 -0600 Subject: [PATCH 13/29] NotFound traslated --- src/web/src/locales/en.json | 19 +++++++++++++++++++ src/web/src/locales/fr.json | 19 +++++++++++++++++++ src/web/src/views/NotFound.vue | 25 +++++++++++-------------- 3 files changed, 49 insertions(+), 14 deletions(-) diff --git a/src/web/src/locales/en.json b/src/web/src/locales/en.json index f582bab..f296d47 100644 --- a/src/web/src/locales/en.json +++ b/src/web/src/locales/en.json @@ -95,5 +95,24 @@ "username": "Username", "findEmployee": "Find Employee", "pageNotFound": "Page not found" + }, + "NotFound": { + "pageNotFound": "Page non trouvée", + "isNotHere": "Sorry, that page isn't here.", + "mayHaveMoved": "You didn't do anything wrong. We may have moved the page you're looking for somewhere else.", + "followALinkIn": "Did you follow a link from here?", + "leaveAMessageIn": { + "text1": "If you reached this page from another part of Yukon.ca, ", + "text2": "let us know ", + "text3": "so we can correct our mistake." + }, + "followALinkOut": "Did you follow a link from another site?", + "leaveAMessageOut": { + "text1": "Links from other sites can sometimes be old or misspelled. ", + "text2": "Let us know ", + "text3": "where you came from and we can try to contact the other site to fix the problem." + }, + "typeUrl": "Did you type the URL?", + "typedAddressWrong": "You may have typed the address (URL) wrong. Check to make sure you've got the exact right spelling or capitalization." } } \ No newline at end of file diff --git a/src/web/src/locales/fr.json b/src/web/src/locales/fr.json index f2fd375..ed2918e 100644 --- a/src/web/src/locales/fr.json +++ b/src/web/src/locales/fr.json @@ -95,5 +95,24 @@ "username": "Nom d'utilisateur", "findEmployee": "Trouver un employé", "pageNotFound": "Page non trouvée" + }, + "NotFound": { + "pageNotFound": "Page non trouvée", + "isNotHere": "Désolé, cette page n'est pas ici.", + "mayHaveMoved": "Vous n'avez rien fait de mal. Nous avons peut-être déplacé la page que vous recherchez ailleurs.", + "followALinkIn": "Avez-vous suivi un lien à partir d'ici?", + "leaveAMessageIn": { + "text1": "Les liens provenant d'autres sites peuvent parfois être anciens ou mal orthographiés.", + "text2": "faites-le-nous savoir ", + "text3": "afin que nous puissions corriger notre erreur." + }, + "followALinkOut": "Avez-vous suivi un lien d'un autre site?", + "leaveAMessageOut": { + "text1": "Les liens provenant d'autres sites peuvent parfois être anciens ou mal orthographiés. ", + "text2": "Faites-nous savoir ", + "text3": "d'où vous venez et nous pourrons essayer de contacter l'autre site pour résoudre le problème." + }, + "typeUrl": "Avez-vous tapé l'URL?", + "typedAddressWrong": "Vous avez peut-être mal saisi l'adresse (URL). Vérifiez que vous avez exactement la bonne orthographe ou la bonne majuscule." } } \ No newline at end of file diff --git a/src/web/src/views/NotFound.vue b/src/web/src/views/NotFound.vue index 7cb2cd1..3682d3e 100644 --- a/src/web/src/views/NotFound.vue +++ b/src/web/src/views/NotFound.vue @@ -14,27 +14,24 @@ -

Page not found

+

{{ $t("NotFound.pageNotFound") }}

-

Sorry, that page isn’t here.

-

You didn’t do anything wrong. We may have moved the page you're looking for somewhere else.

+

{{ $t("NotFound.isNotHere") }}

+

{{ $t("NotFound.mayHaveMoved") }}

-

Did you follow a link from here?

-

If you reached this page from another part of Yukon.ca, let us know so - we can correct our mistake.

+

{{ $t("NotFound.followALinkIn") }}

+

{{ $t("NotFound.leaveAMessageIn.text1") }}{{ $t("NotFound.leaveAMessageIn.text2") }}{{ $t("NotFound.leaveAMessageIn.text3") }}

-

Did you follow a link from another site?

-

Links from other sites can sometimes be old or misspelled. Let us know - where you came from and we can try to contact the other site to fix the problem.

+

{{ $t("NotFound.followALinkIn") }}

+

{{ $t("NotFound.leaveAMessageOut.text1") }}{{ $t("NotFound.leaveAMessageOut.text2") }}{{ $t("NotFound.leaveAMessageOut.text3") }}

-

Did you type the URL?

-

You may have typed the address (URL) wrong. Check to make sure you’ve got the exact right spelling or - capitalization.

+

{{ $t("NotFound.typedAddressWrong") }}

+

{{ $t("NotFound.typedAddressWrong") }}

Home From 6514601c19a1ff28f684443e646a05c1c3a15b69 Mon Sep 17 00:00:00 2001 From: Emanuel Pastrana Date: Thu, 28 Sep 2023 15:27:21 -0600 Subject: [PATCH 14/29] some fixes --- src/web/package.json | 1 + src/web/src/App.vue | 42 +++++++++++++-------------- src/web/src/components/Department.vue | 2 +- src/web/src/locales/en.json | 7 +++++ src/web/src/locales/fr.json | 21 +++++++++----- src/web/src/main.js | 4 +++ src/web/src/router/index.js | 2 +- src/web/src/store/index.js | 12 -------- src/web/src/views/NotFound.vue | 4 +-- 9 files changed, 51 insertions(+), 44 deletions(-) diff --git a/src/web/package.json b/src/web/package.json index d5e1da9..66f4e22 100644 --- a/src/web/package.json +++ b/src/web/package.json @@ -16,6 +16,7 @@ "glob-parent": ">=5.1.2", "leaflet-control-geocoder": "2.4.0", "vue": "2.6.14", + "vue-cookies": "^1.8.3", "vue-i18n": "^8.26.3", "vue-matomo": "4.2.0", "vue-router": "3.5.3", diff --git a/src/web/src/App.vue b/src/web/src/App.vue index 1aa0387..ae7a20b 100644 --- a/src/web/src/App.vue +++ b/src/web/src/App.vue @@ -10,7 +10,7 @@ box-shadow: 1px 3px 3px 0px rgba(163,163,163,0.33) !important;
- + @@ -19,10 +19,7 @@ box-shadow: 1px 3px 3px 0px rgba(163,163,163,0.33) !important; {{ locale === 'en' ? 'Français' : 'English' }} @@ -58,10 +55,10 @@ box-shadow: 1px 3px 3px 0px rgba(163,163,163,0.33) !important;
© {{ new Date().getFullYear() }} {{ $t("footer.government") }} @@ -120,26 +117,29 @@ export default { toggleMenu: function () { this.menuShow = !this.menuShow; }, + toggleLocale: function () { + const currentLocale = this.$cookies.get("locale"); + + const newLocale = currentLocale === "en" ? "fr" : "en"; + + this.$cookies.set("locale", newLocale); + this.loadLocale(newLocale); + this.$i18n.locale = newLocale; + }, }, components: { IconLoader, FeedbackForm }, computed: { ...mapGetters(["locale"]), }, mounted() { - const cookie = {}; - - document.cookie.split(';').forEach(function(el) { - let [key,value] = el.split('='); - cookie[key.trim()] = value; - }) - - if (!cookie["locale"]) { - document.cookie = "locale=en" + if(this.$cookies.isKey("locale")) { + const locale = this.$cookies.get("locale"); + this.loadLocale(locale); + this.$i18n.locale = locale; } else { - this.loadLocale(cookie["locale"]); - this.$i18n.locale = cookie["locale"]; + this.$cookies.set("locale", "en"); + this.$i18n.locale = "en"; } - }, }; diff --git a/src/web/src/components/Department.vue b/src/web/src/components/Department.vue index d1f408a..c9602ca 100644 --- a/src/web/src/components/Department.vue +++ b/src/web/src/components/Department.vue @@ -11,7 +11,7 @@ diff --git a/src/web/src/locales/en.json b/src/web/src/locales/en.json index f296d47..65cd7b6 100644 --- a/src/web/src/locales/en.json +++ b/src/web/src/locales/en.json @@ -114,5 +114,12 @@ }, "typeUrl": "Did you type the URL?", "typedAddressWrong": "You may have typed the address (URL) wrong. Check to make sure you've got the exact right spelling or capitalization." + }, + "YukonHome": { + "home": "https://yukon.ca/en", + "copyright": "https://yukon.ca/en/copyright", + "disclaimer": "https://yukon.ca/en/disclaimer", + "privacyStatement": "https://yukon.ca/en/privacy-statement", + "contactGovernment": "https://yukon.ca/en/your-government/contact-and-follow-government/contact-government" } } \ No newline at end of file diff --git a/src/web/src/locales/fr.json b/src/web/src/locales/fr.json index ed2918e..82b6478 100644 --- a/src/web/src/locales/fr.json +++ b/src/web/src/locales/fr.json @@ -88,13 +88,13 @@ "Router": { "home": "Accueil Yukon.ca", "FindAGovernmentEmployee": "Trouver un employé du gouvernement", - "department": "Département", - "search": "Recherche", + "department": "Department", + "search": "Search", "division": "Division", - "branch": "Branche", - "username": "Nom d'utilisateur", - "findEmployee": "Trouver un employé", - "pageNotFound": "Page non trouvée" + "branch": "Branch", + "username": "Username", + "findEmployee": "Find Employee", + "pageNotFound": "Page not found" }, "NotFound": { "pageNotFound": "Page non trouvée", @@ -114,5 +114,12 @@ }, "typeUrl": "Avez-vous tapé l'URL?", "typedAddressWrong": "Vous avez peut-être mal saisi l'adresse (URL). Vérifiez que vous avez exactement la bonne orthographe ou la bonne majuscule." - } + }, + "YukonHome": { + "home": "https://yukon.ca/fr", + "copyright": "https://yukon.ca/fr/droit-dauteur", + "disclaimer": "https://yukon.ca/fr/avertissement", + "privacyStatement": "https://yukon.ca/fr/avis-de-confidentialite", + "contactGovernment": "https://yukon.ca/fr/contacter-le-gouvernement" + } } \ No newline at end of file diff --git a/src/web/src/main.js b/src/web/src/main.js index 4e2aad9..b283eac 100644 --- a/src/web/src/main.js +++ b/src/web/src/main.js @@ -7,11 +7,15 @@ import axios from "axios"; import 'leaflet/dist/leaflet.css'; import vuetify from "./plugins/vuetify"; import i18n from './i18n'; +import VueCookies from 'vue-cookies'; Vue.config.productionTip = false; axios.defaults.withCredentials = false +// default options config: { expires: '1d', path: '/', domain: '', secure: '', sameSite: 'Lax' } +Vue.use(VueCookies, { expires: '7d'}); + new Vue({ router, store, diff --git a/src/web/src/router/index.js b/src/web/src/router/index.js index b7c5f1f..be23386 100644 --- a/src/web/src/router/index.js +++ b/src/web/src/router/index.js @@ -67,7 +67,7 @@ const routes = [ breadcrumb: [ {name: 'Router.home', link: 'https://yukon.ca/'}, {name: 'Router.FindAGovernmentEmployee', link: '/find-employee'}, - {name: 'DeRouter.departmentpartment', dynamic: true} + {name: 'Router.department', dynamic: true} ] } }, diff --git a/src/web/src/store/index.js b/src/web/src/store/index.js index 682220c..889962d 100644 --- a/src/web/src/store/index.js +++ b/src/web/src/store/index.js @@ -20,17 +20,5 @@ export default new Vuex.Store({ setLocale: ({ commit, getters }, locale) => { commit("SET_LOCALE", locale); }, - setCookieLocale: ({ commit, getters }, locale) => { - - const cookie = {}; - - document.cookie.split(';').forEach(function(el) { - let [key,value] = el.split('='); - cookie[key.trim()] = value; - }) - - commit("SET_LOCALE", cookie["locale"] === "en" ? "fr" : "en"); - document.cookie = `locale=${ cookie["locale"] === "en" ? "fr" : "en" }`; - }, } }); diff --git a/src/web/src/views/NotFound.vue b/src/web/src/views/NotFound.vue index 3682d3e..6bdc8fa 100644 --- a/src/web/src/views/NotFound.vue +++ b/src/web/src/views/NotFound.vue @@ -22,12 +22,12 @@

{{ $t("NotFound.followALinkIn") }}

{{ $t("NotFound.leaveAMessageIn.text1") }}{{ $t("NotFound.leaveAMessageIn.text2") }}{{ $t("NotFound.leaveAMessageIn.text3") }}

+ :href="$t('YukonHome.contactGovernment')">{{ $t("NotFound.leaveAMessageIn.text2") }}{{ $t("NotFound.leaveAMessageIn.text3") }}

{{ $t("NotFound.followALinkIn") }}

{{ $t("NotFound.leaveAMessageOut.text1") }}{{ $t("NotFound.leaveAMessageOut.text2") }}{{ $t("NotFound.leaveAMessageOut.text3") }}

+ :href="$t('YukonHome.contactGovernment')">{{ $t("NotFound.leaveAMessageOut.text2") }}{{ $t("NotFound.leaveAMessageOut.text3") }}

{{ $t("NotFound.typedAddressWrong") }}

From 1932bb753895de4fc572168832efb5dd4671b9a4 Mon Sep 17 00:00:00 2001 From: Emanuel Pastrana Date: Fri, 29 Sep 2023 12:26:34 -0600 Subject: [PATCH 15/29] languages added in object --- src/web/src/locales/en-us.js | 165 +++++++++++++++++++++++++++++++++++ src/web/src/locales/fr-ca.js | 165 +++++++++++++++++++++++++++++++++++ 2 files changed, 330 insertions(+) create mode 100644 src/web/src/locales/en-us.js create mode 100644 src/web/src/locales/fr-ca.js diff --git a/src/web/src/locales/en-us.js b/src/web/src/locales/en-us.js new file mode 100644 index 0000000..572469a --- /dev/null +++ b/src/web/src/locales/en-us.js @@ -0,0 +1,165 @@ +export const en = { + components: { + search_bar_header: { + title: "Find a government employee", + search: { + label: "Enter a person's name, position title, email or phone number in the search bar.", + input_placeholder: "Keywords" + }, + }, + employees: { + browse_directory_by_department: "Browse the employee directory by department" + }, + feedback_form: { + questions: { + helpful_message: "Was this page helpful?", + how_help_you_message: "How did this page help you?", + how_improve_message: "How can we improve this page?", + }, + buttons: { + submit_feedback: "Submit feedback", + }, + alerts: { + thanks_feedback: "Thanks for taking the time to send us your feedback.", + field_is_required: "field is required.", + try_again: "Please try again later!" + } + }, + department: { + labels: { + browse_employees_by_divisions: "Browse employees by these divisions", + no_results: "There are no results.", + view_list: "View a list of all Department of", + group_by: "Group by:", + see_all_employees: "See all government employees", + location: "Location", + position: "Position", + results: "Results" + }, + }, + employee_details: { + organization: { + title: "Organization", + department: "Department", + division: "Division", + branch: "Branch", + unit: "Unit", + }, + contact: { + title: "Contact", + phone_office: "Phone office", + email_address: "Email address", + fax_office: "Fax office", + }, + position_information: { + title: "Position information", + manager: "Reports to", + }, + location: { + title: "Location", + address: "Address", + community: "Community", + postal_code: "Postal code", + mail_code: "Mail code" + } + }, + employee_search: { + no_results_by_department: { + body: { + part1: "Your search for", + part2: "in the department", + part3: "had no results." + } + }, + no_results: { + body: { + part1: "Your search for", + part2: "has no results." + } + }, + results_by_department: { + body: { + part1: "Your search for", + part2: "in the department", + part3: "found", + part4: "results." + } + }, + results: { + body: { + part1: "Your search for", + part2: "found", + part3: "results." + } + }, + labels: { + group_by: "Group by", + see_all: "See all government employees", + department: "Department", + location: "Location", + position: "Position" + } + }, + grid: { + group_by: "Group by", + see_all: "See all government employees", + location: "Location", + position: "Position", + no_results: "There are no results.", + results: "Results" + }, + not_found: { + page_not_found: "Page non trouvée", + page_is_not_here: { + title: "Sorry, that page isn't here.", + body: "You didn't do anything wrong. We may have moved the page you're looking for somewhere else." + }, + reached_from_inside: { + title: "Did you follow a link from here?", + body: { + part1: "If you reached this page from another part of Yukon.ca, ", + part2: "let us know ", + part3: "so we can correct our mistake." + } + }, + reached_from_outside: { + title: "Did you follow a link from another site?", + body: { + part1: "Links from other sites can sometimes be old or misspelled. ", + part2: "Let us know ", + part3: "where you came from and we can try to contact the other site to fix the problem." + } + }, + address_wrong_message: { + title: "Did you type the URL?", + body: "You may have typed the address (URL) wrong. Check to make sure you've got the exact right spelling or capitalization." + } + }, + }, + breadcrumbs: { + home: "Yukon.ca home", + find_a_government_employee: "Find a government employee", + department: "Department", + search: "Search", + division: "Division", + branch: "Branch", + username: "Username", + find_employee: "Find Employee", + page_not_found: "Page not found" + }, + footer: { + sections: { + government: "Government of Yukon", + copyright: "Copyright", + disclaimer: "Disclaimer", + privacy: "Privacy statement" + } + }, + yukon_urls: { + home: "https://yukon.ca/en", + copyright: "https://yukon.ca/en/copyright", + disclaimer: "https://yukon.ca/en/disclaimer", + privacy_statement: "https://yukon.ca/en/privacy-statement", + contact_government: "https://yukon.ca/en/your-government/contact-and-follow-government/contact-government" + } +}; \ No newline at end of file diff --git a/src/web/src/locales/fr-ca.js b/src/web/src/locales/fr-ca.js new file mode 100644 index 0000000..03fd967 --- /dev/null +++ b/src/web/src/locales/fr-ca.js @@ -0,0 +1,165 @@ +export const fr = { + components: { + search_bar_header: { + title: "Trouver un employé du gouvernement", + search: { + label: "Saisissez le nom, le titre du poste, l'e-mail ou le numéro de téléphone d'une personne dans la barre de recherche.", + input_placeholder: "mots clés" + }, + }, + employees: { + browse_directory_by_department: "Parcourez l'annuaire des employés par département" + }, + feedback_form: { + questions: { + helpful_message: "Cette page vous a été utile?", + how_help_you_message: "Comment cette page vous a-t-elle aidé?", + how_improve_message: "Comment pouvons nous améliorer cette page?", + }, + buttons: { + submit_feedback: "Soumettre des commentaires", + }, + alerts: { + thanks_feedback: "Merci d'avoir pris le temps de nous envoyer vos commentaires.", + field_is_required: "Champ requis.", + try_again: "Veuillez réessayer plus tard!" + } + }, + department: { + labels: { + browse_employees_by_divisions: "Parcourir les employés par ces divisions", + no_results: "Aucun résultat.", + view_list: "Afficher une liste de tous les départements de", + group_by: "Par groupe:", + see_all_employees: "Voir tous les employés du gouvernement", + location: "Emplacement", + position: "Position", + results: "Résultats" + }, + }, + employee_details: { + organization: { + title: "Organisation", + department: "Département", + division: "Division", + branch: "Branche", + unit: "Unité", + }, + contact: { + title: "Contacter", + phone_office: "Bureau téléphonique", + email_address: "Adresse email", + fax_office: "Bureau de fax", + }, + position_information: { + title: "Informations de position", + manager: "Rapports à", + }, + location: { + title: "Emplacement", + address: "Aadresse", + community: "Communauté", + postal_code: "Code postal", + mail_code: "Code courrier" + } + }, + employee_search: { + no_results_by_department: { + body: { + part1: "Votre recherche", + part2: "dans le département", + part3: "n'a donné aucun résultat." + } + }, + no_results: { + body: { + part1: "Votre recherche", + part2: "n'a donné aucun résultat." + } + }, + results_by_department: { + body: { + part1: "Votre recherche", + part2: "dans le département", + part3: "a abouti à", + part4: "résultats." + } + }, + results: { + body: { + part1: "Votre recherche", + part2: "a abouti à", + part3: "résultats." + } + }, + labels: { + group_by: "Par groupe", + see_all: "Voir tous les employés du gouvernement", + department: "Département", + location: "Emplacement", + position: "Position" + } + }, + grid: { + group_by: "Par groupe", + see_all: "Voir tous les employés du gouvernement", + location: "Emplacement", + position: "Position", + no_results: "Il n'y a aucun résultat", + results: "Résultats" + }, + not_found: { + page_not_found: "Page non trouvée", + page_is_not_here: { + title: "Désolé, cette page n'est pas ici.", + body: "Vous n'avez rien fait de mal. Nous avons peut-être déplacé la page que vous recherchez ailleurs." + }, + reached_from_inside: { + title: "Avez-vous suivi un lien à partir d'ici?", + body: { + part1: "Si vous avez atteint cette page à partir d'une autre partie de Yukon.ca,", + part2: "faites-le-nous savoir ", + part3: "afin que nous puissions corriger notre erreur." + } + }, + reached_from_outside: { + title: "Avez-vous suivi un lien d'un autre site?", + body: { + part1: "Les liens provenant d'autres sites peuvent parfois être anciens ou mal orthographiés. ", + part2: "Faites-nous savoir ", + part3: "d'où vous venez et nous pourrons essayer de contacter l'autre site pour résoudre le problème." + } + }, + address_wrong_message: { + title: "Avez-vous tapé l'URL?", + body: "YVous avez peut-être mal saisi l'adresse (URL). Vérifiez que vous avez exactement la bonne orthographe ou la bonne majuscule." + } + }, + }, + breadcrumbs: { + home: "Accueil Yukon.ca", + find_a_government_employee: "Trouver un employé du gouvernement", + department: "Department", + search: "Search", + division: "Division", + branch: "Branch", + username: "Username", + find_employee: "Find Employee", + page_not_found: "Page not found" + }, + footer: { + sections: { + government: "Gouvernement du Yukon", + copyright: "Droits d'auteur", + disclaimer: "Clause de non-responsabilité", + privacy: "Déclaration de confidentialité" + } + }, + yukon_urls: { + home: "https://yukon.ca/en", + copyright: "https://yukon.ca/en/copyright", + disclaimer: "https://yukon.ca/en/disclaimer", + privacy_statement: "https://yukon.ca/en/privacy-statement", + contact_government: "https://yukon.ca/en/your-government/contact-and-follow-government/contact-government" + } +}; \ No newline at end of file From 693f55771e98a314db4c2a101cdbfb31a61a7f0a Mon Sep 17 00:00:00 2001 From: Emanuel Pastrana Date: Fri, 29 Sep 2023 12:35:31 -0600 Subject: [PATCH 16/29] replaced imports --- src/web/src/i18n.js | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/src/web/src/i18n.js b/src/web/src/i18n.js index 6a5a088..298ad69 100644 --- a/src/web/src/i18n.js +++ b/src/web/src/i18n.js @@ -1,24 +1,18 @@ import Vue from 'vue' import VueI18n from 'vue-i18n' import store from './store' +import { en } from "./locales/en-us"; +import { fr } from "./locales/fr-ca"; Vue.use(VueI18n) -function loadLocaleMessages () { - const locales = require.context('./locales', true, /[A-Za-z0-9-_,\s]+\.json$/i) - const messages = {} - locales.keys().forEach(key => { - const matched = key.match(/([A-Za-z0-9-_]+)\./i) - if (matched && matched.length > 1) { - const locale = matched[1] - messages[locale] = locales(key) - } - }) - return messages -} +const messages = { + en, + fr, +}; export default new VueI18n({ locale: "en", fallbackLocale: process.env.VUE_APP_I18N_FALLBACK_LOCALE || 'en', - messages: loadLocaleMessages() + messages }) From 8b8e8dabd3ea6bc25df314662ccd46ec5a92bc29 Mon Sep 17 00:00:00 2001 From: Emanuel Pastrana Date: Fri, 29 Sep 2023 13:47:53 -0600 Subject: [PATCH 17/29] replaced translations --- src/web/src/App.vue | 12 ++--- src/web/src/components/Department.vue | 18 ++++---- src/web/src/components/EmployeeDetail.vue | 32 ++++++------- src/web/src/components/EmployeeSearch.vue | 18 ++++---- src/web/src/components/Employees.vue | 2 +- src/web/src/components/Grid.vue | 14 +++--- src/web/src/components/UI/FeedbackForm.vue | 14 +++--- src/web/src/components/UI/SearchBarHeader.vue | 6 +-- src/web/src/router/index.js | 46 +++++++++---------- src/web/src/views/NotFound.vue | 22 ++++----- 10 files changed, 92 insertions(+), 92 deletions(-) diff --git a/src/web/src/App.vue b/src/web/src/App.vue index ae7a20b..367ea39 100644 --- a/src/web/src/App.vue +++ b/src/web/src/App.vue @@ -10,7 +10,7 @@ box-shadow: 1px 3px 3px 0px rgba(163,163,163,0.33) !important;
- + @@ -55,13 +55,13 @@ box-shadow: 1px 3px 3px 0px rgba(163,163,163,0.33) !important; diff --git a/src/web/src/components/Department.vue b/src/web/src/components/Department.vue index c9602ca..a1f18f3 100644 --- a/src/web/src/components/Department.vue +++ b/src/web/src/components/Department.vue @@ -31,9 +31,9 @@ -

{{ $t("Department.browseEmployeesByDivisions") }}

+

{{ $t("components.department.labels.browse_employees_by_divisions") }}

-

{{ $t("Department.notResults") }}

+

{{ $t("components.department.labels.no_results") }}

@@ -55,7 +55,7 @@
{{ $t("Department.viewList") }} {{ title }} + style="font-size: 22px; font-weight: 700;" :class="{ colorOnClick: checkGrid }">{{ $t("components.department.labels.view_list") }} {{ title }}
@@ -64,24 +64,24 @@
-

{{ $t("Department.groupBy") }}

+

{{ $t("components.department.labels.group_by") }}

- {{ $t("Department.seeAll") }} - {{ $t("Department.location") }} - {{ $t("Department.position") }} + {{ $t("components.department.labels.see_all_employees") }} + {{ $t("components.department.labels.location") }} + {{ $t("components.department.labels.position") }}
-

{{ $t("Department.notResults") }}

+

{{ $t("components.department.labels.no_results") }}

-

{{ divisionLength }} {{ $t("Department.results") }}

+

{{ divisionLength }} {{ $t("components.department.labels.results") }}

diff --git a/src/web/src/components/EmployeeDetail.vue b/src/web/src/components/EmployeeDetail.vue index 213597a..8d06688 100644 --- a/src/web/src/components/EmployeeDetail.vue +++ b/src/web/src/components/EmployeeDetail.vue @@ -27,11 +27,11 @@ -

{{ $t("EmployeeDetails.organization") }}

+

{{ $t("components.employee_details.organization.title") }}

- {{ $t("EmployeeDetails.department") }}: + {{ $t("components.employee_details.organization.department") }}: {{ item.department }} @@ -39,12 +39,12 @@

- {{ $t("EmployeeDetails.division") }}: {{ item.division }} + {{ $t("components.employee_details.organization.division") }}: {{ item.division }}

- {{ $t("EmployeeDetails.branch") }}: + {{ $t("components.employee_details.organization.branch") }}: {{ item.branch }} @@ -52,17 +52,17 @@

- {{ $t("EmployeeDetails.unit") }}: {{ item.unit }} + {{ $t("components.employee_details.organization.unit") }}: {{ item.unit }}

-

{{ $t("EmployeeDetails.contact") }}:

+

{{ $t("components.employee_details.contact.title") }}:

- {{ $t("EmployeeDetails.phoneOffice") }}: + {{ $t("components.employee_details.contact.phone_office") }}: {{ item.phone_office }} @@ -70,23 +70,23 @@

- {{ $t("EmployeeDetails.emailAddress") }}: + {{ $t("components.employee_details.contact.email_address") }}: {{ item.email }}

- {{ $t("EmployeeDetails.faxOffice") }}: {{ item.fax_office }} + {{ $t("components.employee_details.contact.fax_office") }}: {{ item.fax_office }}

-

{{ $t("EmployeeDetails.positionInformation") }}

+

{{ $t("components.employee_details.position_information.title") }}

- {{ $t("EmployeeDetails.manager") }}: + {{ $t("components.employee_details.position_information.manager") }}: {{ item.manager }} @@ -95,20 +95,20 @@ -

{{ $t("EmployeeDetails.location") }}

+

{{ $t("components.employee_details.location.title") }}

- {{ $t("EmployeeDetails.address") }}: {{ item.address }} + {{ $t("components.employee_details.location.address") }}: {{ item.address }}

- {{ $t("EmployeeDetails.community") }}: {{ item.community }} + {{ $t("components.employee_details.location.community") }}: {{ item.community }}

- {{ $t("EmployeeDetails.postalCode") }}: {{ item.postal_code }} + {{ $t("components.employee_details.location.postal_code") }}: {{ item.postal_code }}

- {{ $t("EmployeeDetails.mailCode") }}: {{ item.mailcode }} + {{ $t("components.employee_details.location.mail_code") }}: {{ item.mailcode }}

diff --git a/src/web/src/components/EmployeeSearch.vue b/src/web/src/components/EmployeeSearch.vue index 2c8b64d..0594a32 100644 --- a/src/web/src/components/EmployeeSearch.vue +++ b/src/web/src/components/EmployeeSearch.vue @@ -11,24 +11,24 @@ -

{{ $t("EmployeeSearch.noResultsByDepartment.text1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("EmployeeSearch.noResultsByDepartment.text2") }} {{this.department}} {{ $t("EmployeeSearch.noResultsByDepartment.text3") }}

-

{{ $t("EmployeeSearch.noResults.text1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("EmployeeSearch.noResults.text2") }}

-

{{ $t("EmployeeSearch.resultsByDepartment.text1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("EmployeeSearch.resultsByDepartment.text2") }} {{this.department}} {{ $t("EmployeeSearch.resultsByDepartment.text3") }} {{ this.itemsLength }} {{ $t("EmployeeSearch.resultsByDepartment.text4") }}

-

{{ $t("EmployeeSearch.results.text1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("EmployeeSearch.results.text3") }} {{ this.itemsLength }} {{ $t("EmployeeSearch.results.text3") }} +

{{ $t("components.employee_search.no_results_by_department.body.part1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("components.employee_search.no_results_by_department.body.part2") }} {{this.department}} {{ $t("components.employee_search.no_results_by_department.body.part3") }}

+

{{ $t("components.employee_search.no_results.body.part1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("components.employee_search.no_results.body.part2") }}

+

{{ $t("components.employee_search.results_by_department.body.part1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("components.employee_search.results_by_department.body.part2") }} {{this.department}} {{ $t("components.employee_search.results_by_department.body.part3") }} {{ this.itemsLength }} {{ $t("components.employee_search.results_by_department.body.part4") }}

+

{{ $t("components.employee_search.results.body.part1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("components.employee_search.results.body.part2") }} {{ this.itemsLength }} {{ $t("components.employee_search.results.body.part3") }}

-

{{ $t("EmployeeSearch.groupBy") }}:

+

{{ $t("components.employee_search.labels.group_by") }}:

- {{ $t("EmployeeSearch.groupBy") }} - {{ $t("EmployeeSearch.department") }} - {{ $t("EmployeeSearch.location") }} - {{ $t("EmployeeSearch.position") }} + {{ $t("components.employee_search.labels.see_all") }} + {{ $t("components.employee_search.labels.department") }} + {{ $t("components.employee_search.labels.location") }} + {{ $t("components.employee_search.labels.position") }} diff --git a/src/web/src/components/Employees.vue b/src/web/src/components/Employees.vue index e16fd7f..ba9a624 100644 --- a/src/web/src/components/Employees.vue +++ b/src/web/src/components/Employees.vue @@ -20,7 +20,7 @@

- {{ $t("Employees.directoryByDepartment") }} + {{ $t("components.employees.browse_directory_by_department") }}

diff --git a/src/web/src/components/Grid.vue b/src/web/src/components/Grid.vue index 2f957c7..33ed965 100644 --- a/src/web/src/components/Grid.vue +++ b/src/web/src/components/Grid.vue @@ -15,15 +15,15 @@ -

{{ $t("Grid.groupBy") }}:

+

{{ $t("components.grid.group_by") }}:

- {{ $t("Grid.seeAll") }} - {{ $t("Grid.location") }} - {{ $t("Grid.position") }} + {{ $t("components.grid.see_all") }} + {{ $t("components.grid.location") }} + {{ $t("components.grid.position") }} @@ -37,16 +37,16 @@
-

{{ $t("Grid.noResults") }}

+

{{ $t("components.grid.no_results") }}

{{ div }}

-

( {{ divisionLength }} {{ $t("Grid.results") }} )

+

( {{ divisionLength }} {{ $t("components.grid.results") }} )

{{ branch }}

-

( {{ totalLength }} {{ $t("Grid.results") }} )

+

( {{ totalLength }} {{ $t("components.grid.results") }} )

diff --git a/src/web/src/components/UI/FeedbackForm.vue b/src/web/src/components/UI/FeedbackForm.vue index 265c3e9..4050a89 100644 --- a/src/web/src/components/UI/FeedbackForm.vue +++ b/src/web/src/components/UI/FeedbackForm.vue @@ -5,7 +5,7 @@
-

{{ $t("FeedbackForm.question")}} *

+

{{ $t("components.feedback_form.questions.helpful_message")}} *

@@ -16,29 +16,29 @@
-

{{ feedbackCheck === 1 ? $t("FeedbackForm.likeQuestion") + ' *' : $t("FeedbackForm.dislikeQuestion") + ' * ' }} +

{{ feedbackCheck === 1 ? $t("components.feedback_form.questions.how_help_you_message") + ' *' : $t("components.feedback_form.questions.how_improve_message") + ' * ' }}

- {{ $t("FeedbackForm.submitFeedback") }} + {{ $t("components.feedback_form.buttons.submit_feedback") }}
diff --git a/src/web/src/components/UI/SearchBarHeader.vue b/src/web/src/components/UI/SearchBarHeader.vue index 15ed14b..981e81c 100644 --- a/src/web/src/components/UI/SearchBarHeader.vue +++ b/src/web/src/components/UI/SearchBarHeader.vue @@ -1,7 +1,7 @@ -

{{ $t("NotFound.pageNotFound") }}

+

{{ $t("components.not_found.page_not_found") }}

-

{{ $t("NotFound.isNotHere") }}

-

{{ $t("NotFound.mayHaveMoved") }}

+

{{ $t("components.not_found.page_is_not_here.title") }}

+

{{ $t("components.not_found.page_is_not_here.body") }}

-

{{ $t("NotFound.followALinkIn") }}

-

{{ $t("NotFound.leaveAMessageIn.text1") }}{{ $t("NotFound.leaveAMessageIn.text2") }}{{ $t("NotFound.leaveAMessageIn.text3") }}

+

{{ $t("components.not_found.reached_from_inside.title") }}

+

{{ $t("components.not_found.reached_from_inside.body.part1") }}{{ $t("components.not_found.reached_from_inside.body.part2") }}{{ $t("components.not_found.reached_from_inside.body.part3") }}

-

{{ $t("NotFound.followALinkIn") }}

-

{{ $t("NotFound.leaveAMessageOut.text1") }}{{ $t("NotFound.leaveAMessageOut.text2") }}{{ $t("NotFound.leaveAMessageOut.text3") }}

+

{{ $t("components.not_found.reached_from_outside.title") }}

+

{{ $t("components.not_found.reached_from_outside.body.part1") }}{{ $t("components.not_found.reached_from_outside.body.part2") }}{{ $t("components.not_found.reached_from_outside.body.part3") }}

-

{{ $t("NotFound.typedAddressWrong") }}

-

{{ $t("NotFound.typedAddressWrong") }}

+

{{ $t("components.not_found.address_wrong_message.title") }}

+

{{ $t("components.not_found.address_wrong_message.body") }}

Home From 69f15e8ab2b19b8e374a997b92062b122703d7b9 Mon Sep 17 00:00:00 2001 From: Emanuel Pastrana Date: Fri, 29 Sep 2023 13:50:10 -0600 Subject: [PATCH 18/29] updated links --- src/web/src/locales/fr-ca.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/web/src/locales/fr-ca.js b/src/web/src/locales/fr-ca.js index 03fd967..46be952 100644 --- a/src/web/src/locales/fr-ca.js +++ b/src/web/src/locales/fr-ca.js @@ -156,10 +156,10 @@ export const fr = { } }, yukon_urls: { - home: "https://yukon.ca/en", - copyright: "https://yukon.ca/en/copyright", - disclaimer: "https://yukon.ca/en/disclaimer", - privacy_statement: "https://yukon.ca/en/privacy-statement", - contact_government: "https://yukon.ca/en/your-government/contact-and-follow-government/contact-government" + home: "https://yukon.ca/fr", + copyright: "https://yukon.ca/fr/droit-dauteur", + disclaimer: "https://yukon.ca/fr/avertissement", + privacy_statement: "https://yukon.ca/fr/avis-de-confidentialite", + contact_government: "https://yukon.ca/fr/contacter-le-gouvernement" } }; \ No newline at end of file From 7e26d68e4eff314addfbda0db22e686d9c1daada Mon Sep 17 00:00:00 2001 From: Emanuel Pastrana Date: Fri, 29 Sep 2023 13:50:49 -0600 Subject: [PATCH 19/29] jsons removed --- src/web/src/locales/en.json | 125 ------------------------------------ src/web/src/locales/fr.json | 125 ------------------------------------ 2 files changed, 250 deletions(-) delete mode 100644 src/web/src/locales/en.json delete mode 100644 src/web/src/locales/fr.json diff --git a/src/web/src/locales/en.json b/src/web/src/locales/en.json deleted file mode 100644 index 65cd7b6..0000000 --- a/src/web/src/locales/en.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "SearchBarHeader": { - "title": "Find a government employee", - "search": "Enter a person's name, position title, email or phone number in the search bar.", - "keywords": "Keywords" - }, - "Employees": { - "directoryByDepartment": "Browse the employee directory by department" - }, - "footer": { - "government": "Government of Yukon", - "copyright": "Copyright", - "disclaimer": "Disclaimer", - "privacy": "Privacy statement" - }, - "FeedbackForm": { - "question": "Was this page helpful?", - "likeQuestion": "How did this page help you?", - "dislikeQuestion": "How can we improve this page?", - "submitFeedback": "Submit feedback", - "thanksFeedback": "Thanks for taking the time to send us your feedback.", - "fieldIsRequired": "field is required.", - "tryAgain": "Please try again later!" - }, - "Department": { - "browseEmployeesByDivisions": "Browse employees by these divisions", - "notResults": "There are no results.", - "viewList": "View a list of all Department of", - "groupBy:": "Group by:", - "seeAll": "See all government employees", - "location": "Location", - "position": "Position", - "results": "Results" - }, - "EmployeeDetails": { - "organization": "Organization", - "department": "Department", - "division": "Division", - "branch": "Branch", - "unit": "Unit", - "contact": "Contact", - "phoneOffice": "Phone office", - "emailAddress": "Email address", - "faxOffice": "Fax office", - "positionInformation": "Position information", - "manager": "Reports to", - "location": "Location", - "address": "Address", - "community": "Community", - "postalCode": "Postal code", - "mailCode": "Mail code" - }, - "EmployeeSearch": { - "noResultsByDepartment": { - "text1": "Your search for", - "text2": "in the department", - "text3": "had no results." - }, - "noResults": { - "text1": "Your search for", - "text2": "has no results." - }, - "resultsByDepartment": { - "text1": "Your search for", - "text2": "in the department", - "text3": "found", - "text4": "results." - }, - "results": { - "text1": "Your search for", - "text2": "found", - "text3": "results." - }, - "groupBy": "Group by", - "seeAll": "See all government employees", - "department": "Department", - "location": "Location", - "position": "Position" - }, - "Grid": { - "groupBy": "Group by", - "seeAll": "See all government employees", - "location": "Location", - "position": "Position", - "noResults": "There are no results.", - "results": "Results" - }, - "Router": { - "home": "Yukon.ca home", - "FindAGovernmentEmployee": "Find a government employee", - "department": "Department", - "search": "Search", - "division": "Division", - "branch": "Branch", - "username": "Username", - "findEmployee": "Find Employee", - "pageNotFound": "Page not found" - }, - "NotFound": { - "pageNotFound": "Page non trouvée", - "isNotHere": "Sorry, that page isn't here.", - "mayHaveMoved": "You didn't do anything wrong. We may have moved the page you're looking for somewhere else.", - "followALinkIn": "Did you follow a link from here?", - "leaveAMessageIn": { - "text1": "If you reached this page from another part of Yukon.ca, ", - "text2": "let us know ", - "text3": "so we can correct our mistake." - }, - "followALinkOut": "Did you follow a link from another site?", - "leaveAMessageOut": { - "text1": "Links from other sites can sometimes be old or misspelled. ", - "text2": "Let us know ", - "text3": "where you came from and we can try to contact the other site to fix the problem." - }, - "typeUrl": "Did you type the URL?", - "typedAddressWrong": "You may have typed the address (URL) wrong. Check to make sure you've got the exact right spelling or capitalization." - }, - "YukonHome": { - "home": "https://yukon.ca/en", - "copyright": "https://yukon.ca/en/copyright", - "disclaimer": "https://yukon.ca/en/disclaimer", - "privacyStatement": "https://yukon.ca/en/privacy-statement", - "contactGovernment": "https://yukon.ca/en/your-government/contact-and-follow-government/contact-government" - } -} \ No newline at end of file diff --git a/src/web/src/locales/fr.json b/src/web/src/locales/fr.json deleted file mode 100644 index 82b6478..0000000 --- a/src/web/src/locales/fr.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "SearchBarHeader": { - "title": "Trouver un employé du gouvernement", - "search": "Saisissez le nom, le titre du poste, l'e-mail ou le numéro de téléphone d'une personne dans la barre de recherche.", - "keywords": "mots clés" - }, - "Employees": { - "directoryByDepartment": "Parcourez l'annuaire des employés par département" - }, - "footer": { - "government": "Gouvernement du Yukon", - "copyright": "Droits d'auteur", - "disclaimer": "Clause de non-responsabilité", - "privacy": "Déclaration de confidentialité" - }, - "FeedbackForm": { - "question": "Cette page vous a été utile?", - "likeQuestion": "Comment cette page vous a-t-elle aidé ?", - "dislikeQuestion": "Comment pouvons nous améliorer cette page?", - "submitFeedback": "Soumettre des commentaires", - "thanksFeedback": "Merci d'avoir pris le temps de nous envoyer vos commentaires.", - "fieldIsRequired": "Champ requis.", - "tryAgain": "Veuillez réessayer plus tard!" - }, - "Department": { - "browseEmployeesByDivisions": "Parcourir les employés par ces divisions", - "notResults": "Aucun résultat.", - "viewList": "Afficher une liste de tous les départements de", - "groupBy:": "Regrouper par :", - "seeAll": "Voir tous les employés du gouvernement", - "location": "Emplacement", - "position": "Position", - "results": "Résultats" - }, - "EmployeeDetails": { - "organization": "Organisation", - "department": "Département", - "division": "Division", - "branch": "Branche", - "unit": "Unité", - "contact": "Contacter", - "phoneOffice": "Bureau téléphonique", - "emailAddress": "Adresse email", - "faxOffice": "Bureau de fax", - "positionInformation": "Informations de position", - "manager": "Rapports à", - "location": "Emplacement", - "address": "Aadresse", - "community": "Communauté", - "postalCode": "Code postal", - "mailCode": "Code courrier" - }, - "EmployeeSearch": { - "noResultsByDepartment": { - "text1": "Votre recherche", - "text2": "dans le département", - "text3": "n'a donné aucun résultat." - }, - "noResults": { - "text1": "Votre recherche", - "text2": "n'a donné aucun résultat." - }, - "resultsByDepartment": { - "text1": "Votre recherche", - "text2": "dans le département", - "text3": "a abouti à", - "text4": "résultats." - }, - "results": { - "text1": "Votre recherche", - "text2": "a abouti à", - "text3": "résultats." - }, - "groupBy": "Par groupe", - "seeAll": "Voir tous les employés du gouvernement", - "department": "Département", - "location": "Emplacement", - "position": "Position" - }, - "Grid": { - "groupBy": "Par groupe", - "seeAll": "Voir tous les employés du gouvernement", - "location": "Emplacement", - "position": "Position", - "noResults": "Il n'y a aucun résultat", - "results": "Résultats" - }, - "Router": { - "home": "Accueil Yukon.ca", - "FindAGovernmentEmployee": "Trouver un employé du gouvernement", - "department": "Department", - "search": "Search", - "division": "Division", - "branch": "Branch", - "username": "Username", - "findEmployee": "Find Employee", - "pageNotFound": "Page not found" - }, - "NotFound": { - "pageNotFound": "Page non trouvée", - "isNotHere": "Désolé, cette page n'est pas ici.", - "mayHaveMoved": "Vous n'avez rien fait de mal. Nous avons peut-être déplacé la page que vous recherchez ailleurs.", - "followALinkIn": "Avez-vous suivi un lien à partir d'ici?", - "leaveAMessageIn": { - "text1": "Les liens provenant d'autres sites peuvent parfois être anciens ou mal orthographiés.", - "text2": "faites-le-nous savoir ", - "text3": "afin que nous puissions corriger notre erreur." - }, - "followALinkOut": "Avez-vous suivi un lien d'un autre site?", - "leaveAMessageOut": { - "text1": "Les liens provenant d'autres sites peuvent parfois être anciens ou mal orthographiés. ", - "text2": "Faites-nous savoir ", - "text3": "d'où vous venez et nous pourrons essayer de contacter l'autre site pour résoudre le problème." - }, - "typeUrl": "Avez-vous tapé l'URL?", - "typedAddressWrong": "Vous avez peut-être mal saisi l'adresse (URL). Vérifiez que vous avez exactement la bonne orthographe ou la bonne majuscule." - }, - "YukonHome": { - "home": "https://yukon.ca/fr", - "copyright": "https://yukon.ca/fr/droit-dauteur", - "disclaimer": "https://yukon.ca/fr/avertissement", - "privacyStatement": "https://yukon.ca/fr/avis-de-confidentialite", - "contactGovernment": "https://yukon.ca/fr/contacter-le-gouvernement" - } -} \ No newline at end of file From de321d355ca82e9c323a792bf6bf56d1fa5aed1b Mon Sep 17 00:00:00 2001 From: Emanuel Pastrana Date: Tue, 3 Oct 2023 17:34:14 -0600 Subject: [PATCH 20/29] fixes footer --- src/web/src/App.vue | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/web/src/App.vue b/src/web/src/App.vue index 367ea39..2d76803 100644 --- a/src/web/src/App.vue +++ b/src/web/src/App.vue @@ -52,7 +52,7 @@ box-shadow: 1px 3px 3px 0px rgba(163,163,163,0.33) !important; -
+ @@ -210,10 +210,10 @@ export default { let arr = this.$route.meta.breadcrumb; const dynamicBreadcrumb = arr.filter(({ dynamic }) => !!dynamic); dynamicBreadcrumb.forEach((element => { - if (element.name == 'Department') { + if (element.name == 'breadcrumbs.department') { element.name = this.department; element.link = '/find-employee/' + this.department.replace(reg, '-') - } else if (element.name == 'Division') { + } else if (element.name == 'breadcrumbs.division') { if (this.div === 'Not division') { element.name = 'Employees who are not assigned a division' element.link = null @@ -226,7 +226,7 @@ export default { element.link = null } - } else if (element.name == 'Branch') { + } else if (element.name == 'breadcrumbs.branch') { if (this.branch === 'All branches') { element.name = 'Employees who are not assigned a branch' } else { diff --git a/src/web/src/components/UI/DepartmentHeader.vue b/src/web/src/components/UI/DepartmentHeader.vue index d67f1b8..55aece9 100644 --- a/src/web/src/components/UI/DepartmentHeader.vue +++ b/src/web/src/components/UI/DepartmentHeader.vue @@ -9,7 +9,7 @@

- {{ title }} + {{$t('components.departments_api')[title] ? $t('components.departments_api')[title] : title }}

diff --git a/src/web/src/components/UI/DivisionsCard.vue b/src/web/src/components/UI/DivisionsCard.vue index fdd3494..02ec89c 100644 --- a/src/web/src/components/UI/DivisionsCard.vue +++ b/src/web/src/components/UI/DivisionsCard.vue @@ -8,16 +8,18 @@
  • {{ - parent_item - }} + @click="activateBranches(parent_item)" :key="id" class="division"> + {{ ($t('components.divisions_api')[parent_item]) ? $t('components.divisions_api')[parent_item] : parent_item }} +
    • {{ index }} + class="branch my-2 px-0 py-3"> + {{ ($t('components.branch_api')[index]) ? $t('components.branch_api')[index] : index }} +
    diff --git a/src/web/src/locales/fr-ca.js b/src/web/src/locales/fr-ca.js index 062404b..4ee5832 100644 --- a/src/web/src/locales/fr-ca.js +++ b/src/web/src/locales/fr-ca.js @@ -1,5 +1,299 @@ export const fr = { components: { + departments_api: { + 'Community Services':'Services aux collectivités', + 'Economic Development':'Développement économique', + 'Education':'Éducation', + 'Energy Mines and Resources':'Énergie, des Mines et des Ressources', + 'Environment':'Environnement', + 'Finance':'Finances', + 'Health and Social Services':'Santé et des Affaires sociales', + 'Highways and Public Works':'Voirie et des Travaux publics', + 'Justice':'Justice', + 'Tourism and Culture':'Tourisme et de la Culture', + 'Executive Council Office':'Conseil exécutif', + 'French Language Services Directorate':'Direction des services en français', + 'Public Service Commission':'Commission de la fonction publique', + 'Women and Gender Equity Directorate':'Direction de la condition féminine et de l’équité des genres', + 'Workers Safety and Compensation Board':'Commission de la sécurité et de l’indemnisation des travailleurs', + 'Yukon Development Corporation':'Société de développement du Yukon', + 'Yukon Housing Corporation':'Société d’habitation du Yukon', + 'Yukon Liquor Corporation':'Société des alcools du Yukon', + 'Yukon Lottery Commission':'Commission des loteries du Yukon et Loteries Yukon', + //Start Missing translation + 'Cabinet Office':'Cabinet Office', + 'Commissioners Office':'Commissioners Office', + 'Elections Yukon':'Elections Yukon', + 'Legislative Assembly Office':'Legislative Assembly Office', + 'Ombudsman / Information and Privacy Commissioner':'Ombudsman / Information and Privacy Commissioner', + 'Yukon Child and Youth Advocate Office':'Yukon Child and Youth Advocate Office', + 'Yukon Environmental and Socioeconomic Assessment Board':'Yukon Environmental and Socioeconomic Assessment Board', + 'Yukon Hospital Corporation':'Yukon Hospital Corporation' + //End Missing translation + }, + divisions_api: { + //Start Missing translation + "Aboriginal Relations":"Aboriginal Relations", + "Assessments":"Assessments", + "Branch or Unit reports direct to ENV DM":"Branch or Unit reports direct to ENV DM", + "Branch reports direct to CS DM":"Branch reports direct to CS DM", + "Branch reports direct to ECO DM":"Branch reports direct to ECO DM", + "Branch reports direct to EDU DM":"Branch reports direct to EDU DM", + "Branch reports direct to FIN DM":"Branch reports direct to FIN DM", + "Branch reports direct to HPW DM":"Branch reports direct to HPW DM", + "Branch reports direct to HSS DM":"Branch reports direct to HSS DM", + "Branch reports direct to JUS DM":"Branch reports direct to JUS DM", + "Branch reports direct to TOU DM":"Branch reports direct to TOU DM", + "Capital Planning":"Capital Planning", + "Claims":"Claims", + "Commission scolaire francophone du Yukon":"Commission scolaire francophone du Yukon", + "Community and Primary Care":"Community and Primary Care", + "Community Development":"Community Development", + "Community Justice and Public Safety":"Community Justice and Public Safety", + "Continuing Care":"Continuing Care", + "Corporate Programs and Intergovernmental Relations":"Corporate Programs and Intergovernmental Relations", + "Corporate Services":"Corporate Services", + "Corporate Services and Climate Change":"Corporate Services and Climate Change", + "Court Services":"Court Services", + "Deputy Minister's Office":"Deputy Minister's Office", + "Deputy Ministers Office":"Deputy Ministers Office", + "Economics, Fiscal Policy and Statistics":"Economics, Fiscal Policy and Statistics", + "Elections Office":"Elections Office", + "Employee Relations":"Employee Relations", + "Environmental Sustainability":"Environmental Sustainability", + "Executive":"Executive", + "Financial Operations and Revenue Services":"Financial Operations and Revenue Services", + "First Nations Initiatives":"First Nations Initiatives FR", + "HR Service Centre":"HR Service Centre", + "Human Resource":"Human Resource", + "Human Resources":"Human Resources", + "Information and Communications Technology":"Information and Communications Technology", + "Innovation, Quality and Performance":"Innovation, Quality and Performance", + "Legal Services":"Legal Services", + "Legislative Assembly Office Staff":"Legislative Assembly Office Staff", + "Liberal Party Private Member Caucus":"Liberal Party Private Member Caucus", + "Licensing and Compliance Service":"Licensing and Compliance Service", + "Licensing and Compliance Services":"Licensing and Compliance Services", + "Lotteries Yuko":"Lotteries Yuko", + "Lotteries Yukon":"Lotteries Yukon", + "Management Board Secretariat":"Management Board Secretariat", + "Mineral Resources and Geoscience Services":"Mineral Resources and Geoscience Services", + "Minister's Office":"Minister's Office", + "Minister's Office":"Minister's Office", + "New Democrat Party Caucus":"New Democrat Party Caucus", + "Occupational Health and Safety":"Occupational Health and Safety", + "Operations":"Operations", + "People and Culture":"People and Culture", + "Policy and Partnerships":"Policy and Partnerships", + "Property Management":"Property Management", + "Protective Services":"Protective Services", + "Public Service Commissioners Office":"Public Service Commissioners Office", + "Regulatory and Consumer Services":"Regulatory and Consumer Services", + "Regulatory Services":"Regulatory Services", + "Schools and Student Services":"Schools and Student Services", + "Social Services":"Social Services", + "Strategic Corporate Services":"Strategic Corporate Services", + "Strategic Initiatives and Partnerships":"Strategic Initiatives and Partnerships", + "Sustainable Resources":"Sustainable Resources", + "Transportation":"Transportation", + "YHC President's Office":"YHC President's Office", + "YLC President's Office":"YLC President's Office", + "YLC President's Office":"YLC President's Office", + "Yukon Party Caucus":"Yukon Party Caucus", + //End Missing translation + }, + branch_api: { + //Start Missing translation + "Communications":"Communications", + "Finance, Systems and Administration":"Finance, Systems and Administration", + "Human Resources":"Human Resources", + "Assistant Deputy Minister's Office":"Assistant Deputy Minister's Office", + "Community Affairs":"Community Affairs", + "Community Operations":"Community Operations", + "Infrastructure Development":"Infrastructure Development", + "Land Development":"Land Development", + "Sport and Recreation":"Sport and Recreation", + "Fire and Life Safety":"Fire and Life Safety", + "Wildland Fire Management":"Wildland Fire Management", + "Corporate Affairs":"Corporate Affairs", + "Corporate Policy":"Corporate Policy", + "Employment Standards and Residential Tenancies":"Employment Standards and Residential Tenancies", + "Professional Licensing and Regulatory Affairs":"Professional Licensing and Regulatory Affairs", + "Property Assessment and Taxation":"Property Assessment and Taxation", + "Public Libraries":"Public Libraries", + "Communications and Marketing":"Communications and Marketing", + "Finance and Information Management":"Finance and Information Management", + "Policy and Planning":"Policy and Planning", + "Business and Industry Development":"Business and Industry Development", + "Labour Market Development":"Labour Market Development", + "Media Development":"Media Development", + "Regional Economic Development":"Regional Economic Development", + "Technology and Telecommunications Development":"Technology and Telecommunications Development", + "Community Relations and Engagement":"Community Relations and Engagement", + "Finance":"Finance", + "Commission scolaire francophone du Yukon":"Commission scolaire francophone du Yukon", + "CSSC Mercier":"CSSC Mercier", + "Ecole Emilie-Tremblay":"Ecole Emilie-Tremblay", + "First Nations Initiatives":"First Nations Initiatives", + "Curriculum and Assessment":"Curriculum and Assessment", + "Early Learning and Child Care":"Early Learning and Child Care", + "French Programs":"French Programs", + "Performance and Analytics":"Performance and Analytics", + "Post-Secondary and Labour Market":"Post-Secondary and Labour Market", + "Training Programs":"Training Programs", + "Operations":"Operations", + "Public Schools Whitehorse":"Public Schools Whitehorse", + "School Councils Support":"School Councils Support", + "Student Support Services":"Student Support Services", + "Technology and Student Information":"Technology and Student Information", + "Compliance Monitoring and Inspections":"Compliance Monitoring and Inspections", + "Corporate Policy and Planning":"Corporate Policy and Planning", + "Assessment and Abandoned Mines":"Assessment and Abandoned Mines", + "Mineral Resources":"Mineral Resources", + "Yukon Geological Survey":"Yukon Geological Survey", + "Energy":"Energy", + "Geothermal and Petroleum Resources":"Geothermal and Petroleum Resources", + "Strategic Alliances":"Strategic Alliances", + "Agriculture":"Agriculture", + "Forest Management":"Forest Management", + "Land Management":"Land Management", + "Land Planning":"Land Planning", + "Animal Health Unit":"Animal Health Unit", + "Climate Change Secretariat":"Climate Change Secretariat", + "Conservation Officer Services":"Conservation Officer Services", + "Environmental Protection and Assessment":"Environmental Protection and Assessment", + "Fish and Wildlife":"Fish and Wildlife", + "Water Resources":"Water Resources", + "Yukon Parks":"Yukon Parks", + "First Nation Relations":"First Nation Relations", + "Implementation and Reconciliation":"Implementation and Reconciliation", + "Policy and Consultation":"Policy and Consultation", + "Government Internal Audit Services":"Government Internal Audit Services", + "Intergovernmental Relations":"Intergovernmental Relations", + "Major Projects Yukon":"Major Projects Yukon", + "Office of the Science Advisor":"Office of the Science Advisor", + "Youth Directorate":"Youth Directorate", + "Yukon Water Board Secretariat":"Yukon Water Board Secretariat", + "Finance and Administration":"Finance and Administration", + "Office of the Comptroller":"Office of the Comptroller", + "Economic Research":"Economic Research", + "Fiscal Relations":"Fiscal Relations", + "Program Management":"Program Management", + "Yukon Bureau of Statistics":"Yukon Bureau of Statistics", + "Banking Investments and Debt Services":"Banking Investments and Debt Services", + "Evaluation":"Evaluation", + "Financial Management Information Systems":"Financial Management Information Systems", + "Financial Operations":"Financial Operations", + "Tax Administration":"Tax Administration", + "Budgets":"Budgets", + "Management Board Analysis":"Management Board Analysis", + "Community Health Programs":"Community Health Programs", + "Community Nursing":"Community Nursing", + "Emergency Medical Services":"Emergency Medical Services", + "Integrated Health Services":"Integrated Health Services", + "Mental Wellness and Substance Use Services":"Mental Wellness and Substance Use Services", + "Care and Community":"Care and Community", + "Home Care":"Home Care", + "Quality and Safety":"Quality and Safety", + "Facilities and Capital Planning":"Facilities and Capital Planning", + "Health, Safety and Emergency Management":"Health, Safety and Emergency Management", + "Information Services":"Information Services", + "Strategic Finance":"Strategic Finance", + "Strategic Policy and Planning":"Strategic Policy and Planning", + "Issues Management Unit":"Issues Management Unit", + "Communications and Social Marketing":"Communications and Social Marketing", + "Population and Public Health Evidence and Evaluation":"Population and Public Health Evidence and Evaluation", + "Transformation Innovation and Putting People First":"Transformation Innovation and Putting People First", + "Divisional Support Services":"Divisional Support Services", + "Family and Childrens Services":"Family and Childrens Services", + "Insured Health":"Insured Health", + "Social Supports":"Social Supports", + "Capital Planning Office":"Capital Planning Office", + "Operations Strategy":"Operations Strategy", + "Sustainable Infrastructure":"Sustainable Infrastructure", + "Policy and Communications":"Policy and Communications", + "Procurement Support Centre":"Procurement Support Centre", + "Supply Services":"Supply Services", + "Corporate Information Management":"Corporate Information Management", + "Data and Application Support":"Data and Application Support", + "Electronic Services":"Electronic Services", + "Information Technology and Client Services":"Information Technology and Client Services", + "Office of the CIO":"Office of the CIO", + "Planning and Administration":"Planning and Administration", + "Service Innovation and Support":"Service Innovation and Support", + "Technology Infrastructure":"Technology Infrastructure", + "Capital Development":"Capital Development", + "Facilities Management and Regional Services":"Facilities Management and Regional Services", + "Realty and Capital Asset Planning":"Realty and Capital Asset Planning", + "Transport Services":"Transport Services", + "Transportation Aviation":"Transportation Aviation", + "Transportation Engineering":"Transportation Engineering", + "Transportation Maintenance":"Transportation Maintenance", + "Transportation Planning":"Transportation Planning", + "Finance Systems Administration and Records":"Finance Systems Administration and Records", + "Negotiations, Collaborations and Partnerships":"Negotiations, Collaborations and Partnerships", + "Corrections":"Corrections", + "Public Safety and Investigations":"Public Safety and Investigations", + "Victim Services":"Victim Services", + "Court Administration":"Court Administration", + "Court Operations":"Court Operations", + "Justice Wellness Centre":"Justice Wellness Centre", + "Sheriffs Services":"Sheriffs Services", + "Aboriginal Law":"Aboriginal Law", + "Legislative Counsel":"Legislative Counsel", + "Litigation":"Litigation", + "Natural Resources and Environmental Law":"Natural Resources and Environmental Law", + "Solicitors":"Solicitors", + "Coroners Services":"Coroners Services", + "Family Law Support Programs":"Family Law Support Programs", + "Land Titles Office":"Land Titles Office", + "Office of the Public Guardian and Trustee":"Office of the Public Guardian and Trustee", + "Workers Advocate Office":"Workers Advocate Office", + "Human Resource Business Partners":"Human Resource Business Partners", + "Policy":"Policy", + "Health, Safety and Wellbeing":"Health, Safety and Wellbeing", + "Labour Relations":"Labour Relations", + "Respectful Workplace Office":"Respectful Workplace Office", + "Compensation and Benefit Programs":"Compensation and Benefit Programs", + "Compensation and Classification":"Compensation and Classification", + "HR Management Systems":"HR Management Systems", + "HR Shared Services":"HR Shared Services", + "Staffing Management and Solutions":"Staffing Management and Solutions", + "Communications, Engagement and Strategic Initiatives":"Communications, Engagement and Strategic Initiatives", + "Diversity and Inclusion":"Diversity and Inclusion", + "Organizational Development":"Organizational Development", + "People Metrics, Analytics and Projects":"People Metrics, Analytics and Projects", + "Corporate Services":"Corporate Services", + "Cultural Services":"Cultural Services", + "Tourism":"Tourism", + "Centralized Services":"Centralized Services", + "Employer Services":"Employer Services", + "Claimant Services":"Claimant Services", + "Social Marketing and Communications":"Social Marketing and Communications", + "Board":"Board", + "Legal Services":"Legal Services", + "President":"President", + "Inspections and Compliance":"Inspections and Compliance", + "Mine Safety":"Mine Safety", + "Occupational Hygiene":"Occupational Hygiene", + "OHS Executive":"OHS Executive", + "Financial Services":"Financial Services", + "Information Systems":"Information Systems", + "Records Management":"Records Management", + "Finance and Risk Management Branch":"Finance and Risk Management Branch", + "Information Management and Technology Branch":"Information Management and Technology Branch", + "Tenancy Supports":"Tenancy Supports", + "Social Responsibility, Policy and Planning":"Social Responsibility, Policy and Planning", + "Retail Operations":"Retail Operations", + "Rural Stores and Territorial Agent Services":"Rural Stores and Territorial Agent Services", + "Sales and Distribution":"Sales and Distribution", + "Sourcing and Supply":"Sourcing and Supply", + "Warehouse Operations":"Warehouse Operations", + "Whitehorse Liquor Store":"Whitehorse Liquor Store", + "Public Schools - Rural":"Public Schools - Rural", + "Client Business and Technology Solutions":"Client Business and Technology Solutions" + //End Missing translation + }, search_bar_header: { title: "Trouver un employé du gouvernement", search: { @@ -8,11 +302,11 @@ export const fr = { }, }, employees: { - browse_directory_by_department: "Parcourez l'annuaire des employés par département" + browse_directory_by_departments_api: "Parcourez l'annuaire des employés par département" }, feedback_form: { questions: { - helpful_message: "Avez-vous trouvé cette page utile?", + helpful_message: "Avez-vous trouvé cette page utile??", how_help_you_message: "En quoi cette page vous a-t-elle été utile?", how_improve_message: "Comment peut-on améliorer cette page?", }, From 24dc16f9586d245dd708eb621ae62a85ebceb971 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mariazel=20Hern=C3=A1ndez?= Date: Wed, 11 Oct 2023 10:52:33 -0700 Subject: [PATCH 25/29] Adding French version for branches --- src/web/src/components/Department.vue | 2 +- src/web/src/components/EmployeeDetail.vue | 35 ++- src/web/src/components/Grid.vue | 7 +- src/web/src/components/UI/EmployeesGrid.vue | 3 +- src/web/src/locales/en-us.js | 295 +++++++++++++++++++- src/web/src/locales/fr-ca.js | 17 +- 6 files changed, 334 insertions(+), 25 deletions(-) diff --git a/src/web/src/components/Department.vue b/src/web/src/components/Department.vue index c24eda1..f563e89 100644 --- a/src/web/src/components/Department.vue +++ b/src/web/src/components/Department.vue @@ -11,7 +11,7 @@ diff --git a/src/web/src/components/EmployeeDetail.vue b/src/web/src/components/EmployeeDetail.vue index 7f964ee..8e7ade9 100644 --- a/src/web/src/components/EmployeeDetail.vue +++ b/src/web/src/components/EmployeeDetail.vue @@ -7,7 +7,15 @@ @@ -31,23 +39,26 @@

    - {{ $t("components.employee_details.organization.department") }}: - {{ - item.department - }} + {{ $t("components.employee_details.organization.department") }} : + + {{$t('components.departments_api')[item.department] ? $t('components.departments_api')[item.department] : item.name }} +

    - {{ $t("components.employee_details.organization.division") }}: {{ item.division }} + {{ $t("components.employee_details.organization.division") }}: + + {{ ($t('components.divisions_api')[item.division]) ? $t('components.divisions_api')[item.division] : item.division }} +

    {{ $t("components.employee_details.organization.branch") }}: - {{ - item.branch - }} + + {{ ($t('components.branch_api')[item.branch]) ? $t('components.branch_api')[item.branch] : item.branch }} +

    @@ -212,8 +223,6 @@ export default { this.getUrl(); }, methods: { - - getUrl() { const urlLocation = String(window.location.href); let url = urlLocation.split(window.location.pathname); @@ -251,17 +260,13 @@ export default { return true; } }, - generateUrl(type, param, index) { let url = this.url - let find = " "; - let reg = new RegExp(find, "g"); let department = this.department.replace(reg, "-"); let indexFormatted = index.replace(reg, "-"); let paramFormatted = param.replace(reg, "-"); - if (type === 'manager') { if (this.managerAvailability !== true) { return url + '/employee-not-found/' + param.replace(reg, ".") diff --git a/src/web/src/components/Grid.vue b/src/web/src/components/Grid.vue index 521efdb..8943af9 100644 --- a/src/web/src/components/Grid.vue +++ b/src/web/src/components/Grid.vue @@ -8,7 +8,12 @@ diff --git a/src/web/src/components/UI/EmployeesGrid.vue b/src/web/src/components/UI/EmployeesGrid.vue index 810c1b3..cab9044 100644 --- a/src/web/src/components/UI/EmployeesGrid.vue +++ b/src/web/src/components/UI/EmployeesGrid.vue @@ -2,7 +2,8 @@ -

    {{ $t("components.employee_search.no_results_by_department.body.part1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("components.employee_search.no_results_by_department.body.part2") }} {{this.department}} {{ $t("components.employee_search.no_results_by_department.body.part3") }}

    +

    {{ $t("components.employee_search.no_results_by_department.body.part1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("components.employee_search.no_results_by_department.body.part2") }} {{$t('components.departments_api')[this.department] ? $t('components.departments_api')[this.department] : this.department }} {{ $t("components.employee_search.no_results_by_department.body.part3") }}

    {{ $t("components.employee_search.no_results.body.part1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("components.employee_search.no_results.body.part2") }}

    -

    {{ $t("components.employee_search.results_by_department.body.part1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("components.employee_search.results_by_department.body.part2") }} {{this.department}} {{ $t("components.employee_search.results_by_department.body.part3") }} {{ this.itemsLength }} {{ $t("components.employee_search.results_by_department.body.part4") }}

    +

    {{ $t("components.employee_search.results_by_department.body.part1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("components.employee_search.results_by_department.body.part2") }} {{$t('components.departments_api')[this.department] ? $t('components.departments_api')[this.department] : this.department }} {{ $t("components.employee_search.results_by_department.body.part3") }} {{ this.itemsLength }} {{ $t("components.employee_search.results_by_department.body.part4") }}

    {{ $t("components.employee_search.results.body.part1") }} {{ this.searchTitle.replace(/-/g, " ") }} {{ $t("components.employee_search.results.body.part2") }} {{ this.itemsLength }} {{ $t("components.employee_search.results.body.part3") }}

    diff --git a/src/web/src/locales/fr-ca.js b/src/web/src/locales/fr-ca.js index 34e740e..f1a39b6 100644 --- a/src/web/src/locales/fr-ca.js +++ b/src/web/src/locales/fr-ca.js @@ -1,299 +1,297 @@ export const fr = { components: { departments_api: { - 'Community Services':'Services aux collectivités', - 'Economic Development':'Développement économique', - 'Education':'Éducation', - 'Energy Mines and Resources':'Énergie, des Mines et des Ressources', - 'Environment':'Environnement', - 'Finance':'Finances', - 'Health and Social Services':'Santé et des Affaires sociales', - 'Highways and Public Works':'Voirie et des Travaux publics', - 'Justice':'Justice', - 'Tourism and Culture':'Tourisme et de la Culture', - 'Executive Council Office':'Conseil exécutif', - 'French Language Services Directorate':'Direction des services en français', - 'Public Service Commission':'Commission de la fonction publique', - 'Women and Gender Equity Directorate':'Direction de la condition féminine et de l’équité des genres', - 'Workers Safety and Compensation Board':'Commission de la sécurité et de l’indemnisation des travailleurs', - 'Yukon Development Corporation':'Société de développement du Yukon', - 'Yukon Housing Corporation':'Société d’habitation du Yukon', - 'Yukon Liquor Corporation':'Société des alcools du Yukon', - 'Yukon Lottery Commission':'Commission des loteries du Yukon et Loteries Yukon', - //Start Missing translation - 'Cabinet Office':'Cabinet Office', - 'Commissioners Office':'Commissioners Office', - 'Elections Yukon':'Elections Yukon', - 'Legislative Assembly Office':'Legislative Assembly Office', - 'Ombudsman / Information and Privacy Commissioner':'Ombudsman / Information and Privacy Commissioner', - 'Yukon Child and Youth Advocate Office':'Yukon Child and Youth Advocate Office', - 'Yukon Environmental and Socioeconomic Assessment Board':'Yukon Environmental and Socioeconomic Assessment Board', - 'Yukon Hospital Corporation':'Yukon Hospital Corporation' - //End Missing translation + "Community Services":"Services aux collectivités", + "Economic Development":"Développement économique", + "Education":"Éducation", + "Energy Mines and Resources":"Énergie, Mines et Ressources", + "Environment":"Environnement", + "Finance":"Finances", + "Health and Social Services":"Santé et Affaires sociales", + "Highways and Public Works":"Voirie et Travaux publics", + "Justice":"Justice", + "Tourism and Culture":"Tourisme et Culture", + "Executive Council Office":"Conseil exécutif", + "French Language Services Directorate":"Direction des services en français", + "Public Service Commission":"Commission de la fonction publique", + "Women and Gender Equity Directorate":"Direction de la condition féminine et de l’équité des genres", + "Workers Safety and Compensation Board":"Commission de la sécurité et de l’indemnisation des travailleurs", + "Yukon Development Corporation":"Société de développement du Yukon", + "Yukon Housing Corporation":"Société d’habitation du Yukon", + "Yukon Liquor Corporation":"Société des alcools du Yukon", + "Yukon Lottery Commission":"Commission des loteries du Yukon", + "Cabinet Office":"Bureau du Conseil des ministres", + "Commissioners Office":"Bureau du commissaire", + "Elections Yukon":"Élections Yukon", + "Legislative Assembly Office":"Bureau de l’Assemblée législative", + "Ombudsman / Information and Privacy Commissioner":"Ombudsman et commissaire à l’information et à la protection de la vie privée", + "Yukon Child and Youth Advocate Office":"Bureau du défenseur de l’enfance et de la jeunesse du Yukon", + "Yukon Environmental and Socioeconomic Assessment Board":"Office d’évaluation environnementale et socioéconomique du Yukon", + "Yukon Hospital Corporation":"Régie des hôpitaux du Yukon", + "Employees who are not assigned a department":"Personnel non affecté à une Ministère" }, divisions_api: { - //Start Missing translation - "Aboriginal Relations":"Aboriginal Relations", - "Assessments":"Assessments", - "Branch or Unit reports direct to ENV DM":"Branch or Unit reports direct to ENV DM", - "Branch reports direct to CS DM":"Branch reports direct to CS DM", - "Branch reports direct to ECO DM":"Branch reports direct to ECO DM", - "Branch reports direct to EDU DM":"Branch reports direct to EDU DM", - "Branch reports direct to FIN DM":"Branch reports direct to FIN DM", - "Branch reports direct to HPW DM":"Branch reports direct to HPW DM", - "Branch reports direct to HSS DM":"Branch reports direct to HSS DM", - "Branch reports direct to JUS DM":"Branch reports direct to JUS DM", - "Branch reports direct to TOU DM":"Branch reports direct to TOU DM", - "Capital Planning":"Capital Planning", - "Claims":"Claims", + "Aboriginal Relations":"Relations avec les Autochtones", + "Assessments":"Cotisations", + "Branch or Unit reports direct to ENV DM":"Direction ou unité relevant de la ou du sous-ministre de l’Environnement", + "Branch reports direct to CS DM":"Direction relevant de la ou du sous-ministre des Services aux collectivités", + "Branch reports direct to ECO DM":"Direction relevant de la ou du sous-ministre du Développement économique", + "Branch reports direct to EDU DM":"Direction relevant de la ou du sous-ministre de l’Éducation", + "Branch reports direct to FIN DM":"Direction relevant de la ou du sous-ministre des Finances", + "Branch reports direct to HPW DM":"Direction relevant de la ou du sous-ministre de la Voirie et des Travaux publics", + "Branch reports direct to HSS DM":"Direction relevant de la ou du sous-ministre de la Santé et des Affaires sociales", + "Branch reports direct to JUS DM":"Direction relevant de la ou du sous-ministre de la Justice", + "Branch reports direct to TOU DM":"Direction relevant de la ou du sous-ministre du Tourisme", + "Capital Planning":"Planification des immobilisations", + "Claims":"Demandes d’indemnisation", "Commission scolaire francophone du Yukon":"Commission scolaire francophone du Yukon", - "Community and Primary Care":"Community and Primary Care", - "Community Development":"Community Development", - "Community Justice and Public Safety":"Community Justice and Public Safety", - "Continuing Care":"Continuing Care", - "Corporate Programs and Intergovernmental Relations":"Corporate Programs and Intergovernmental Relations", - "Corporate Services":"Corporate Services", - "Corporate Services and Climate Change":"Corporate Services and Climate Change", - "Court Services":"Court Services", - "Deputy Minister's Office":"Deputy Minister's Office", - "Deputy Ministers Office":"Deputy Ministers Office", - "Economics, Fiscal Policy and Statistics":"Economics, Fiscal Policy and Statistics", - "Elections Office":"Elections Office", - "Employee Relations":"Employee Relations", - "Environmental Sustainability":"Environmental Sustainability", - "Executive":"Executive", - "Financial Operations and Revenue Services":"Financial Operations and Revenue Services", - "First Nations Initiatives":"First Nations Initiatives", - "HR Service Centre":"HR Service Centre", - "Human Resource":"Human Resource", - "Human Resources":"Human Resources", - "Information and Communications Technology":"Information and Communications Technology", - "Innovation, Quality and Performance":"Innovation, Quality and Performance", - "Legal Services":"Legal Services", - "Legislative Assembly Office Staff":"Legislative Assembly Office Staff", - "Liberal Party Private Member Caucus":"Liberal Party Private Member Caucus", - "Licensing and Compliance Service":"Licensing and Compliance Service", - "Licensing and Compliance Services":"Licensing and Compliance Services", - "Lotteries Yuko":"Lotteries Yuko", - "Lotteries Yukon":"Lotteries Yukon", - "Management Board Secretariat":"Management Board Secretariat", - "Mineral Resources and Geoscience Services":"Mineral Resources and Geoscience Services", - "Minister's Office":"Minister's Office", - "Minister's Office":"Minister's Office", - "New Democrat Party Caucus":"New Democrat Party Caucus", - "Occupational Health and Safety":"Occupational Health and Safety", - "Operations":"Operations", - "People and Culture":"People and Culture", - "Policy and Partnerships":"Policy and Partnerships", - "Property Management":"Property Management", - "Protective Services":"Protective Services", - "Public Service Commissioners Office":"Public Service Commissioners Office", - "Regulatory and Consumer Services":"Regulatory and Consumer Services", - "Regulatory Services":"Regulatory Services", - "Schools and Student Services":"Schools and Student Services", - "Social Services":"Social Services", - "Strategic Corporate Services":"Strategic Corporate Services", - "Strategic Initiatives and Partnerships":"Strategic Initiatives and Partnerships", - "Sustainable Resources":"Sustainable Resources", - "Transportation":"Transportation", - "YHC President's Office":"YHC President's Office", - "YLC President's Office":"YLC President's Office", - "YLC President's Office":"YLC President's Office", - "Yukon Party Caucus":"Yukon Party Caucus", - //End Missing translation + "Community and Primary Care":"Soins de santé primaire et de proximité", + "Community Development":"Développement des collectivités", + "Community Justice and Public Safety":"Justice communautaire et Sécurité publique", + "Continuing Care":"Soins de longue durée", + "Corporate Programs and Intergovernmental Relations":"Programmes ministériels et relations intergouvernementales", + "Corporate Services":"Services généraux", + "Corporate Services and Climate Change":"Services généraux et Changement climatique", + "Court Services":"Services judiciaires", + "Deputy Minister's Office":"Bureau de la ou du sous-ministre", + "Deputy Ministers Office":"Bureau des sous-ministres", + "Economics, Fiscal Policy and Statistics":"Économie, politiques budgétaires et statistiques", + "Elections Office":"Bureau des élections", + "Employee Relations":"Relations avec le personnel", + "Environmental Sustainability":"Durabilité de l’environnement", + "Executive":"Conseil exécutif", + "Financial Operations and Revenue Services":"Service des activités financières et du revenu", + "First Nations Initiatives":"Initiatives autochtones", + "HR Service Centre":"Centre de service des ressources humaines", + "Human Resource":"Ressources humaines", + "Human Resources":"Ressources humaines", + "Information and Communications Technology":"Technologie de l’information et des communications", + "Innovation, Quality and Performance":"Innovation, qualité des services et résultats", + "Legal Services":"Services juridiques", + "Legislative Assembly Office Staff":"Bureau du personnel de l’Assemblée législative", + "Liberal Party Private Member Caucus":"Caucus du Parti libéral", + "Licensing and Compliance Service":"Service de délivrance des permis et de vérification de la conformité ", + "Licensing and Compliance Services":"Services de délivrance des permis et de vérification de la conformité", + "Lotteries Yuko":"Loteries Yukon", + "Lotteries Yukon":"Loteries Yukon", + "Management Board Secretariat":"Secrétariat du Conseil de gestion", + "Mineral Resources and Geoscience Services":"Ressources minérales et services géoscientifiques", + "Minister's Office":"Bureau de la ou du ministre", + "Minister's Office":"Bureau de la ou du ministre", + "New Democrat Party Caucus":"Caucus du Nouveau Parti Démocratique", + "Occupational Health and Safety":"Santé et sécurité au travail", + "Operations":"Opérations", + "People and Culture":"Personnel et culture", + "Policy and Partnerships":"Politiques et partenariats", + "Property Management":"Gestion des immeubles", + "Protective Services":"Services de protection", + "Public Service Commissioners Office":"Bureau de la ou du commissaire à la fonction publique", + "Regulatory and Consumer Services":"Services de réglementation et Services aux consommateurs", + "Regulatory Services":"Services de réglementation", + "Schools and Student Services":"Services scolaires", + "Social Services":"Services sociaux", + "Strategic Corporate Services":"Services généraux stratégiques", + "Strategic Initiatives and Partnerships":"Initiatives et partenariats stratégiques", + "Sustainable Resources":"Développement durable des ressources", + "Transportation":"Transport", + "YHC President's Office":"Bureau de la présidente ou du président de la Société d’habitation du Yukon", + "YLC President's Office":"Bureau de la présidente ou du président de la Société des alcools du Yukon", + "YLC President's Office":"Bureau de la présidente ou du président de la Société des alcools du Yukon", + "Yukon Party Caucus":"Caucus du Parti du Yukon", + "Employees who are not assigned a division":"Personnel non affecté à une division" }, branch_api: { - //Start Missing translation + "Corporate Services ":"Services généraux", "Communications":"Communications", - "Finance, Systems and Administration":"Finance, Systems and Administration", - "Human Resources":"Human Resources", - "Assistant Deputy Minister's Office":"Assistant Deputy Minister's Office", - "Community Affairs":"Community Affairs", - "Community Operations":"Community Operations", - "Infrastructure Development":"Infrastructure Development", - "Land Development":"Land Development", - "Sport and Recreation":"Sport and Recreation", - "Fire and Life Safety":"Fire and Life Safety", - "Wildland Fire Management":"Wildland Fire Management", - "Corporate Affairs":"Corporate Affairs", - "Corporate Policy":"Corporate Policy", - "Employment Standards and Residential Tenancies":"Employment Standards and Residential Tenancies", - "Professional Licensing and Regulatory Affairs":"Professional Licensing and Regulatory Affairs", - "Property Assessment and Taxation":"Property Assessment and Taxation", - "Public Libraries":"Public Libraries", - "Communications and Marketing":"Communications and Marketing", - "Finance and Information Management":"Finance and Information Management", - "Policy and Planning":"Policy and Planning", - "Business and Industry Development":"Business and Industry Development", - "Labour Market Development":"Labour Market Development", - "Media Development":"Media Development", - "Regional Economic Development":"Regional Economic Development", - "Technology and Telecommunications Development":"Technology and Telecommunications Development", - "Community Relations and Engagement":"Community Relations and Engagement", - "Finance":"Finance", + "Finance, Systems and Administration":"Finances, informatique et administration", + "Human Resources":"Ressources humaines", + "Assistant Deputy Minister's Office":"Bureau de la sous-ministre adjointe ou du sous-ministre adjoint", + "Community Affairs":"Affaires communautaires", + "Community Operations":"Activités dans les collectivités", + "Infrastructure Development":"Infrastructures", + "Land Development":"Aménagement des terres", + "Sport and Recreation":"Sports et loisirs", + "Fire and Life Safety":"Sécurité et prévention des incendies", + "Wildland Fire Management":"Gestion des feux de forêt", + "Corporate Affairs":"Entreprises, associations et coopératives", + "Corporate Policy":"Politiques ministérielles", + "Employment Standards and Residential Tenancies":"Normes d’emploi et location résidentielle", + "Professional Licensing and Regulatory Affairs":"Réglementation professionnelle", + "Property Assessment and Taxation":"Évaluation et impôt foncier", + "Public Libraries":"Bibliothèques publiques", + "Communications and Marketing":"Marketing et communications", + "Finance and Information Management":"Finances et gestion de l’information", + "Policy and Planning":"Politiques et planification", + "Business and Industry Development":"Développement des affaires et des industries", + "Labour Market Development":"Développement du marché du travail", + "Media Development":"Développement des médias", + "Regional Economic Development":"Développement économique régional", + "Technology and Telecommunications Development":"Développement des technologies de l’information et des télécommunications", + "Community Relations and Engagement":"Relations publiques", + "Finance":"Finances", "Commission scolaire francophone du Yukon":"Commission scolaire francophone du Yukon", - "CSSC Mercier":"CSSC Mercier", - "Ecole Emilie-Tremblay":"Ecole Emilie-Tremblay", - "First Nations Initiatives":"First Nations Initiatives", - "Curriculum and Assessment":"Curriculum and Assessment", - "Early Learning and Child Care":"Early Learning and Child Care", - "French Programs":"French Programs", - "Performance and Analytics":"Performance and Analytics", - "Post-Secondary and Labour Market":"Post-Secondary and Labour Market", - "Training Programs":"Training Programs", - "Operations":"Operations", - "Public Schools Whitehorse":"Public Schools Whitehorse", - "School Councils Support":"School Councils Support", - "Student Support Services":"Student Support Services", - "Technology and Student Information":"Technology and Student Information", - "Compliance Monitoring and Inspections":"Compliance Monitoring and Inspections", - "Corporate Policy and Planning":"Corporate Policy and Planning", - "Assessment and Abandoned Mines":"Assessment and Abandoned Mines", - "Mineral Resources":"Mineral Resources", - "Yukon Geological Survey":"Yukon Geological Survey", - "Energy":"Energy", - "Geothermal and Petroleum Resources":"Geothermal and Petroleum Resources", - "Strategic Alliances":"Strategic Alliances", + "CSSC Mercier":"Centre scolaire secondaire communautaire Paul-Émile-Mercier (CSSC Mercier)", + "Ecole Emilie-Tremblay":"École Émilie-Tremblay", + "First Nations Initiatives":"Initiatives autochtones", + "Curriculum and Assessment":"Programmes d’études et évaluation", + "Early Learning and Child Care":"Éducation de la petite enfance et services de garde", + "French Programs":"Programmes en français", + "Performance and Analytics":"Mesure et analyse des résultats", + "Post-Secondary and Labour Market":"Éducation postsecondaire et marché du travail", + "Training Programs":"Programmes de formation", + "Operations":"Opérations", + "Public Schools Whitehorse":"Écoles publiques – Whitehorse", + "School Councils Support":"Soutien aux conseils scolaires", + "Student Support Services":"Services de soutien aux élèves", + "Technology and Student Information":"Technologie et dossiers des élèves", + "Compliance Monitoring and Inspections":"Inspections et suivi de la conformité", + "Corporate Policy and Planning":"Planification et politiques ministérielles", + "Assessment and Abandoned Mines":"Mines désaffectées et évaluation", + "Mineral Resources":"Ressources minérales", + "Yukon Geological Survey":"Commission géologique du Yukon", + "Energy":"Énergie", + "Geothermal and Petroleum Resources":"Ressources géothermiques et pétrolières", + "Strategic Alliances":"Alliances stratégiques", "Agriculture":"Agriculture", - "Forest Management":"Forest Management", - "Land Management":"Land Management", - "Land Planning":"Land Planning", - "Animal Health Unit":"Animal Health Unit", - "Climate Change Secretariat":"Climate Change Secretariat", - "Conservation Officer Services":"Conservation Officer Services", - "Environmental Protection and Assessment":"Environmental Protection and Assessment", - "Fish and Wildlife":"Fish and Wildlife", - "Water Resources":"Water Resources", - "Yukon Parks":"Yukon Parks", - "First Nation Relations":"First Nation Relations", - "Implementation and Reconciliation":"Implementation and Reconciliation", - "Policy and Consultation":"Policy and Consultation", - "Government Internal Audit Services":"Government Internal Audit Services", - "Intergovernmental Relations":"Intergovernmental Relations", - "Major Projects Yukon":"Major Projects Yukon", - "Office of the Science Advisor":"Office of the Science Advisor", - "Youth Directorate":"Youth Directorate", - "Yukon Water Board Secretariat":"Yukon Water Board Secretariat", - "Finance and Administration":"Finance and Administration", - "Office of the Comptroller":"Office of the Comptroller", - "Economic Research":"Economic Research", - "Fiscal Relations":"Fiscal Relations", - "Program Management":"Program Management", - "Yukon Bureau of Statistics":"Yukon Bureau of Statistics", - "Banking Investments and Debt Services":"Banking Investments and Debt Services", - "Evaluation":"Evaluation", - "Financial Management Information Systems":"Financial Management Information Systems", - "Financial Operations":"Financial Operations", - "Tax Administration":"Tax Administration", + "Forest Management":"Gestion des forêts", + "Land Management":"Gestion des terres", + "Land Planning":"Aménagement foncier", + "Animal Health Unit":"Section de la santé animale", + "Climate Change Secretariat":"Secrétariat des changements climatiques", + "Conservation Officer Services":"Service de protection de la faune", + "Environmental Protection and Assessment":"Protection et évaluation environnementales", + "Fish and Wildlife":"Faune aquatique et terrestre", + "Water Resources":"Ressources en eau", + "Yukon Parks":"Parcs Yukon", + "First Nation Relations":"Relations avec les Premières Nations", + "Implementation and Reconciliation":"Mise en œuvre des ententes et réconciliation", + "Policy and Consultation":"Politiques et consultations", + "Government Internal Audit Services":"Service de vérification interne du gouvernement", + "Intergovernmental Relations":"Relations intergouvernementales", + "Major Projects Yukon":"Grands projets Yukon", + "Office of the Science Advisor":"Bureau du conseiller scientifique", + "Youth Directorate":"Secrétariat à la jeunesse", + "Yukon Water Board Secretariat":"Secrétariat de l’Office des eaux du Yukon", + "Finance and Administration":"Finances et administration", + "Office of the Comptroller":"Bureau du contrôleur", + "Economic Research":"Recherche sur les affaires et l’économie", + "Fiscal Relations":"Relations fiscales", + "Program Management":"Gestion des programmes", + "Yukon Bureau of Statistics":"Bureau des statistiques du Yukon", + "Banking Investments and Debt Services":"Service d’investissement et de la dette", + "Evaluation":"Évaluation", + "Financial Management Information Systems":"Systèmes de renseignements sur la gestion financière", + "Financial Operations":"Opérations financières", + "Tax Administration":"Administration fiscale", "Budgets":"Budgets", - "Management Board Analysis":"Management Board Analysis", - "Community Health Programs":"Community Health Programs", - "Community Nursing":"Community Nursing", - "Emergency Medical Services":"Emergency Medical Services", - "Integrated Health Services":"Integrated Health Services", - "Mental Wellness and Substance Use Services":"Mental Wellness and Substance Use Services", - "Care and Community":"Care and Community", - "Home Care":"Home Care", - "Quality and Safety":"Quality and Safety", - "Facilities and Capital Planning":"Facilities and Capital Planning", - "Health, Safety and Emergency Management":"Health, Safety and Emergency Management", - "Information Services":"Information Services", - "Strategic Finance":"Strategic Finance", - "Strategic Policy and Planning":"Strategic Policy and Planning", - "Issues Management Unit":"Issues Management Unit", - "Communications and Social Marketing":"Communications and Social Marketing", - "Population and Public Health Evidence and Evaluation":"Population and Public Health Evidence and Evaluation", - "Transformation Innovation and Putting People First":"Transformation Innovation and Putting People First", - "Divisional Support Services":"Divisional Support Services", - "Family and Childrens Services":"Family and Childrens Services", - "Insured Health":"Insured Health", - "Social Supports":"Social Supports", - "Capital Planning Office":"Capital Planning Office", - "Operations Strategy":"Operations Strategy", - "Sustainable Infrastructure":"Sustainable Infrastructure", - "Policy and Communications":"Policy and Communications", - "Procurement Support Centre":"Procurement Support Centre", - "Supply Services":"Supply Services", - "Corporate Information Management":"Corporate Information Management", - "Data and Application Support":"Data and Application Support", - "Electronic Services":"Electronic Services", - "Information Technology and Client Services":"Information Technology and Client Services", - "Office of the CIO":"Office of the CIO", - "Planning and Administration":"Planning and Administration", - "Service Innovation and Support":"Service Innovation and Support", - "Technology Infrastructure":"Technology Infrastructure", - "Capital Development":"Capital Development", - "Facilities Management and Regional Services":"Facilities Management and Regional Services", - "Realty and Capital Asset Planning":"Realty and Capital Asset Planning", - "Transport Services":"Transport Services", - "Transportation Aviation":"Transportation Aviation", - "Transportation Engineering":"Transportation Engineering", - "Transportation Maintenance":"Transportation Maintenance", - "Transportation Planning":"Transportation Planning", - "Finance Systems Administration and Records":"Finance Systems Administration and Records", - "Negotiations, Collaborations and Partnerships":"Negotiations, Collaborations and Partnerships", - "Corrections":"Corrections", - "Public Safety and Investigations":"Public Safety and Investigations", - "Victim Services":"Victim Services", - "Court Administration":"Court Administration", - "Court Operations":"Court Operations", - "Justice Wellness Centre":"Justice Wellness Centre", - "Sheriffs Services":"Sheriffs Services", - "Aboriginal Law":"Aboriginal Law", - "Legislative Counsel":"Legislative Counsel", - "Litigation":"Litigation", - "Natural Resources and Environmental Law":"Natural Resources and Environmental Law", - "Solicitors":"Solicitors", - "Coroners Services":"Coroners Services", - "Family Law Support Programs":"Family Law Support Programs", - "Land Titles Office":"Land Titles Office", - "Office of the Public Guardian and Trustee":"Office of the Public Guardian and Trustee", - "Workers Advocate Office":"Workers Advocate Office", - "Human Resource Business Partners":"Human Resource Business Partners", - "Policy":"Policy", - "Health, Safety and Wellbeing":"Health, Safety and Wellbeing", - "Labour Relations":"Labour Relations", - "Respectful Workplace Office":"Respectful Workplace Office", - "Compensation and Benefit Programs":"Compensation and Benefit Programs", - "Compensation and Classification":"Compensation and Classification", - "HR Management Systems":"HR Management Systems", - "HR Shared Services":"HR Shared Services", - "Staffing Management and Solutions":"Staffing Management and Solutions", - "Communications, Engagement and Strategic Initiatives":"Communications, Engagement and Strategic Initiatives", - "Diversity and Inclusion":"Diversity and Inclusion", - "Organizational Development":"Organizational Development", - "People Metrics, Analytics and Projects":"People Metrics, Analytics and Projects", - "Corporate Services":"Corporate Services", - "Cultural Services":"Cultural Services", - "Tourism":"Tourism", - "Centralized Services":"Centralized Services", - "Employer Services":"Employer Services", - "Claimant Services":"Claimant Services", - "Social Marketing and Communications":"Social Marketing and Communications", - "Board":"Board", - "Legal Services":"Legal Services", - "President":"President", - "Inspections and Compliance":"Inspections and Compliance", - "Mine Safety":"Mine Safety", - "Occupational Hygiene":"Occupational Hygiene", - "OHS Executive":"OHS Executive", - "Financial Services":"Financial Services", - "Information Systems":"Information Systems", - "Records Management":"Records Management", - "Finance and Risk Management Branch":"Finance and Risk Management Branch", - "Information Management and Technology Branch":"Information Management and Technology Branch", - "Tenancy Supports":"Tenancy Supports", - "Social Responsibility, Policy and Planning":"Social Responsibility, Policy and Planning", - "Retail Operations":"Retail Operations", - "Rural Stores and Territorial Agent Services":"Rural Stores and Territorial Agent Services", - "Sales and Distribution":"Sales and Distribution", - "Sourcing and Supply":"Sourcing and Supply", - "Warehouse Operations":"Warehouse Operations", - "Whitehorse Liquor Store":"Whitehorse Liquor Store", - "Public Schools - Rural":"Public Schools - Rural", - "Client Business and Technology Solutions":"Client Business and Technology Solutions", - "Employees who are not assigned a branch":"Employees who are not assigned a branch" - //End Missing translation + "Management Board Analysis":"Analyse du Conseil de gestion", + "Community Health Programs":"Programmes de santé communautaire", + "Community Nursing":"Soins infirmiers communautaires", + "Emergency Medical Services":"Services médicaux d’urgence", + "Integrated Health Services":"Services de santé intégrés", + "Mental Wellness and Substance Use Services":"Services pour le mieux-être mental et la gestion de l’usage de substances", + "Care and Community":"Soins et services de proximité", + "Home Care":"Soins à domicile", + "Quality and Safety":"Qualité et sécurité", + "Facilities and Capital Planning":"Planification des établissements et immobilisations", + "Health, Safety and Emergency Management":"Gestion de la santé, de la sécurité et des urgences", + "Information Services":"Information", + "Strategic Finance":"Finances stratégiques", + "Strategic Policy and Planning":"Politique stratégique et planification", + "Issues Management Unit":"Gestion stratégique", + "Communications and Social Marketing":"Communications et marketing social", + "Population and Public Health Evidence and Evaluation":"Santé publique et des populations, Collecte et évaluation des données", + "Transformation Innovation and Putting People First":"Transformation, Innovation et projet La population d’abord", + "Divisional Support Services":"Services de soutien", + "Family and Childrens Services":"Services à la famille et à l’enfance", + "Insured Health":"Services de santé assurés", + "Social Supports":"Services sociaux", + "Capital Planning Office":"Bureau de planification des immobilisations", + "Operations Strategy":"Stratégie opérationnelle", + "Sustainable Infrastructure":"Infrastructures durables", + "Policy and Communications":"Politiques et communications", + "Procurement Support Centre":"Centre de soutien à l’approvisionnement", + "Supply Services":"Approvisionnements", + "Corporate Information Management":"Gestion globale de l’information", + "Data and Application Support":"Soutien des données et des applications", + "Electronic Services":"Services électroniques", + "Information Technology and Client Services":"Technologie de l’information et services à la clientèle", + "Office of the CIO":"Bureau du directeur des systèmes d’information", + "Planning and Administration":"Planification et administration", + "Service Innovation and Support":"Services d’innovation et de soutien", + "Technology Infrastructure":"Infrastructure technologique", + "Capital Development":"Investissement dans les immobilisations", + "Facilities Management and Regional Services":"Gestion des installations et services régionaux", + "Realty and Capital Asset Planning":"Gestion et planification des immobilisations", + "Transport Services":"Services de transport", + "Transportation Aviation":"Transport aérien", + "Transportation Engineering":"Ingénierie des transports", + "Transportation Maintenance":"Entretien des infrastructures", + "Transportation Planning":"Planification des transports", + "Finance Systems Administration and Records":"Finances, systèmes, administration et registres", + "Negotiations, Collaborations and Partnerships":"Négociations, Collaborations et Partenariats", + "Corrections":"Services correctionnels", + "Public Safety and Investigations":"Sécurité publique et enquêtes", + "Victim Services":"Services aux victimes", + "Court Administration":"Administration des tribunaux", + "Court Operations":"Services aux tribunaux", + "Justice Wellness Centre":"Centre de mieux-être de Justice Yukon", + "Sheriffs Services":"Shérif", + "Aboriginal Law":"Droit autochtone", + "Legislative Counsel":"Conseillers législatifs", + "Litigation":"Litiges", + "Natural Resources and Environmental Law":"Droit de l’environnement et des ressources naturelles", + "Solicitors":"Avocats", + "Coroners Services":"Bureau du coroner", + "Family Law Support Programs":"Programmes de soutien en droit familial", + "Land Titles Office":"Bureau des titres de biens-fonds", + "Office of the Public Guardian and Trustee":"Bureau du tuteur et curateur public", + "Workers Advocate Office":"Bureau du défenseur des travailleurs", + "Human Resource Business Partners":"Partenaires d’affaires en ressources humaines", + "Policy":"Politique", + "Health, Safety and Wellbeing":"Santé, sécurité et mieux-être", + "Labour Relations":"Relations de travail", + "Respectful Workplace Office":"Bureau de promotion du respect au travail", + "Compensation and Benefit Programs":"Rémunération et avantages sociaux", + "Compensation and Classification":"Rémunération et classification", + "HR Management Systems":"Systèmes de gestion des ressources humaines", + "HR Shared Services":"Services partagés des ressources humaines", + "Staffing Management and Solutions":"Dotation", + "Communications, Engagement and Strategic Initiatives":"Communications, mobilisation et initiatives stratégiques", + "Diversity and Inclusion":"Diversité et inclusion ", + "Organizational Development":"Développement organisationnel", + "People Metrics, Analytics and Projects":"Indicateurs des ressources humaines", + "Corporate Services":"Services généraux", + "Cultural Services":"Services culturels", + "Tourism":"Tourisme", + "Centralized Services":"Services centralisés", + "Employer Services":"Services aux employeurs", + "Claimant Services":"Services aux demandeurs", + "Social Marketing and Communications":"Communications et marketing social", + "Board":"Commission", + "Legal Services":"Services juridiques", + "President":"Présidence", + "Inspections and Compliance":"Inspections et conformité", + "Mine Safety":"Sécurité minière", + "Occupational Hygiene":"Hygiène du travail", + "OHS Executive":"Bureau de santé et sécurité au travail", + "Financial Services":"Services financiers", + "Information Systems":"Systèmes d’information", + "Records Management":"Gestion des dossiers", + "Finance and Risk Management Branch":"Finances et gestion des risques", + "Information Management and Technology Branch":"Technologie et gestion de l’information", + "Tenancy Supports":"Services d’aide aux locataires", + "Social Responsibility, Policy and Planning":"Responsabilisation sociale, politiques et planification", + "Retail Operations":"Vente au détail", + "Rural Stores and Territorial Agent Services":"Magasins dans les collectivités rurales et agentes et agents territoriaux", + "Sales and Distribution":"Ventes et distribution", + "Sourcing and Supply":"Approvisionnement", + "Warehouse Operations":"Activités d’entrepôt", + "Whitehorse Liquor Store":"Magasin des alcools de Whitehorse", + "Public Schools - Rural":"Écoles publiques en milieu rural", + "Client Business and Technology Solutions":"Solutions clients, entreprises et technologie", + "Employees who are not assigned a branch":"Personnel non affecté à une direction", + "All branches":"Toutes les direction", }, positions_api:{ "Residential Care Worker":"Residential Care Worker", @@ -2808,162 +2806,162 @@ export const fr = { "​Liquor Store Clerk and Territorial Agent":"​Liquor Store Clerk and Territorial Agent" }, search_bar_header: { - title: "Trouver un employé du gouvernement", + title: "Répertoire des fonctionnaires", search: { - label: "Saisissez le nom, le titre du poste, l'e-mail ou le numéro de téléphone d'une personne dans la barre de recherche.", + label: "Saisir le nom, le titre, le courriel ou le numéro de téléphone de la personne dans la barre de recherche.", input_placeholder: "Mots-clés" }, }, employees: { - browse_directory_by_department: "Parcourez l'annuaire des employés par département" + browse_directory_by_department: "Parcourir le répertoire par ministère" }, feedback_form: { questions: { - helpful_message: "Avez-vous trouvé cette page utile?", + helpful_message: "Avez-vous trouvé ce que vous cherchiez?", how_help_you_message: "En quoi cette page vous a-t-elle été utile?", how_improve_message: "Comment peut-on améliorer cette page?", }, buttons: { - submit_feedback: "Soumettre vos commentaires", + submit_feedback: "Faire un commentaire", }, alerts: { - thanks_feedback: "Merci d'avoir pris le temps de nous envoyer vos commentaires.", - field_is_required: "Champ requis.", + thanks_feedback: "Merci de nous avoir fait part de votre avis.", + field_is_required: "champ obligatoire", try_again: "Veuillez réessayer plus tard!" } }, department: { labels: { - browse_employees_by_divisions: "Parcourir les employés par ces divisions", - no_results: "Aucun résultat.", - view_list: "Afficher une liste de tous les départements de", - group_by: "Par groupe:", - see_all_employees: "Voir tous les employés du gouvernement", + browse_employees_by_divisions: "Parcourir le répertoire par division ", + no_results: "Aucun résultat", + view_list: "Voir une liste de tous les ministères", + group_by: "Regrouper par", + see_all_employees: "Voir la totalité des fonctionnaires", location: "Emplacement", - position: "Position", + position: "Poste", results: "Résultats" }, }, employee_details: { organization: { title: "Organisation", - department: "Département", + department: "Ministère", division: "Division", - branch: "Branche", + branch: "Direction", unit: "Unité", }, contact: { - title: "Contacter", - phone_office: "Bureau téléphonique", - email_address: "Adresse email", - fax_office: "Bureau de fax", + title: "Coordonnées ", + phone_office: "Téléphone (bureau)", + email_address: "Courriel", + fax_office: "Télécopieur (bureau)", }, position_information: { - title: "Informations de position", - manager: "Rapports à", + title: "Information sur le poste", + manager: "Supérieure ou supérieur hiérarchique", }, location: { title: "Emplacement", - address: "Aadresse", - community: "Communauté", + address: "Adresse", + community: "Localité", postal_code: "Code postal", - mail_code: "Code courrier" + mail_code: "Courrier interne" } }, employee_search: { no_results_by_department: { body: { - part1: "Votre recherche", - part2: "dans le département", - part3: "n'a donné aucun résultat." + part1: "Votre recherche pour", + part2: "au ministère", + part3: "n’a donné aucun résultat." } }, no_results: { body: { - part1: "Votre recherche", - part2: "n'a donné aucun résultat." + part1: "Votre recherche pour", + part2: "n’a donné aucun résultat." } }, results_by_department: { body: { - part1: "Votre recherche", - part2: "dans le département", - part3: "a abouti à", + part1: "Votre recherche pour", + part2: "au ministère", + part3: "a donné", part4: "résultats." } }, - results: { + résultats: { body: { - part1: "Votre recherche", - part2: "a abouti à", + part1: "Votre recherche pour", + part2: "a donné", part3: "résultats." } }, labels: { - group_by: "Par groupe", - see_all: "Voir tous les employés du gouvernement", - department: "Département", + group_by: "Regrouper par", + see_all: "Voir la totalité des fonctionnaires", + department: "Ministère", location: "Emplacement", - position: "Position" + position: "Poste" } }, grid: { - group_by: "Par groupe", - see_all: "Voir tous les employés du gouvernement", + group_by: "Regrouper par", + see_all: "Voir la totalité des fonctionnaires", location: "Emplacement", - position: "Position", - no_results: "Il n'y a aucun résultat", + position: "Poste", + no_results: "Aucun résultat.", results: "Résultats", - "Name" : "Nom et prénom ", + "Name" : "Nom", "Position" : "Poste", - "Email address" : "Adresse électronique", - "Phone number" : "Numéro de téléphone", + "Email address" : "Courriel", + "Phone number" : "Téléphone", }, not_found: { page_not_found: "Page non trouvée", page_is_not_here: { - title: "Désolé, cette page n'est pas ici.", - body: "Vous n'avez rien fait de mal. Nous avons peut-être déplacé la page que vous recherchez ailleurs." + title: "Oups, il semble que cette page n’existe pas.", + body: "Vous n’avez commis aucune erreur; il se peut que nous ayons déplacé la page que vous cherchez." }, reached_from_inside: { - title: "Avez-vous suivi un lien à partir d'ici?", + title: "Avez-vous suivi un lien à partir de notre site Web?", body: { - part1: "Si vous avez atteint cette page à partir d'une autre partie de Yukon.ca,", - part2: "faites-le-nous savoir ", - part3: "afin que nous puissions corriger notre erreur." + part1: "Si vous venez d’une autre page sur Yukon.ca, ", + part2: "dites-le nous; ", + part3: "nous pourrons faire les corrections nécessaires." } }, reached_from_outside: { - title: "Avez-vous suivi un lien d'un autre site?", + title: "Avez-vous suivi un lien à partir d’un autre site Web?", body: { - part1: "Les liens provenant d'autres sites peuvent parfois être anciens ou mal orthographiés. ", - part2: "Faites-nous savoir ", - part3: "d'où vous venez et nous pourrons essayer de contacter l'autre site pour résoudre le problème." + part1: "Les liens à partir d’autres sites peuvent être désuets ou erronés. ", + part2: "dites-le nous; ", + part3: "quel lien vous avez suivi pour que nous puissions contacter les administrateurs du site et faire corriger le problème." } }, address_wrong_message: { - title: "Avez-vous tapé l'URL?", - body: "YVous avez peut-être mal saisi l'adresse (URL). Vérifiez que vous avez exactement la bonne orthographe ou la bonne majuscule." + title: "Avez-vous entré l’adresse URL?", + body: "Il se peut que vous ayez mal entré l’adresse. Assurez-vous de l’avoir bien copiée, y compris les majuscules." } }, }, breadcrumbs: { - home: "Accueil Yukon.ca", - find_a_government_employee: "Trouver un employé du gouvernement", - department: "Department", - search: "Search", - division: "Division", - branch: "Branch", + home: "Yukon.ca home", + find_a_government_employee: "Répertoire des fonctionnaires", + department: "Ministère", + search: "Rechercher", + division: "Divisions", + branch: "Directions", username: "Username", - find_employee: "Find Employee", - page_not_found: "Page not found" + find_employee: "Trouver une employée ou un employé", + page_not_found: "Page introuvable" }, footer: { sections: { government: "Gouvernement du Yukon", - copyright: "Droits d'auteur", - disclaimer: "Clause de non-responsabilité", - privacy: "Déclaration de confidentialité" + copyright: "Droit d’auteur", + disclaimer: "Avis de non-responsabilité", + privacy: "Énoncé de confidentialité" } }, yukon_urls: {