From 3fe78025d22ea13e9b1b41a13b3854303b136e35 Mon Sep 17 00:00:00 2001 From: 10G Meow <10gmeow@gmail.com> Date: Fri, 14 Jan 2022 11:26:21 +0000 Subject: [PATCH 1/5] Resolve "set default language based on user browser header" --- src/App.vue | 51 +++++++++++++++++++++++++++++---------------------- 1 file changed, 29 insertions(+), 22 deletions(-) diff --git a/src/App.vue b/src/App.vue index 38daafe..785db88 100644 --- a/src/App.vue +++ b/src/App.vue @@ -40,29 +40,12 @@ export default { data() { return { loading: true, - }; + browserLanguage: null, + availableJsonTranslation: null + } }, beforeMount() { - if (!this.$store.state.language) { - // No language set, default to browser language? - var browserLang = ( - navigator.language || - navigator.userLanguage || - "" - ).toLowerCase(); - if (this.$i18n.messages[browserLang]) { - this.$store.commit("setLanguage", browserLang); - } else if (browserLang.includes("-")) { - // Try with language name only. - let lang = browserLang.split("-")[0]; - if (this.$i18n.messages[lang]) { - this.$store.commit("setLanguage", lang); - } - } - } - - // Set language - this.$i18n.locale = this.$store.state.language || "en"; + this.setDefaultLanguage(); }, mounted() { /** @@ -98,6 +81,30 @@ export default { stickers.loadStickersFromConfig(config); } }, + setDefaultLanguage() { + let LocalesArr= Object.keys(this.$i18n.messages); + // No language set, default to browser language? + this.browserLanguage = (navigator.language ||navigator.userLanguage ||"").toLowerCase(); + // Try with language name only. + let lang = this.browserLanguage.split("-")[0]; + // Assigns available language for ex 'zh_Hans' when browser header language is 'zh' or 'zh-HK' + this.availableJsonTranslation= LocalesArr[LocalesArr.findIndex(locale => locale.includes(lang))]; + + if (this.$i18n.messages[this.browserLanguage]) { + this.$store.commit("setLanguage", this.browserLanguage); + } else if (this.browserLanguage.includes("-")) { + if (this.$i18n.messages[lang]) { + this.$store.commit("setLanguage", lang); + } else { + this.$store.commit("setLanguage", this.availableJsonTranslation); + } + } else { + this.$store.commit("setLanguage", this.availableJsonTranslation); + } + + // Set language + this.$i18n.locale = this.$store.state.language || "en"; + } }, computed: { currentUser() { @@ -187,7 +194,7 @@ export default { .main { @media #{map-get($display-breakpoints, 'lg-and-up')} { margin: 0 auto; - width: $main-desktop-width;; + width: $main-desktop-width; } } From a6e04e676af2adbd9b820fecd7da1c6c1ac52fe3 Mon Sep 17 00:00:00 2001 From: N-Pex Date: Thu, 20 Jan 2022 21:23:04 +0100 Subject: [PATCH 2/5] Don't use front domain to create room For issue #222. --- src/services/matrix.service.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/services/matrix.service.js b/src/services/matrix.service.js index c1db9c1..3283c48 100644 --- a/src/services/matrix.service.js +++ b/src/services/matrix.service.js @@ -67,6 +67,13 @@ export default { }, currentUserHomeServer() { + if (this.$config.defaultServer) { + var homeServer = this.$config.defaultServer; + if (homeServer.startsWith("https://")) { + homeServer = homeServer.substring(8); + } + return homeServer; + } return User.serverName(this.currentUserId); }, From 9c825dfc16d445ff9132f7799f186a01327d6ec1 Mon Sep 17 00:00:00 2001 From: irl Date: Sat, 22 Jan 2022 11:35:30 +0000 Subject: [PATCH 3/5] Give up on GitLab pages to get dev builds working --- .gitlab-ci.yml | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 13f84cd..ca9922b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,6 +1,6 @@ -pages: # the job must be named pages +build: image: node:latest - stage: deploy + stage: build before_script: # - ./update_version.sh - echo $CI_COMMIT_TIMESTAMP $CI_COMMIT_SHORT_SHA > src/assets/version.txt @@ -9,19 +9,19 @@ pages: # the job must be named pages - export NODE_OPTIONS=--openssl-legacy-provider - npm ci - npm run build - - mv public public-vue # GitLab Pages hooks on the public folder - - mv dist public # rename the dist folder (result of npm run build) - artifacts: - paths: - - public # artifact path must be /public for GitLab Pages to pick it up - only: - - main -s3-deploy: - stage: .post +s3: + stage: deploy image: registry.gitlab.com/gitlab-org/cloud-deploy/aws-base:latest script: - - aws s3 sync ./public s3://gp-web-prod-shared-weblite-bucket --delete --only-show-errors - - aws s3 sync ./public s3://gp-web-prod-shared-weblite-bucket-dev --delete --only-show-errors + - aws s3 sync ./dist s3://gp-web-prod-shared-weblite-bucket --delete --only-show-errors only: - main + +s3-dev: + stage: deploy + image: registry.gitlab.com/gitlab-org/cloud-deploy/aws-base:latest + script: + - aws s3 sync ./dist s3://gp-web-prod-shared-weblite-bucket-dev --delete --only-show-errors + only: + - dev From bd0f7d3833316dcc6ebe888a612b572d2352e097 Mon Sep 17 00:00:00 2001 From: irl Date: Sat, 22 Jan 2022 12:22:20 +0000 Subject: [PATCH 4/5] Maybe you have to specify the artifact for the deploy stage to get it --- .gitlab-ci.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ca9922b..e61cb88 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -9,6 +9,10 @@ build: - export NODE_OPTIONS=--openssl-legacy-provider - npm ci - npm run build + artifacts: + paths: + - dist + s3: stage: deploy From 81984e0b910ea04de8dc8da477d7bd1eebb3fef6 Mon Sep 17 00:00:00 2001 From: irl Date: Sat, 22 Jan 2022 12:54:45 +0000 Subject: [PATCH 5/5] Allow explicit override of home server name in config --- src/services/matrix.service.js | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/src/services/matrix.service.js b/src/services/matrix.service.js index 3283c48..ff72395 100644 --- a/src/services/matrix.service.js +++ b/src/services/matrix.service.js @@ -67,14 +67,7 @@ export default { }, currentUserHomeServer() { - if (this.$config.defaultServer) { - var homeServer = this.$config.defaultServer; - if (homeServer.startsWith("https://")) { - homeServer = homeServer.substring(8); - } - return homeServer; - } - return User.serverName(this.currentUserId); + return this.$config.homeServer ? this.$config.homeServer : User.serverName(this.currentUserId); }, currentRoomId() {