| @@ 1400-1415 (lines=16) @@ | ||
| 1397 | * |
|
| 1398 | * @return array |
|
| 1399 | */ |
|
| 1400 | private function getUpdatedLanguageCodes(APIContentUpdateStruct $contentUpdateStruct) |
|
| 1401 | { |
|
| 1402 | $languageCodes = [ |
|
| 1403 | $contentUpdateStruct->initialLanguageCode => true, |
|
| 1404 | ]; |
|
| 1405 | ||
| 1406 | foreach ($contentUpdateStruct->fields as $field) { |
|
| 1407 | if ($field->languageCode === null || isset($languageCodes[$field->languageCode])) { |
|
| 1408 | continue; |
|
| 1409 | } |
|
| 1410 | ||
| 1411 | $languageCodes[$field->languageCode] = true; |
|
| 1412 | } |
|
| 1413 | ||
| 1414 | return array_keys($languageCodes); |
|
| 1415 | } |
|
| 1416 | ||
| 1417 | /** |
|
| 1418 | * Returns all language codes used in given $fields. |
|
| @@ 1135-1150 (lines=16) @@ | ||
| 1132 | * |
|
| 1133 | * @return string[] |
|
| 1134 | */ |
|
| 1135 | protected function determineLanguageCodesForCreate($mainLanguageCode, array $structFields) |
|
| 1136 | { |
|
| 1137 | $languageCodes = []; |
|
| 1138 | ||
| 1139 | foreach ($structFields as $field) { |
|
| 1140 | if ($field->languageCode === null || isset($languageCodes[$field->languageCode])) { |
|
| 1141 | continue; |
|
| 1142 | } |
|
| 1143 | ||
| 1144 | $languageCodes[$field->languageCode] = true; |
|
| 1145 | } |
|
| 1146 | ||
| 1147 | $languageCodes[$mainLanguageCode] = true; |
|
| 1148 | ||
| 1149 | return array_keys($languageCodes); |
|
| 1150 | } |
|
| 1151 | ||
| 1152 | /** |
|
| 1153 | * Asserts that calling createContent() with given API field set causes calling |
|