diff --git a/core/js/js.js b/core/js/js.js
index a7dba7981f7..3cd8f306044 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 44820c4a9a8..3cac14b4ab3 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 86f2ab3b1f0..8c35d75a4b5 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 c378396c727..be81608f074 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)) {