public static function updateNontranslatableAttributes($objectID, $versionNum)
{
$object = eZContentObject::fetch($objectID);
$version = $object->version($versionNum);
$nonTranslatableAttributes = $version->nonTranslatableAttributesToUpdate();
if ($nonTranslatableAttributes) {
$attributes = $version->contentObjectAttributes($version->initialLanguageCode());
$attributeByClassAttrID = array();
foreach ($attributes as $attribute) {
$attributeByClassAttrID[$attribute->attribute('contentclassattribute_id')] = $attribute;
}
foreach ($nonTranslatableAttributes as $attributeToUpdate) {
$originalAttribute =& $attributeByClassAttrID[$attributeToUpdate->attribute('contentclassattribute_id')];
if ($originalAttribute) {
unset($tmp);
$tmp = $attributeToUpdate;
$tmp->initialize($attributeToUpdate->attribute('version'), $originalAttribute);
$tmp->setAttribute('id', $attributeToUpdate->attribute('id'));
$tmp->setAttribute('language_code', $attributeToUpdate->attribute('language_code'));
$tmp->setAttribute('language_id', $attributeToUpdate->attribute('language_id'));
$tmp->setAttribute('attribute_original_id', $originalAttribute->attribute('id'));
$tmp->store();
$tmp->postInitialize($attributeToUpdate->attribute('version'), $originalAttribute);
}
}
}
}