• Модуль: disk
  • Путь к файлу: ~/bitrix/modules/disk/lib/socialnetworkhandlers.php
  • Класс: BitrixDiskSocialnetworkHandlers
  • Вызов: SocialnetworkHandlers::onSocNetGroupUpdate
static function onSocNetGroupUpdate($groupId, $fields)
{
	if(empty($fields['NAME']))
	{
		return;
	}

	$storage = Driver::getInstance()->getStorageByGroupId($groupId);
	if(!$storage)
	{
		return;
	}

	$previousName = $storage->getName();
	$correctedPreviousName = UiText::correctFilename($previousName);
	if($previousName === $fields['NAME'])
	{
		return;
	}

	if($storage->rename($fields['NAME']))
	{
		foreach($storage->getRootObject()->getSharingsAsReal() as $sharing)
		{
			if(!$sharing->isApproved())
			{
				continue;
			}

			$linkObject = $sharing->getLinkObject();
			if(!$linkObject)
			{
				continue;
			}

			if($linkObject->getName() === $previousName || $linkObject->getName() === $correctedPreviousName)
			{
				$linkObject->rename($storage->getName());
			}
		}
		unset($sharing);
	}
}