static function updateMainNodeID($mainNodeID, $objectID, $version = false, $parentMainNodeID, $updateSection = true)
 {
     $mainNodeID = (int) $mainNodeID;
     $parentMainNodeID = (int) $parentMainNodeID;
     $objectID = (int) $objectID;
     $version = (int) $version;
     $db = eZDB::instance();
     $db->begin();
     $db->query("UPDATE ezcontentobject_tree SET main_node_id={$mainNodeID} WHERE contentobject_id={$objectID}");
     if (!$version) {
         $rows = $db->arrayQuery("SELECT current_version FROM ezcontentobject WHERE id={$objectID}");
         $version = $rows[0]['current_version'];
     }
     $db->query("UPDATE eznode_assignment SET is_main=1 WHERE contentobject_id={$objectID} AND contentobject_version={$version} AND parent_node={$parentMainNodeID}");
     $db->query("UPDATE eznode_assignment SET is_main=0 WHERE contentobject_id={$objectID} AND contentobject_version={$version} AND parent_node!={$parentMainNodeID}");
     $contentObject = eZContentObject::fetch($objectID);
     $parentContentObject = eZContentObject::fetchByNodeID($parentMainNodeID);
     if ($updateSection && $contentObject->attribute('section_id') != $parentContentObject->attribute('section_id')) {
         $newSectionID = $parentContentObject->attribute('section_id');
         eZContentObjectTreeNodeNoLanguage::assignSectionToSubTree($mainNodeID, $newSectionID);
     }
     $db->commit();
 }