| @@ 1303-1318 (lines=16) @@ | ||
| 1300 | * |
|
| 1301 | * @return array |
|
| 1302 | */ |
|
| 1303 | private function getUpdatedLanguageCodes(APIContentUpdateStruct $contentUpdateStruct) |
|
| 1304 | { |
|
| 1305 | $languageCodes = [ |
|
| 1306 | $contentUpdateStruct->initialLanguageCode => true, |
|
| 1307 | ]; |
|
| 1308 | ||
| 1309 | foreach ($contentUpdateStruct->fields as $field) { |
|
| 1310 | if ($field->languageCode === null || isset($languageCodes[$field->languageCode])) { |
|
| 1311 | continue; |
|
| 1312 | } |
|
| 1313 | ||
| 1314 | $languageCodes[$field->languageCode] = true; |
|
| 1315 | } |
|
| 1316 | ||
| 1317 | return array_keys($languageCodes); |
|
| 1318 | } |
|
| 1319 | ||
| 1320 | /** |
|
| 1321 | * Returns all language codes used in given $fields. |
|
| @@ 1101-1116 (lines=16) @@ | ||
| 1098 | * |
|
| 1099 | * @return string[] |
|
| 1100 | */ |
|
| 1101 | protected function determineLanguageCodesForCreate($mainLanguageCode, array $structFields) |
|
| 1102 | { |
|
| 1103 | $languageCodes = array(); |
|
| 1104 | ||
| 1105 | foreach ($structFields as $field) { |
|
| 1106 | if ($field->languageCode === null || isset($languageCodes[$field->languageCode])) { |
|
| 1107 | continue; |
|
| 1108 | } |
|
| 1109 | ||
| 1110 | $languageCodes[$field->languageCode] = true; |
|
| 1111 | } |
|
| 1112 | ||
| 1113 | $languageCodes[$mainLanguageCode] = true; |
|
| 1114 | ||
| 1115 | return array_keys($languageCodes); |
|
| 1116 | } |
|
| 1117 | ||
| 1118 | /** |
|
| 1119 | * Asserts that calling createContent() with given API field set causes calling |
|