From bf6bfad76bcf40266f7a7bdc71cbf59e8873abe7 Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Mon, 17 Jul 2017 10:08:51 +0200 Subject: [PATCH] OC.getLocale() now returns Locale and no longer Language Added OC.getLanguage() to get Language still gets language, though according to IETF BCP47 locale should be good. Signed-off-by: Thomas Citharel --- core/js/js.js | 9 +++++++++ core/templates/layout.user.php | 2 +- lib/private/L10N/Factory.php | 2 +- lib/private/TemplateLayout.php | 3 ++- 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/core/js/js.js b/core/js/js.js index a7dba7981f..3cd8f30604 100644 --- a/core/js/js.js +++ b/core/js/js.js @@ -791,6 +791,15 @@ var OCP = {}, * @return {String} locale string */ getLocale: function() { + return $('html').prop('data-locale'); + }, + + /** + * Returns the user's language + * + * @returns {String} language string + */ + getLanguage: function () { return $('html').prop('lang'); }, diff --git a/core/templates/layout.user.php b/core/templates/layout.user.php index 44820c4a9a..3cac14b4ab 100644 --- a/core/templates/layout.user.php +++ b/core/templates/layout.user.php @@ -1,5 +1,5 @@ - + diff --git a/lib/private/L10N/Factory.php b/lib/private/L10N/Factory.php index 86f2ab3b1f..8c35d75a4b 100644 --- a/lib/private/L10N/Factory.php +++ b/lib/private/L10N/Factory.php @@ -195,7 +195,7 @@ class Factory implements IFactory { return 'en'; } - public function findLocale($app = null, $lang = null) + public function findLocale($lang = null) { if ($this->config->getSystemValue('installed', false)) { $userId = null !== $this->userSession->getUser() ? $this->userSession->getUser()->getUID() : null; diff --git a/lib/private/TemplateLayout.php b/lib/private/TemplateLayout.php index c378396c72..be81608f07 100644 --- a/lib/private/TemplateLayout.php +++ b/lib/private/TemplateLayout.php @@ -131,10 +131,11 @@ class TemplateLayout extends \OC_Template { parent::__construct('core', 'layout.base'); } - // Send the language to our layouts + // Send the language and the locale to our layouts $lang = \OC::$server->getL10NFactory()->findLanguage(); $lang = str_replace('_', '-', $lang); $this->assign('language', $lang); + $this->assign('locale', \OC::$server->getL10NFactory()->findLocale()); if(\OC::$server->getSystemConfig()->getValue('installed', false)) { if (empty(self::$versionHash)) {