From 3ade2c326923662cb46fafe437fffab194a155a0 Mon Sep 17 00:00:00 2001 From: Ryan Cramer Date: Thu, 8 Feb 2018 08:07:50 -0500 Subject: [PATCH] Fix issue processwire/processwire-issues#489 where file/image field with limit=1, multi-language description was not retained on when file was replaced --- .../InputfieldFile/InputfieldFile.module | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/wire/modules/Inputfield/InputfieldFile/InputfieldFile.module b/wire/modules/Inputfield/InputfieldFile/InputfieldFile.module index 10255cb3..3de1ecd8 100644 --- a/wire/modules/Inputfield/InputfieldFile/InputfieldFile.module +++ b/wire/modules/Inputfield/InputfieldFile/InputfieldFile.module @@ -697,8 +697,22 @@ class InputfieldFile extends Inputfield implements InputfieldItemList, Inputfiel * */ protected function ___extractMetadata(Pagefile $pagefile, array $metadata = array()) { + $metadata['description'] = $pagefile->description; + + /** @var Languages $languages */ + $languages = $this->wire('languages'); + if($languages && !$this->noLang) { + foreach($languages as $language) { + if($language->isDefault()) continue; + $metadata["description$language->id"] = $pagefile->description($language); + } + } + $metadata['tags'] = $pagefile->tags; + $filedata = $pagefile->filedata(); + if(count($filedata)) $metadata['filedata'] = $filedata; + return $metadata; }