fixed issue when creating language variables in monolingual installations
authorMarcel Werk <burntime@woltlab.com>
Tue, 17 Mar 2020 17:50:26 +0000 (18:50 +0100)
committerMarcel Werk <burntime@woltlab.com>
Tue, 17 Mar 2020 17:50:26 +0000 (18:50 +0100)
wcfsetup/install/files/lib/data/language/item/LanguageItemAction.class.php

index 3d4cde2a900d488501488c17c516434738c124b4..b048db29f38a0a0e8e9d879db3c0f80264d3c76a 100644 (file)
@@ -54,13 +54,27 @@ class LanguageItemAction extends AbstractDatabaseObjectAction {
                        $this->parameters['data']['packageID'] = 1;
                }
                
-               foreach ($this->parameters['languageItemValue_i18n'] as $languageID => $value) {
+               if (!empty($this->parameters['languageItemValue_i18n'])) {
+                       // multiple languages
+                       foreach ($this->parameters['languageItemValue_i18n'] as $languageID => $value) {
+                               (new LanguageItemAction([], 'create', [
+                                       'data' => array_merge(
+                                               $this->parameters['data'],
+                                               [
+                                                       'languageID' => $languageID,
+                                                       'languageItemValue' => $value
+                                               ]
+                                       )
+                               ]))->executeAction();
+                       }
+               }
+               else {
+                       // single language
                        (new LanguageItemAction([], 'create', [
                                'data' => array_merge(
                                        $this->parameters['data'],
                                        [
-                                               'languageID' => $languageID,
-                                               'languageItemValue' => $value
+                                               'languageID' => LanguageFactory::getInstance()->getDefaultLanguageID()
                                        ]
                                )
                        ]))->executeAction();