| @@ 1420-1435 (lines=16) @@ | ||
| 1417 | * |
|
| 1418 | * @return array |
|
| 1419 | */ |
|
| 1420 | private function getUpdatedLanguageCodes(APIContentUpdateStruct $contentUpdateStruct) |
|
| 1421 | { |
|
| 1422 | $languageCodes = [ |
|
| 1423 | $contentUpdateStruct->initialLanguageCode => true, |
|
| 1424 | ]; |
|
| 1425 | ||
| 1426 | foreach ($contentUpdateStruct->fields as $field) { |
|
| 1427 | if ($field->languageCode === null || isset($languageCodes[$field->languageCode])) { |
|
| 1428 | continue; |
|
| 1429 | } |
|
| 1430 | ||
| 1431 | $languageCodes[$field->languageCode] = true; |
|
| 1432 | } |
|
| 1433 | ||
| 1434 | return array_keys($languageCodes); |
|
| 1435 | } |
|
| 1436 | ||
| 1437 | /** |
|
| 1438 | * Returns all language codes used in given $fields. |
|
| @@ 1105-1120 (lines=16) @@ | ||
| 1102 | * |
|
| 1103 | * @return string[] |
|
| 1104 | */ |
|
| 1105 | protected function determineLanguageCodesForCreate($mainLanguageCode, array $structFields) |
|
| 1106 | { |
|
| 1107 | $languageCodes = array(); |
|
| 1108 | ||
| 1109 | foreach ($structFields as $field) { |
|
| 1110 | if ($field->languageCode === null || isset($languageCodes[$field->languageCode])) { |
|
| 1111 | continue; |
|
| 1112 | } |
|
| 1113 | ||
| 1114 | $languageCodes[$field->languageCode] = true; |
|
| 1115 | } |
|
| 1116 | ||
| 1117 | $languageCodes[$mainLanguageCode] = true; |
|
| 1118 | ||
| 1119 | return array_keys($languageCodes); |
|
| 1120 | } |
|
| 1121 | ||
| 1122 | /** |
|
| 1123 | * Asserts that calling createContent() with given API field set causes calling |
|