]> BookStack Code Mirror - bookstack/blobdiff - app/Translation/FileLoader.php
Opensearch: Fixed XML declaration when php short tags enabled
[bookstack] / app / Translation / FileLoader.php
index de1124046183186ffeca53be74b1e3db3399293d..1fec4d18bb1cd6a82d1d2d1811f22a30bb369e07 100644 (file)
@@ -8,16 +8,22 @@ class FileLoader extends BaseLoader
 {
     /**
      * Load the messages for the given locale.
+     *
      * Extends Laravel's translation FileLoader to look in multiple directories
      * so that we can load in translation overrides from the theme file if wanted.
      *
+     * Note: As of using Laravel 10, this may now be redundant since Laravel's
+     * file loader supports multiple paths. This needs further testing though
+     * to confirm if Laravel works how we expect, since we specifically need
+     * the theme folder to be able to partially override core lang files.
+     *
      * @param string      $locale
      * @param string      $group
      * @param string|null $namespace
      *
      * @return array
      */
-    public function load($locale, $group, $namespace = null)
+    public function load($locale, $group, $namespace = null): array
     {
         if ($group === '*' && $namespace === '*') {
             return $this->loadJsonPaths($locale);
@@ -25,8 +31,8 @@ class FileLoader extends BaseLoader
 
         if (is_null($namespace) || $namespace === '*') {
             $themePath = theme_path('lang');
-            $themeTranslations = $themePath ? $this->loadPath($themePath, $locale, $group) : [];
-            $originalTranslations = $this->loadPath($this->path, $locale, $group);
+            $themeTranslations = $themePath ? $this->loadPaths([$themePath], $locale, $group) : [];
+            $originalTranslations = $this->loadPaths($this->paths, $locale, $group);
 
             return array_merge($originalTranslations, $themeTranslations);
         }