From f62812a8dcfacd675bfddb42fbe6cc23cf9d258e Mon Sep 17 00:00:00 2001 From: Dennis Wilson Date: Thu, 4 Dec 2014 21:11:30 +0100 Subject: [PATCH] Enable URL lang parameter for switching languages (fixes #1080) --- .gitignore | 1 + .../core/controllers/syncthingController.js | 7 +- .../syncthing/core/services/localeService.js | 71 ++++++++++--------- internal/auto/gui.files.go | 4 +- 4 files changed, 45 insertions(+), 38 deletions(-) diff --git a/.gitignore b/.gitignore index 3f9a44c8d..1c2881008 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ bin perfstats*.csv coverage.xml !gui/scripts/syncthing +.DS_Store diff --git a/gui/scripts/syncthing/core/controllers/syncthingController.js b/gui/scripts/syncthing/core/controllers/syncthingController.js index cada193ab..4f08d9320 100644 --- a/gui/scripts/syncthing/core/controllers/syncthingController.js +++ b/gui/scripts/syncthing/core/controllers/syncthingController.js @@ -583,7 +583,7 @@ angular.module('syncthing.core') $scope.config.GUI = angular.copy($scope.tmpGUI); ['ListenAddress', 'GlobalAnnServers'].forEach(function (key) { - $scope.config.Options[key] = $scope.config.Options[key + "Str"].split(/[ ,]+/).map(function (x) { + $scope.config.Options[key] = $scope.config.Options[key + "Str"].split(/[ ,]+/).map(function (x) { return x.trim(); }); }); @@ -918,11 +918,12 @@ angular.module('syncthing.core') var devices = $scope.folders[folderID].Devices for (var i = 0; i < devices.length; i++) { if (devices[i].DeviceID == deviceCfg.DeviceID) { - folders.push(folderID) - break + folders.push(folderID); + break; } } }; + folders.sort(); return folders; }; diff --git a/gui/scripts/syncthing/core/services/localeService.js b/gui/scripts/syncthing/core/services/localeService.js index 8721e4dfc..e6446ed7c 100644 --- a/gui/scripts/syncthing/core/services/localeService.js +++ b/gui/scripts/syncthing/core/services/localeService.js @@ -12,7 +12,7 @@ angular.module('syncthing.core') _availableLocales = locales; }; - this.$get = ['$http', '$translate', function ($http, $translate) { + this.$get = ['$http', '$translate', '$location', function ($http, $translate, $location) { /** * Requests the server in order to get the browser's requested locale strings. @@ -26,45 +26,50 @@ angular.module('syncthing.core') } function autoConfigLocale() { + var params = $location.search(); - return readBrowserLocales().success(function (langs) { - // Find the first language in the list provided by the user's browser - // that is a prefix of a language we have available. That is, "en" - // sent by the browser will match "en" or "en-US", while "zh-TW" will - // match only "zh-TW" and not "zh-CN". + if(params.lang) { + $translate.use(params.lang); + } else { + readBrowserLocales().success(function (langs) { + // Find the first language in the list provided by the user's browser + // that is a prefix of a language we have available. That is, "en" + // sent by the browser will match "en" or "en-US", while "zh-TW" will + // match only "zh-TW" and not "zh-CN". - var i, - lang, - matching; + var i, + lang, + matching, + locale = _defaultLocale; - for (i = 0; i < langs.length; i++) { - lang = langs[i]; + for (i = 0; i < langs.length; i++) { + lang = langs[i]; - if (lang.length < 2) { - continue; - } - - matching = _availableLocales.filter(function (possibleLang) { - // The langs returned by the /rest/langs call will be in lower - // case. We compare to the lowercase version of the language - // code we have as well. - possibleLang = possibleLang.toLowerCase(); - if (possibleLang.length > lang.length) { - return possibleLang.indexOf(lang) === 0; - } else { - return lang.indexOf(possibleLang) === 0; + if (lang.length < 2) { + continue; } - }); - if (matching.length >= 1) { - $translate.use(matching[0]); - return; + matching = _availableLocales.filter(function (possibleLang) { + // The langs returned by the /rest/langs call will be in lower + // case. We compare to the lowercase version of the language + // code we have as well. + possibleLang = possibleLang.toLowerCase(); + if (possibleLang.length > lang.length) { + return possibleLang.indexOf(lang) === 0; + } else { + return lang.indexOf(possibleLang) === 0; + } + }); + + if (matching.length >= 1) { + locale = matching[0]; + break; + } } - } - // Fallback if nothing matched - $translate.use(_defaultLocale); - }); - + // Fallback if nothing matched + $translate.use(locale); + }); + } } function useLocale(language) { diff --git a/internal/auto/gui.files.go b/internal/auto/gui.files.go index a1e6d9c60..c1f6fd5d4 100644 --- a/internal/auto/gui.files.go +++ b/internal/auto/gui.files.go @@ -162,7 +162,7 @@ func Assets() map[string][]byte { bs, _ = ioutil.ReadAll(gr) assets["scripts/syncthing/core/controllers/eventController.js"] = bs - bs, _ = base64.StdEncoding.DecodeString("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") + bs, _ = base64.StdEncoding.DecodeString("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") gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) bs, _ = ioutil.ReadAll(gr) assets["scripts/syncthing/core/controllers/syncthingController.js"] = bs @@ -217,7 +217,7 @@ func Assets() map[string][]byte { bs, _ = ioutil.ReadAll(gr) assets["scripts/syncthing/core/module.js"] = bs - bs, _ = base64.StdEncoding.DecodeString("H4sIAAAJbogA/4xWTW8bNxC9+1cMBANa2coq7dGqi7QOegpqoHGRgxEE1O6slihFqiR3FaXQf+/Mfmk/JfNiL8mZN/PmzVBCbzMlbLgzcaYwmLujjnwq9TaMjMX54gZohXtrchmjDeafTCQUfkabywjnS0gyui+NhmAB/90Ut3nlwsK3GBORKV+aLJszXt9ELqQSG4XlqVufbQnehQ79x7Y5PLagVLHFgB2fcc+gvLZuLp1GQH7rxTGC4wZA/eAbLHcB7HaLni6+zm9T7/dE3fzWW6GdEr5LZHG+hPNph1leq7u7zjfcwV/4b4bOO8JCcFQetCA1GEtVA2+AwfloY82BjucObGmBcRU7OG+p7i7sue4jfbDoM6sdkCh20iEcUhmlQJG7LIrQsWdnVE60HKRPQdTcgLBWHHvuVp3vhgSLIv69DLXiOOhXoSBiBR9enj8+P0CUYvQPyISTtAjSgSaBwkEcOfvMSyV/0KfUsTmEWuRyK7yxoWL9iy0FZyw4uaNrpFyxl+HNAKzMG4ryhMRnkFm1EUTAPcxW7Gi2WHeMTjfjyYnMmyejE7ktcwsGBW7BjTERVkwHLakS/kCoLZr+oMwLASTSOg913qwR3lWSNqsuj2FzLDazUiiVZKY8+1R45luQPSbyO5iEa14DHBBSkSM0PRPCS2mxhBnq2ZRbh9rXgVQRUPmUgp3wJDc25ZrR33d/f54tWYWk4dmP9N3Ll1lxc8pz6cBodWyuCyJHG198P/05Gyk+Lx5qcjl6xItTnj4tUKm/1uO+E8olkDQf3q9Bwi+FMxcq1Fuf0s79/VRta2SeQWzzKr9OQPCiBimkUnkmoJ8vOeYVGe2lznA9ees0jVdnTdENpmaYSOXpTTmLeG+ck3yBIrwWFhXyhYXLOVe9clbuikaQX5VnhKVK5WwKuStzmBBzy3VEfR3CF6Tsd3tBA4WGSNEnbMyHQAPWcdAmKQ8qvV91bOJWT9CIRKXCi0ZtUojG9mfozScO6IkCChbTBeLFle/YVgr4FVp6uEY6r2oudXzRcMHvz0khrQU8PrKMLzo6ASoi8c1oqo3Slclb0Kalu7jSLLWAG7oe4adrLJ1f7pBGaOPi9f3XKzUqk73UaG/f5ZlPyt+I8lmk6Vb0YREMxqMmvbi7v6dGQh+QN/Xgkbfqpavb5PJjjjkN/4yiP1bvOk/HXCjZ/FahDcpk4KIeb1MQI1k210fyu5RcJcwhRv91fxjsDB+JhqCH878346Gc6vHO7P8PAAD//wEAAP//iv6Rmr4LAAA=") + bs, _ = base64.StdEncoding.DecodeString("H4sIAAAJbogA/5RWX2/bNhB/z6c4GAGsJK7c7TFehm4p9lQswJqhD0FR0NLJIkqTHknZdQd/995RfyzJiuzeiy3y/v74uyOFXhVK2Hht0kJhNHV7nfhc6lWcGIvTmysgiTfWbGWKNpp+MIlQ+BHtViY4nUFWkL40GqIb+P8qaLNshYUvKWaiUL40mTV7LF/EVkgllgrLXbc42lJ4Fzv079vm8NAKpcISB+z4THsGpdqiUToMBPmjl8dAHHcSqJ98E8uNBLteoSfFl+l17v2GoJteeyu0U8Jj+GIXHLeDalCewVGV/teKHcRZ5re3nW+4hX/wvwKdd5QDgqNjQwtSg7F0muANcFK8tbRmR9tTB7a0wLSqCZy3xAcX91z3I72z6AurHRBZ1tIh7HKZ5EBFuCJJ0LFnZ9SW4NpJn4OoMQNhrdj33M073w0eFkX6Z5lqhX3UP50AxBzePT+9f7qHJMfkK8iMi7QI0oEm4sJO7Ln6wkslv9On1KnZxVps5Up4Y2PFfSFWlJyx4OSa1IjRYiPjq5NgZd0QTiomPKPCqqUgAO5gMmdHk5tFx+hwNVycKLx5NDqTq7K2wdK4szbCijWzrqECUVnYJI9uFqf5ySwqDUJVQz5ZjgyLC4cdi8WJwQFQUYHDnobOKK44ELWai1yftFZb6BD/onMJ9MykdR7qU2EG86qStFjNphSW+7BYlDSuCD3m3efCMyME+cBMfgOTMSvrIDuEXGwRmm6P4bm0mMEE9WTMtUPt64SqTIhkSsFaeGoKNmdm0e+bfz9OZtwr1GmT7/mb50+ToDnmvXRitNo3JoKA0saH78e/JwM0rYUJJGevbrMwBOMaIQN5TkvVk7g7mgc4WktGoESSLN4uQMJvIRNiIeqVz2nl7m6MMHXqPI7Z7kV+HgnFQnMh8LCKQAF/PReAJTHaS13gaWO05TAeu4aQ4elfKHEmlafr9tgtG+OcZIWRFm4LseSZO4RxqCbUsUXmNIn9vNyjeKqk5jL0lTK7ka5puU9oxMXwCQmNNU0L5HkampId8CbQXeM4eZOVG1VjXeTcpK0GpBsDlYrPGrZBIljbn7E3HzixR0osGphofWFmdOwrhvwOLb5cchAs1Q3R8UeTDb89ZVE5kx8emPJnnY3O3Veiqna0Lo0ujTpO86E7py0MZU32BsYH+OUS9JoJUjt4efv5fMJLuoK+nmvOn9/hC4m6ZSnKFwWN29C/ITVMXzXr3azV43U4vcPQZXvR44FcV6+Gus/GH0a4pSuqoHL21RuJR+9WKNm8+2iBSht4TsBoiKGSa/WfLK5i8GmM/kvp/mTl9GJqALo//r0aTuVQ3xt8HD8AAAD//wEAAP//HqE5wiINAAA=") gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) bs, _ = ioutil.ReadAll(gr) assets["scripts/syncthing/core/services/localeService.js"] = bs