• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/urlpreview/urlpreview.php
  • Класс: BitrixMainUrlPreviewUrlPreview
  • Вызов: UrlPreview::checkDynamicPreviewAccess
static function checkDynamicPreviewAccess($url, $userId = 0)
{
	$routeRecord = Router::dispatch(new Uri(static::unfoldShortLink($url)));
	if ($routeRecord === false)
	{
		return false;
	}

	if (isset($routeRecord['MODULE']) && Loader::includeModule($routeRecord['MODULE']))
	{
		$className = $routeRecord['CLASS'];
		$parameters = $routeRecord['PARAMETERS'];

		if ($userId == 0)
		{
			$userId = static::getCurrentUserId();
		}

		return (method_exists($className, 'checkUserReadAccess') && $userId > 0 && $className::checkUserReadAccess($parameters, $userId));
	}
	return false;
}